@@ -391,9 +391,7 @@ def ACC_Loop : Directive<"loop"> {
391
391
let allowedClauses = [
392
392
VersionedClause<ACCC_DeviceType>,
393
393
VersionedClause<ACCC_Private>,
394
- VersionedClause<ACCC_Reduction>
395
- ];
396
- let allowedOnceClauses = [
394
+ VersionedClause<ACCC_Reduction>,
397
395
VersionedClause<ACCC_Collapse>,
398
396
VersionedClause<ACCC_Gang>,
399
397
VersionedClause<ACCC_Tile>,
@@ -421,15 +419,17 @@ def ACC_Init : Directive<"init"> {
421
419
422
420
// 2.15.1
423
421
def ACC_Routine : Directive<"routine"> {
424
- let allowedOnceClauses = [
422
+ let allowedClauses = [
425
423
VersionedClause<ACCC_Bind>,
426
424
VersionedClause<ACCC_DeviceType>,
427
- VersionedClause<ACCC_NoHost>,
428
425
VersionedClause<ACCC_Gang>,
429
426
VersionedClause<ACCC_Seq>,
430
427
VersionedClause<ACCC_Vector>,
431
428
VersionedClause<ACCC_Worker>
432
429
];
430
+ let allowedOnceClauses = [
431
+ VersionedClause<ACCC_NoHost>
432
+ ];
433
433
}
434
434
435
435
// 2.14.3
@@ -532,32 +532,32 @@ def ACC_HostData : Directive<"host_data"> {
532
532
// 2.11
533
533
def ACC_KernelsLoop : Directive<"kernels loop"> {
534
534
let allowedClauses = [
535
+ VersionedClause<ACCC_Attach>,
536
+ VersionedClause<ACCC_Collapse>,
535
537
VersionedClause<ACCC_Copy>,
536
538
VersionedClause<ACCC_Copyin>,
537
539
VersionedClause<ACCC_Copyout>,
538
540
VersionedClause<ACCC_Create>,
541
+ VersionedClause<ACCC_DevicePtr>,
539
542
VersionedClause<ACCC_DeviceType>,
543
+ VersionedClause<ACCC_Gang>,
540
544
VersionedClause<ACCC_NoCreate>,
545
+ VersionedClause<ACCC_NumGangs>,
546
+ VersionedClause<ACCC_NumWorkers>,
541
547
VersionedClause<ACCC_Present>,
542
548
VersionedClause<ACCC_Private>,
543
549
VersionedClause<ACCC_Reduction>,
544
- VersionedClause<ACCC_DevicePtr>,
545
- VersionedClause<ACCC_Attach>,
546
- VersionedClause<ACCC_Wait>
550
+ VersionedClause<ACCC_Tile>,
551
+ VersionedClause<ACCC_Vector>,
552
+ VersionedClause<ACCC_VectorLength>,
553
+ VersionedClause<ACCC_Wait>,
554
+ VersionedClause<ACCC_Worker>
547
555
];
548
556
let allowedOnceClauses = [
549
557
VersionedClause<ACCC_Async>,
550
- VersionedClause<ACCC_Collapse>,
551
558
VersionedClause<ACCC_Default>,
552
- VersionedClause<ACCC_Gang>,
553
559
VersionedClause<ACCC_If>,
554
- VersionedClause<ACCC_NumGangs>,
555
- VersionedClause<ACCC_NumWorkers>,
556
- VersionedClause<ACCC_Self>,
557
- VersionedClause<ACCC_Tile>,
558
- VersionedClause<ACCC_Vector>,
559
- VersionedClause<ACCC_VectorLength>,
560
- VersionedClause<ACCC_Worker>
560
+ VersionedClause<ACCC_Self>
561
561
];
562
562
let allowedExclusiveClauses = [
563
563
VersionedClause<ACCC_Auto>,
@@ -570,32 +570,32 @@ def ACC_KernelsLoop : Directive<"kernels loop"> {
570
570
def ACC_ParallelLoop : Directive<"parallel loop"> {
571
571
let allowedClauses = [
572
572
VersionedClause<ACCC_Attach>,
573
+ VersionedClause<ACCC_Collapse>,
573
574
VersionedClause<ACCC_Copy>,
574
575
VersionedClause<ACCC_Copyin>,
575
576
VersionedClause<ACCC_Copyout>,
576
577
VersionedClause<ACCC_Create>,
577
578
VersionedClause<ACCC_DevicePtr>,
578
579
VersionedClause<ACCC_DeviceType>,
579
580
VersionedClause<ACCC_FirstPrivate>,
581
+ VersionedClause<ACCC_Gang>,
580
582
VersionedClause<ACCC_NoCreate>,
583
+ VersionedClause<ACCC_NumGangs>,
584
+ VersionedClause<ACCC_NumWorkers>,
581
585
VersionedClause<ACCC_Present>,
582
586
VersionedClause<ACCC_Private>,
583
587
VersionedClause<ACCC_Reduction>,
584
588
VersionedClause<ACCC_Tile>,
585
- VersionedClause<ACCC_Wait>
589
+ VersionedClause<ACCC_Vector>,
590
+ VersionedClause<ACCC_VectorLength>,
591
+ VersionedClause<ACCC_Wait>,
592
+ VersionedClause<ACCC_Worker>
586
593
];
587
594
let allowedOnceClauses = [
588
595
VersionedClause<ACCC_Async>,
589
- VersionedClause<ACCC_Collapse>,
590
596
VersionedClause<ACCC_Default>,
591
- VersionedClause<ACCC_Gang>,
592
597
VersionedClause<ACCC_If>,
593
- VersionedClause<ACCC_NumGangs>,
594
- VersionedClause<ACCC_NumWorkers>,
595
- VersionedClause<ACCC_Self>,
596
- VersionedClause<ACCC_Vector>,
597
- VersionedClause<ACCC_VectorLength>,
598
- VersionedClause<ACCC_Worker>
598
+ VersionedClause<ACCC_Self>
599
599
];
600
600
let allowedExclusiveClauses = [
601
601
VersionedClause<ACCC_Auto>,
@@ -608,29 +608,29 @@ def ACC_ParallelLoop : Directive<"parallel loop"> {
608
608
def ACC_SerialLoop : Directive<"serial loop"> {
609
609
let allowedClauses = [
610
610
VersionedClause<ACCC_Attach>,
611
+ VersionedClause<ACCC_Collapse>,
611
612
VersionedClause<ACCC_Copy>,
612
613
VersionedClause<ACCC_Copyin>,
613
614
VersionedClause<ACCC_Copyout>,
614
615
VersionedClause<ACCC_Create>,
615
616
VersionedClause<ACCC_DevicePtr>,
616
617
VersionedClause<ACCC_DeviceType>,
617
618
VersionedClause<ACCC_FirstPrivate>,
619
+ VersionedClause<ACCC_Gang>,
618
620
VersionedClause<ACCC_NoCreate>,
619
621
VersionedClause<ACCC_Present>,
620
622
VersionedClause<ACCC_Private>,
621
623
VersionedClause<ACCC_Reduction>,
622
- VersionedClause<ACCC_Wait>
624
+ VersionedClause<ACCC_Tile>,
625
+ VersionedClause<ACCC_Vector>,
626
+ VersionedClause<ACCC_Wait>,
627
+ VersionedClause<ACCC_Worker>
623
628
];
624
629
let allowedOnceClauses = [
625
630
VersionedClause<ACCC_Async>,
626
- VersionedClause<ACCC_Collapse>,
627
631
VersionedClause<ACCC_Default>,
628
- VersionedClause<ACCC_Gang>,
629
632
VersionedClause<ACCC_If>,
630
- VersionedClause<ACCC_Self>,
631
- VersionedClause<ACCC_Tile>,
632
- VersionedClause<ACCC_Vector>,
633
- VersionedClause<ACCC_Worker>
633
+ VersionedClause<ACCC_Self>
634
634
];
635
635
let allowedExclusiveClauses = [
636
636
VersionedClause<ACCC_Auto>,
0 commit comments