@@ -325,7 +325,8 @@ def ACC_Declare : Directive<"declare"> {
325
325
326
326
// 2.5.3
327
327
def ACC_Kernels : Directive<"kernels"> {
328
- let allowedClauses = [VersionedClause<ACCC_Attach>,
328
+ let allowedClauses = [VersionedClause<ACCC_Async>,
329
+ VersionedClause<ACCC_Attach>,
329
330
VersionedClause<ACCC_Copy>,
330
331
VersionedClause<ACCC_Copyin>,
331
332
VersionedClause<ACCC_Copyout>,
@@ -338,8 +339,7 @@ def ACC_Kernels : Directive<"kernels"> {
338
339
VersionedClause<ACCC_DevicePtr>,
339
340
VersionedClause<ACCC_VectorLength>,
340
341
VersionedClause<ACCC_Wait>];
341
- let allowedOnceClauses = [VersionedClause<ACCC_Async>,
342
- VersionedClause<ACCC_Default>,
342
+ let allowedOnceClauses = [VersionedClause<ACCC_Default>,
343
343
VersionedClause<ACCC_If>,
344
344
VersionedClause<ACCC_Self>];
345
345
let association = AS_Block;
@@ -380,27 +380,23 @@ def ACC_Parallel : Directive<"parallel"> {
380
380
def ACC_Serial : Directive<"serial"> {
381
381
// Spec line 950-951: clause is as for the parallel construct except that the
382
382
// num_gangs, num_workers, and vector_length clauses are not permitted.
383
- let allowedClauses = [
384
- VersionedClause<ACCC_Attach>,
385
- VersionedClause<ACCC_Copy>,
386
- VersionedClause<ACCC_Copyin>,
387
- VersionedClause<ACCC_Copyout>,
388
- VersionedClause<ACCC_Create>,
389
- VersionedClause<ACCC_DevicePtr>,
390
- VersionedClause<ACCC_DeviceType>,
391
- VersionedClause<ACCC_NoCreate>,
392
- VersionedClause<ACCC_Present>,
393
- VersionedClause<ACCC_Private>,
394
- VersionedClause<ACCC_FirstPrivate>,
395
- VersionedClause<ACCC_Reduction>,
396
- VersionedClause<ACCC_Wait>
397
- ];
398
- let allowedOnceClauses = [
399
- VersionedClause<ACCC_Async>,
400
- VersionedClause<ACCC_Default>,
401
- VersionedClause<ACCC_If>,
402
- VersionedClause<ACCC_Self>
403
- ];
383
+ let allowedClauses = [VersionedClause<ACCC_Async>,
384
+ VersionedClause<ACCC_Attach>,
385
+ VersionedClause<ACCC_Copy>,
386
+ VersionedClause<ACCC_Copyin>,
387
+ VersionedClause<ACCC_Copyout>,
388
+ VersionedClause<ACCC_Create>,
389
+ VersionedClause<ACCC_DevicePtr>,
390
+ VersionedClause<ACCC_DeviceType>,
391
+ VersionedClause<ACCC_NoCreate>,
392
+ VersionedClause<ACCC_Present>,
393
+ VersionedClause<ACCC_Private>,
394
+ VersionedClause<ACCC_FirstPrivate>,
395
+ VersionedClause<ACCC_Reduction>,
396
+ VersionedClause<ACCC_Wait>];
397
+ let allowedOnceClauses = [VersionedClause<ACCC_Default>,
398
+ VersionedClause<ACCC_If>,
399
+ VersionedClause<ACCC_Self>];
404
400
let association = AS_Block;
405
401
let category = CA_Executable;
406
402
}
0 commit comments