@@ -325,7 +325,8 @@ def ACC_Declare : Directive<"declare"> {
325325
326326// 2.5.3
327327def ACC_Kernels : Directive<"kernels"> {
328- let allowedClauses = [VersionedClause<ACCC_Attach>,
328+ let allowedClauses = [VersionedClause<ACCC_Async>,
329+ VersionedClause<ACCC_Attach>,
329330 VersionedClause<ACCC_Copy>,
330331 VersionedClause<ACCC_Copyin>,
331332 VersionedClause<ACCC_Copyout>,
@@ -338,8 +339,7 @@ def ACC_Kernels : Directive<"kernels"> {
338339 VersionedClause<ACCC_DevicePtr>,
339340 VersionedClause<ACCC_VectorLength>,
340341 VersionedClause<ACCC_Wait>];
341- let allowedOnceClauses = [VersionedClause<ACCC_Async>,
342- VersionedClause<ACCC_Default>,
342+ let allowedOnceClauses = [VersionedClause<ACCC_Default>,
343343 VersionedClause<ACCC_If>,
344344 VersionedClause<ACCC_Self>];
345345 let association = AS_Block;
@@ -380,27 +380,23 @@ def ACC_Parallel : Directive<"parallel"> {
380380def ACC_Serial : Directive<"serial"> {
381381 // Spec line 950-951: clause is as for the parallel construct except that the
382382 // 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>];
404400 let association = AS_Block;
405401 let category = CA_Executable;
406402}
0 commit comments