@@ -1022,22 +1022,23 @@ static OpTy genOpWithBody(OpWithBodyGenInfo &info, Args &&...args) {
1022
1022
// Code generation functions for clauses
1023
1023
// ===----------------------------------------------------------------------===//
1024
1024
1025
- static void genCriticalDeclareClauses (
1026
- Fortran::lower::AbstractConverter &converter,
1027
- Fortran::semantics::SemanticsContext &semaCtx,
1028
- const List<Clause> &clauses, mlir::Location loc,
1029
- mlir::omp::CriticalClauseOps &clauseOps, llvm::StringRef name) {
1025
+ static void
1026
+ genCriticalDeclareClauses (Fortran::lower::AbstractConverter &converter,
1027
+ Fortran::semantics::SemanticsContext &semaCtx,
1028
+ const List<Clause> &clauses, mlir::Location loc,
1029
+ mlir::omp::CriticalClauseOps &clauseOps,
1030
+ llvm::StringRef name) {
1030
1031
ClauseProcessor cp (converter, semaCtx, clauses);
1031
1032
cp.processHint (clauseOps);
1032
1033
clauseOps.nameAttr =
1033
1034
mlir::StringAttr::get (converter.getFirOpBuilder ().getContext (), name);
1034
1035
}
1035
1036
1036
- static void genFlushClauses (
1037
- Fortran::lower::AbstractConverter &converter ,
1038
- Fortran::semantics::SemanticsContext &semaCtx ,
1039
- const ObjectList &objects, const List<Clause> &clauses,
1040
- mlir::Location loc, llvm::SmallVectorImpl<mlir::Value> &operandRange) {
1037
+ static void genFlushClauses (Fortran::lower::AbstractConverter &converter,
1038
+ Fortran::semantics::SemanticsContext &semaCtx ,
1039
+ const ObjectList &objects ,
1040
+ const List<Clause> &clauses, mlir::Location loc ,
1041
+ llvm::SmallVectorImpl<mlir::Value> &operandRange) {
1041
1042
if (!objects.empty ())
1042
1043
genObjectList (objects, converter, operandRange);
1043
1044
@@ -1048,9 +1049,8 @@ static void genFlushClauses(
1048
1049
static void genLoopNestClauses (
1049
1050
Fortran::lower::AbstractConverter &converter,
1050
1051
Fortran::semantics::SemanticsContext &semaCtx,
1051
- Fortran::lower::pft::Evaluation &eval,
1052
- const List<Clause> &clauses, mlir::Location loc,
1053
- mlir::omp::LoopNestClauseOps &clauseOps,
1052
+ Fortran::lower::pft::Evaluation &eval, const List<Clause> &clauses,
1053
+ mlir::Location loc, mlir::omp::LoopNestClauseOps &clauseOps,
1054
1054
llvm::SmallVectorImpl<const Fortran::semantics::Symbol *> &iv) {
1055
1055
ClauseProcessor cp (converter, semaCtx, clauses);
1056
1056
cp.processCollapse (loc, eval, clauseOps, iv);
@@ -1069,9 +1069,9 @@ genOrderedRegionClauses(Fortran::lower::AbstractConverter &converter,
1069
1069
static void genParallelClauses (
1070
1070
Fortran::lower::AbstractConverter &converter,
1071
1071
Fortran::semantics::SemanticsContext &semaCtx,
1072
- Fortran::lower::StatementContext &stmtCtx,
1073
- const List<Clause> &clauses, mlir::Location loc,
1074
- bool processReduction, mlir::omp::ParallelClauseOps &clauseOps,
1072
+ Fortran::lower::StatementContext &stmtCtx, const List<Clause> &clauses,
1073
+ mlir::Location loc, bool processReduction ,
1074
+ mlir::omp::ParallelClauseOps &clauseOps,
1075
1075
llvm::SmallVectorImpl<mlir::Type> &reductionTypes,
1076
1076
llvm::SmallVectorImpl<const Fortran::semantics::Symbol *> &reductionSyms) {
1077
1077
ClauseProcessor cp (converter, semaCtx, clauses);
@@ -1136,9 +1136,8 @@ static void genSingleClauses(Fortran::lower::AbstractConverter &converter,
1136
1136
static void genTargetClauses (
1137
1137
Fortran::lower::AbstractConverter &converter,
1138
1138
Fortran::semantics::SemanticsContext &semaCtx,
1139
- Fortran::lower::StatementContext &stmtCtx,
1140
- const List<Clause> &clauses, mlir::Location loc,
1141
- bool processHostOnlyClauses, bool processReduction,
1139
+ Fortran::lower::StatementContext &stmtCtx, const List<Clause> &clauses,
1140
+ mlir::Location loc, bool processHostOnlyClauses, bool processReduction,
1142
1141
mlir::omp::TargetClauseOps &clauseOps,
1143
1142
llvm::SmallVectorImpl<const Fortran::semantics::Symbol *> &mapSyms,
1144
1143
llvm::SmallVectorImpl<mlir::Location> &mapLocs,
@@ -1708,10 +1707,11 @@ genTargetDataOp(Fortran::lower::AbstractConverter &converter,
1708
1707
}
1709
1708
1710
1709
template <typename OpTy>
1711
- static OpTy genTargetEnterExitUpdateDataOp (
1712
- Fortran::lower::AbstractConverter &converter,
1713
- Fortran::semantics::SemanticsContext &semaCtx, mlir::Location loc,
1714
- const List<Clause> &clauses) {
1710
+ static OpTy
1711
+ genTargetEnterExitUpdateDataOp (Fortran::lower::AbstractConverter &converter,
1712
+ Fortran::semantics::SemanticsContext &semaCtx,
1713
+ mlir::Location loc,
1714
+ const List<Clause> &clauses) {
1715
1715
fir::FirOpBuilder &firOpBuilder = converter.getFirOpBuilder ();
1716
1716
Fortran::lower::StatementContext stmtCtx;
1717
1717
@@ -1852,37 +1852,34 @@ genWsloopOp(Fortran::lower::AbstractConverter &converter,
1852
1852
static void genCompositeDistributeParallelDo (
1853
1853
Fortran::lower::AbstractConverter &converter,
1854
1854
Fortran::semantics::SemanticsContext &semaCtx,
1855
- Fortran::lower::pft::Evaluation &eval,
1856
- const List<Clause> &beginClauses,
1855
+ Fortran::lower::pft::Evaluation &eval, const List<Clause> &beginClauses,
1857
1856
const List<Clause> &endClauses, mlir::Location loc) {
1858
1857
TODO (loc, " Composite DISTRIBUTE PARALLEL DO" );
1859
1858
}
1860
1859
1861
1860
static void genCompositeDistributeParallelDoSimd (
1862
1861
Fortran::lower::AbstractConverter &converter,
1863
1862
Fortran::semantics::SemanticsContext &semaCtx,
1864
- Fortran::lower::pft::Evaluation &eval,
1865
- const List<Clause> &beginClauses,
1863
+ Fortran::lower::pft::Evaluation &eval, const List<Clause> &beginClauses,
1866
1864
const List<Clause> &endClauses, mlir::Location loc) {
1867
1865
TODO (loc, " Composite DISTRIBUTE PARALLEL DO SIMD" );
1868
1866
}
1869
1867
1870
- static void genCompositeDistributeSimd (
1871
- Fortran::lower::AbstractConverter &converter,
1872
- Fortran::semantics::SemanticsContext &semaCtx,
1873
- Fortran::lower::pft::Evaluation &eval,
1874
- const List<Clause> &beginClauses,
1875
- const List<Clause> &endClauses, mlir::Location loc) {
1868
+ static void
1869
+ genCompositeDistributeSimd ( Fortran::lower::AbstractConverter &converter,
1870
+ Fortran::semantics::SemanticsContext &semaCtx,
1871
+ Fortran::lower::pft::Evaluation &eval,
1872
+ const List<Clause> &beginClauses,
1873
+ const List<Clause> &endClauses, mlir::Location loc) {
1876
1874
TODO (loc, " Composite DISTRIBUTE SIMD" );
1877
1875
}
1878
1876
1879
- static void
1880
- genCompositeDoSimd (Fortran::lower::AbstractConverter &converter,
1881
- Fortran::semantics::SemanticsContext &semaCtx,
1882
- Fortran::lower::pft::Evaluation &eval,
1883
- const List<Clause> &beginClauses,
1884
- const List<Clause> &endClauses,
1885
- mlir::Location loc) {
1877
+ static void genCompositeDoSimd (Fortran::lower::AbstractConverter &converter,
1878
+ Fortran::semantics::SemanticsContext &semaCtx,
1879
+ Fortran::lower::pft::Evaluation &eval,
1880
+ const List<Clause> &beginClauses,
1881
+ const List<Clause> &endClauses,
1882
+ mlir::Location loc) {
1886
1883
ClauseProcessor cp (converter, semaCtx, beginClauses);
1887
1884
cp.processTODO <clause::Aligned, clause::Allocate, clause::Linear,
1888
1885
clause::Order, clause::Safelen, clause::Simdlen>(
@@ -1903,8 +1900,7 @@ genCompositeTaskloopSimd(Fortran::lower::AbstractConverter &converter,
1903
1900
Fortran::semantics::SemanticsContext &semaCtx,
1904
1901
Fortran::lower::pft::Evaluation &eval,
1905
1902
const List<Clause> &beginClauses,
1906
- const List<Clause> &endClauses,
1907
- mlir::Location loc) {
1903
+ const List<Clause> &endClauses, mlir::Location loc) {
1908
1904
TODO (loc, " Composite TASKLOOP SIMD" );
1909
1905
}
1910
1906
@@ -2351,9 +2347,8 @@ static void genOMP(Fortran::lower::AbstractConverter &converter,
2351
2347
switch (leafDir) {
2352
2348
case llvm::omp::Directive::OMPD_distribute_parallel_do:
2353
2349
// 2.9.4.3 DISTRIBUTE PARALLEL Worksharing-Loop construct.
2354
- genCompositeDistributeParallelDo (converter, semaCtx, eval,
2355
- beginClauses, endClauses,
2356
- currentLocation);
2350
+ genCompositeDistributeParallelDo (converter, semaCtx, eval, beginClauses,
2351
+ endClauses, currentLocation);
2357
2352
break ;
2358
2353
case llvm::omp::Directive::OMPD_distribute_parallel_do_simd:
2359
2354
// 2.9.4.4 DISTRIBUTE PARALLEL Worksharing-Loop SIMD construct.
@@ -2368,8 +2363,8 @@ static void genOMP(Fortran::lower::AbstractConverter &converter,
2368
2363
break ;
2369
2364
case llvm::omp::Directive::OMPD_do_simd:
2370
2365
// 2.9.3.2 Worksharing-Loop SIMD construct.
2371
- genCompositeDoSimd (converter, semaCtx, eval, beginClauses,
2372
- endClauses, currentLocation);
2366
+ genCompositeDoSimd (converter, semaCtx, eval, beginClauses, endClauses,
2367
+ currentLocation);
2373
2368
break ;
2374
2369
case llvm::omp::Directive::OMPD_taskloop_simd:
2375
2370
// 2.10.3 TASKLOOP SIMD construct.
@@ -2413,8 +2408,7 @@ static void genOMP(Fortran::lower::AbstractConverter &converter,
2413
2408
break ;
2414
2409
case llvm::omp::Directive::OMPD_taskloop:
2415
2410
// 2.10.2 TASKLOOP construct.
2416
- genTaskloopOp (converter, semaCtx, eval, currentLocation,
2417
- beginClauses);
2411
+ genTaskloopOp (converter, semaCtx, eval, currentLocation, beginClauses);
2418
2412
break ;
2419
2413
case llvm::omp::Directive::OMPD_teams:
2420
2414
// 2.7 TEAMS construct.
0 commit comments