@@ -573,6 +573,7 @@ def OMP_Allocators : Directive<"allocators"> {
573
573
];
574
574
let association = AS_Block;
575
575
let category = CA_Executable;
576
+ let languages = [L_Fortran];
576
577
}
577
578
def OMP_Assumes : Directive<"assumes"> {
578
579
let association = AS_None;
@@ -586,10 +587,6 @@ def OMP_Assumes : Directive<"assumes"> {
586
587
VersionedClause<OMPC_NoParallelism, 51>,
587
588
];
588
589
}
589
- def OMP_EndAssumes : Directive<"end assumes"> {
590
- let association = AS_Delimited;
591
- let category = OMP_Assumes.category;
592
- }
593
590
def OMP_Assume : Directive<"assume"> {
594
591
let association = AS_Block;
595
592
let category = CA_Informational;
@@ -637,6 +634,12 @@ def OMP_BeginAssumes : Directive<"begin assumes"> {
637
634
VersionedClause<OMPC_NoOpenMPRoutines, 51>,
638
635
VersionedClause<OMPC_NoParallelism, 51>,
639
636
];
637
+ let languages = [L_C];
638
+ }
639
+ def OMP_EndAssumes : Directive<"end assumes"> {
640
+ let association = AS_Delimited;
641
+ let category = OMP_BeginAssumes.category;
642
+ let languages = OMP_BeginAssumes.languages;
640
643
}
641
644
def OMP_BeginDeclareTarget : Directive<"begin declare target"> {
642
645
let allowedClauses = [
@@ -647,10 +650,22 @@ def OMP_BeginDeclareTarget : Directive<"begin declare target"> {
647
650
];
648
651
let association = AS_Delimited;
649
652
let category = CA_Declarative;
653
+ let languages = [L_C];
654
+ }
655
+ def OMP_EndDeclareTarget : Directive<"end declare target"> {
656
+ let association = AS_Delimited;
657
+ let category = OMP_BeginDeclareTarget.category;
658
+ let languages = OMP_BeginDeclareTarget.languages;
650
659
}
651
660
def OMP_BeginDeclareVariant : Directive<"begin declare variant"> {
652
661
let association = AS_Delimited;
653
662
let category = CA_Declarative;
663
+ let languages = [L_C];
664
+ }
665
+ def OMP_EndDeclareVariant : Directive<"end declare variant"> {
666
+ let association = AS_Delimited;
667
+ let category = OMP_BeginDeclareVariant.category;
668
+ let languages = OMP_BeginDeclareVariant.languages;
654
669
}
655
670
def OMP_Cancel : Directive<"cancel"> {
656
671
let allowedOnceClauses = [
@@ -717,10 +732,6 @@ def OMP_DeclareTarget : Directive<"declare target"> {
717
732
let association = AS_None;
718
733
let category = CA_Declarative;
719
734
}
720
- def OMP_EndDeclareTarget : Directive<"end declare target"> {
721
- let association = AS_Delimited;
722
- let category = OMP_DeclareTarget.category;
723
- }
724
735
def OMP_DeclareVariant : Directive<"declare variant"> {
725
736
let allowedClauses = [
726
737
VersionedClause<OMPC_AdjustArgs, 51>,
@@ -731,10 +742,7 @@ def OMP_DeclareVariant : Directive<"declare variant"> {
731
742
];
732
743
let association = AS_Declaration;
733
744
let category = CA_Declarative;
734
- }
735
- def OMP_EndDeclareVariant : Directive<"end declare variant"> {
736
- let association = AS_Delimited;
737
- let category = OMP_DeclareVariant.category;
745
+ let languages = [L_C];
738
746
}
739
747
def OMP_Depobj : Directive<"depobj"> {
740
748
let allowedClauses = [
@@ -793,15 +801,16 @@ def OMP_Do : Directive<"do"> {
793
801
];
794
802
let association = AS_Loop;
795
803
let category = CA_Executable;
804
+ let languages = [L_Fortran];
796
805
}
797
806
def OMP_EndDo : Directive<"end do"> {
798
807
let allowedOnceClauses = [
799
808
VersionedClause<OMPC_NoWait>,
800
809
];
801
- // Needed for association computation, since OMP_Do has it "from leafConstructs".
802
810
let leafConstructs = OMP_Do.leafConstructs;
803
811
let association = OMP_Do.association;
804
812
let category = OMP_Do.category;
813
+ let languages = OMP_Do.languages;
805
814
}
806
815
def OMP_Error : Directive<"error"> {
807
816
let allowedClauses = [
@@ -841,6 +850,7 @@ def OMP_For : Directive<"for"> {
841
850
];
842
851
let association = AS_Loop;
843
852
let category = CA_Executable;
853
+ let languages = [L_C];
844
854
}
845
855
def OMP_Interchange : Directive<"interchange"> {
846
856
let allowedOnceClauses = [
@@ -984,6 +994,7 @@ def OMP_EndScope : Directive<"end scope"> {
984
994
let leafConstructs = OMP_Scope.leafConstructs;
985
995
let association = OMP_Scope.association;
986
996
let category = OMP_Scope.category;
997
+ let languages = [L_Fortran];
987
998
}
988
999
def OMP_Section : Directive<"section"> {
989
1000
let association = AS_Separating;
@@ -1008,6 +1019,7 @@ def OMP_EndSections : Directive<"end sections"> {
1008
1019
let leafConstructs = OMP_Sections.leafConstructs;
1009
1020
let association = OMP_Sections.association;
1010
1021
let category = OMP_Sections.category;
1022
+ let languages = [L_Fortran];
1011
1023
}
1012
1024
def OMP_Simd : Directive<"simd"> {
1013
1025
let allowedClauses = [
@@ -1052,6 +1064,7 @@ def OMP_EndSingle : Directive<"end single"> {
1052
1064
let leafConstructs = OMP_Single.leafConstructs;
1053
1065
let association = OMP_Single.association;
1054
1066
let category = OMP_Single.category;
1067
+ let languages = [L_Fortran];
1055
1068
}
1056
1069
def OMP_Target : Directive<"target"> {
1057
1070
let allowedClauses = [
@@ -1259,6 +1272,7 @@ def OMP_Workshare : Directive<"workshare"> {
1259
1272
];
1260
1273
let association = AS_Block;
1261
1274
let category = CA_Executable;
1275
+ let languages = [L_Fortran];
1262
1276
}
1263
1277
def OMP_EndWorkshare : Directive<"end workshare"> {
1264
1278
let allowedOnceClauses = [
@@ -1267,6 +1281,7 @@ def OMP_EndWorkshare : Directive<"end workshare"> {
1267
1281
let leafConstructs = OMP_Workshare.leafConstructs;
1268
1282
let association = OMP_Workshare.association;
1269
1283
let category = OMP_Workshare.category;
1284
+ let languages = [L_Fortran];
1270
1285
}
1271
1286
1272
1287
//===----------------------------------------------------------------------===//
@@ -1298,6 +1313,7 @@ def OMP_DistributeParallelDo : Directive<"distribute parallel do"> {
1298
1313
];
1299
1314
let leafConstructs = [OMP_Distribute, OMP_Parallel, OMP_Do];
1300
1315
let category = CA_Executable;
1316
+ let languages = [L_Fortran];
1301
1317
}
1302
1318
def OMP_DistributeParallelDoSimd : Directive<"distribute parallel do simd"> {
1303
1319
let allowedClauses = [
@@ -1324,6 +1340,7 @@ def OMP_DistributeParallelDoSimd : Directive<"distribute parallel do simd"> {
1324
1340
];
1325
1341
let leafConstructs = [OMP_Distribute, OMP_Parallel, OMP_Do, OMP_Simd];
1326
1342
let category = CA_Executable;
1343
+ let languages = [L_Fortran];
1327
1344
}
1328
1345
def OMP_DistributeParallelFor : Directive<"distribute parallel for"> {
1329
1346
let allowedClauses = [
@@ -1346,6 +1363,7 @@ def OMP_DistributeParallelFor : Directive<"distribute parallel for"> {
1346
1363
];
1347
1364
let leafConstructs = [OMP_Distribute, OMP_Parallel, OMP_For];
1348
1365
let category = CA_Executable;
1366
+ let languages = [L_C];
1349
1367
}
1350
1368
def OMP_DistributeParallelForSimd : Directive<"distribute parallel for simd"> {
1351
1369
let allowedClauses = [
@@ -1373,6 +1391,7 @@ def OMP_DistributeParallelForSimd : Directive<"distribute parallel for simd"> {
1373
1391
];
1374
1392
let leafConstructs = [OMP_Distribute, OMP_Parallel, OMP_For, OMP_Simd];
1375
1393
let category = CA_Executable;
1394
+ let languages = [L_C];
1376
1395
}
1377
1396
def OMP_DistributeSimd : Directive<"distribute simd"> {
1378
1397
let allowedClauses = [
@@ -1422,6 +1441,7 @@ def OMP_DoSimd : Directive<"do simd"> {
1422
1441
];
1423
1442
let leafConstructs = [OMP_Do, OMP_Simd];
1424
1443
let category = CA_Executable;
1444
+ let languages = [L_Fortran];
1425
1445
}
1426
1446
def OMP_EndDoSimd : Directive<"end do simd"> {
1427
1447
let allowedOnceClauses = [
@@ -1430,6 +1450,7 @@ def OMP_EndDoSimd : Directive<"end do simd"> {
1430
1450
let leafConstructs = OMP_DoSimd.leafConstructs;
1431
1451
let association = OMP_DoSimd.association;
1432
1452
let category = OMP_DoSimd.category;
1453
+ let languages = [L_Fortran];
1433
1454
}
1434
1455
def OMP_ForSimd : Directive<"for simd"> {
1435
1456
let allowedClauses = [
@@ -1611,6 +1632,7 @@ def OMP_ParallelDo : Directive<"parallel do"> {
1611
1632
];
1612
1633
let leafConstructs = [OMP_Parallel, OMP_Do];
1613
1634
let category = CA_Executable;
1635
+ let languages = [L_Fortran];
1614
1636
}
1615
1637
def OMP_ParallelDoSimd : Directive<"parallel do simd"> {
1616
1638
let allowedClauses = [
@@ -1639,6 +1661,7 @@ def OMP_ParallelDoSimd : Directive<"parallel do simd"> {
1639
1661
];
1640
1662
let leafConstructs = [OMP_Parallel, OMP_Do, OMP_Simd];
1641
1663
let category = CA_Executable;
1664
+ let languages = [L_Fortran];
1642
1665
}
1643
1666
def OMP_ParallelFor : Directive<"parallel for"> {
1644
1667
let allowedClauses = [
@@ -1662,6 +1685,7 @@ def OMP_ParallelFor : Directive<"parallel for"> {
1662
1685
];
1663
1686
let leafConstructs = [OMP_Parallel, OMP_For];
1664
1687
let category = CA_Executable;
1688
+ let languages = [L_C];
1665
1689
}
1666
1690
def OMP_ParallelForSimd : Directive<"parallel for simd"> {
1667
1691
let allowedClauses = [
@@ -1689,6 +1713,7 @@ def OMP_ParallelForSimd : Directive<"parallel for simd"> {
1689
1713
];
1690
1714
let leafConstructs = [OMP_Parallel, OMP_For, OMP_Simd];
1691
1715
let category = CA_Executable;
1716
+ let languages = [L_C];
1692
1717
}
1693
1718
def OMP_parallel_loop : Directive<"parallel loop"> {
1694
1719
let allowedClauses = [
@@ -1907,6 +1932,7 @@ def OMP_ParallelWorkshare : Directive<"parallel workshare"> {
1907
1932
];
1908
1933
let leafConstructs = [OMP_Parallel, OMP_Workshare];
1909
1934
let category = CA_Executable;
1935
+ let languages = [L_Fortran];
1910
1936
}
1911
1937
def OMP_TargetParallel : Directive<"target parallel"> {
1912
1938
let allowedClauses = [
@@ -1966,6 +1992,7 @@ def OMP_TargetParallelDo : Directive<"target parallel do"> {
1966
1992
];
1967
1993
let leafConstructs = [OMP_Target, OMP_Parallel, OMP_Do];
1968
1994
let category = CA_Executable;
1995
+ let languages = [L_Fortran];
1969
1996
}
1970
1997
def OMP_TargetParallelDoSimd : Directive<"target parallel do simd"> {
1971
1998
let allowedClauses = [
@@ -1999,6 +2026,7 @@ def OMP_TargetParallelDoSimd : Directive<"target parallel do simd"> {
1999
2026
];
2000
2027
let leafConstructs = [OMP_Target, OMP_Parallel, OMP_Do, OMP_Simd];
2001
2028
let category = CA_Executable;
2029
+ let languages = [L_Fortran];
2002
2030
}
2003
2031
def OMP_TargetParallelFor : Directive<"target parallel for"> {
2004
2032
let allowedClauses = [
@@ -2033,6 +2061,7 @@ def OMP_TargetParallelFor : Directive<"target parallel for"> {
2033
2061
];
2034
2062
let leafConstructs = [OMP_Target, OMP_Parallel, OMP_For];
2035
2063
let category = CA_Executable;
2064
+ let languages = [L_C];
2036
2065
}
2037
2066
def OMP_TargetParallelForSimd : Directive<"target parallel for simd"> {
2038
2067
let allowedClauses = [
@@ -2071,6 +2100,7 @@ def OMP_TargetParallelForSimd : Directive<"target parallel for simd"> {
2071
2100
];
2072
2101
let leafConstructs = [OMP_Target, OMP_Parallel, OMP_For, OMP_Simd];
2073
2102
let category = CA_Executable;
2103
+ let languages = [L_C];
2074
2104
}
2075
2105
def OMP_target_parallel_loop : Directive<"target parallel loop"> {
2076
2106
let allowedClauses = [
@@ -2230,8 +2260,10 @@ def OMP_TargetTeamsDistributeParallelDo :
2230
2260
VersionedClause<OMPC_Schedule>,
2231
2261
VersionedClause<OMPC_ThreadLimit>,
2232
2262
];
2233
- let leafConstructs = [OMP_Target, OMP_Teams, OMP_Distribute, OMP_Parallel, OMP_Do];
2263
+ let leafConstructs =
2264
+ [OMP_Target, OMP_Teams, OMP_Distribute, OMP_Parallel, OMP_Do];
2234
2265
let category = CA_Executable;
2266
+ let languages = [L_Fortran];
2235
2267
}
2236
2268
def OMP_TargetTeamsDistributeParallelDoSimd :
2237
2269
Directive<"target teams distribute parallel do simd"> {
@@ -2268,8 +2300,10 @@ def OMP_TargetTeamsDistributeParallelDoSimd :
2268
2300
VersionedClause<OMPC_SimdLen>,
2269
2301
VersionedClause<OMPC_ThreadLimit>,
2270
2302
];
2271
- let leafConstructs = [OMP_Target, OMP_Teams, OMP_Distribute, OMP_Parallel, OMP_Do, OMP_Simd];
2303
+ let leafConstructs =
2304
+ [OMP_Target, OMP_Teams, OMP_Distribute, OMP_Parallel, OMP_Do, OMP_Simd];
2272
2305
let category = CA_Executable;
2306
+ let languages = [L_Fortran];
2273
2307
}
2274
2308
def OMP_TargetTeamsDistributeParallelFor :
2275
2309
Directive<"target teams distribute parallel for"> {
@@ -2303,8 +2337,10 @@ def OMP_TargetTeamsDistributeParallelFor :
2303
2337
let allowedOnceClauses = [
2304
2338
VersionedClause<OMPC_OMPX_DynCGroupMem>,
2305
2339
];
2306
- let leafConstructs = [OMP_Target, OMP_Teams, OMP_Distribute, OMP_Parallel, OMP_For];
2340
+ let leafConstructs =
2341
+ [OMP_Target, OMP_Teams, OMP_Distribute, OMP_Parallel, OMP_For];
2307
2342
let category = CA_Executable;
2343
+ let languages = [L_C];
2308
2344
}
2309
2345
def OMP_TargetTeamsDistributeParallelForSimd :
2310
2346
Directive<"target teams distribute parallel for simd"> {
@@ -2343,8 +2379,10 @@ def OMP_TargetTeamsDistributeParallelForSimd :
2343
2379
let allowedOnceClauses = [
2344
2380
VersionedClause<OMPC_OMPX_DynCGroupMem>,
2345
2381
];
2346
- let leafConstructs = [OMP_Target, OMP_Teams, OMP_Distribute, OMP_Parallel, OMP_For, OMP_Simd];
2382
+ let leafConstructs =
2383
+ [OMP_Target, OMP_Teams, OMP_Distribute, OMP_Parallel, OMP_For, OMP_Simd];
2347
2384
let category = CA_Executable;
2385
+ let languages = [L_C];
2348
2386
}
2349
2387
def OMP_TargetTeamsDistributeSimd :
2350
2388
Directive<"target teams distribute simd"> {
@@ -2494,6 +2532,7 @@ def OMP_TeamsDistributeParallelDo :
2494
2532
];
2495
2533
let leafConstructs = [OMP_Teams, OMP_Distribute, OMP_Parallel, OMP_Do];
2496
2534
let category = CA_Executable;
2535
+ let languages = [L_Fortran];
2497
2536
}
2498
2537
def OMP_TeamsDistributeParallelDoSimd :
2499
2538
Directive<"teams distribute parallel do simd"> {
@@ -2522,8 +2561,10 @@ def OMP_TeamsDistributeParallelDoSimd :
2522
2561
VersionedClause<OMPC_SimdLen>,
2523
2562
VersionedClause<OMPC_ThreadLimit>,
2524
2563
];
2525
- let leafConstructs = [OMP_Teams, OMP_Distribute, OMP_Parallel, OMP_Do, OMP_Simd];
2564
+ let leafConstructs =
2565
+ [OMP_Teams, OMP_Distribute, OMP_Parallel, OMP_Do, OMP_Simd];
2526
2566
let category = CA_Executable;
2567
+ let languages = [L_Fortran];
2527
2568
}
2528
2569
def OMP_TeamsDistributeParallelFor :
2529
2570
Directive<"teams distribute parallel for"> {
@@ -2549,6 +2590,7 @@ def OMP_TeamsDistributeParallelFor :
2549
2590
];
2550
2591
let leafConstructs = [OMP_Teams, OMP_Distribute, OMP_Parallel, OMP_For];
2551
2592
let category = CA_Executable;
2593
+ let languages = [L_C];
2552
2594
}
2553
2595
def OMP_TeamsDistributeParallelForSimd :
2554
2596
Directive<"teams distribute parallel for simd"> {
@@ -2576,8 +2618,10 @@ def OMP_TeamsDistributeParallelForSimd :
2576
2618
VersionedClause<OMPC_SimdLen>,
2577
2619
VersionedClause<OMPC_ThreadLimit>,
2578
2620
];
2579
- let leafConstructs = [OMP_Teams, OMP_Distribute, OMP_Parallel, OMP_For, OMP_Simd];
2621
+ let leafConstructs =
2622
+ [OMP_Teams, OMP_Distribute, OMP_Parallel, OMP_For, OMP_Simd];
2580
2623
let category = CA_Executable;
2624
+ let languages = [L_C];
2581
2625
}
2582
2626
def OMP_TeamsDistributeSimd : Directive<"teams distribute simd"> {
2583
2627
let allowedClauses = [
0 commit comments