@@ -1783,17 +1783,19 @@ static void genTaskgroupClauses(
17831783
17841784static void genTaskloopClauses (lower::AbstractConverter &converter,
17851785 semantics::SemanticsContext &semaCtx,
1786+ lower::StatementContext &stmtCtx,
17861787 const List<Clause> &clauses, mlir::Location loc,
17871788 mlir::omp::TaskloopOperands &clauseOps) {
17881789
17891790 ClauseProcessor cp (converter, semaCtx, clauses);
1791+ cp.processGrainsize (stmtCtx, clauseOps);
1792+ cp.processNumTasks (stmtCtx, clauseOps);
17901793
17911794 cp.processTODO <clause::Allocate, clause::Collapse, clause::Default,
1792- clause::Final, clause::Grainsize, clause::If,
1793- clause::InReduction, clause::Lastprivate, clause::Mergeable,
1794- clause::Nogroup, clause::NumTasks, clause::Priority,
1795- clause::Reduction, clause::Shared, clause::Untied>(
1796- loc, llvm::omp::Directive::OMPD_taskloop);
1795+ clause::Final, clause::If, clause::InReduction,
1796+ clause::Lastprivate, clause::Mergeable, clause::Nogroup,
1797+ clause::Priority, clause::Reduction, clause::Shared,
1798+ clause::Untied>(loc, llvm::omp::Directive::OMPD_taskloop);
17971799}
17981800
17991801static void genTaskwaitClauses (lower::AbstractConverter &converter,
@@ -3270,12 +3272,12 @@ genStandaloneSimd(lower::AbstractConverter &converter, lower::SymMap &symTable,
32703272
32713273static mlir::omp::TaskloopOp genStandaloneTaskloop (
32723274 lower::AbstractConverter &converter, lower::SymMap &symTable,
3273- semantics::SemanticsContext &semaCtx, lower::pft::Evaluation &eval ,
3274- mlir::Location loc, const ConstructQueue &queue ,
3275- ConstructQueue::const_iterator item) {
3275+ lower::StatementContext &stmtCtx, semantics::SemanticsContext &semaCtx ,
3276+ lower::pft::Evaluation &eval, mlir::Location loc ,
3277+ const ConstructQueue &queue, ConstructQueue::const_iterator item) {
32763278 mlir::omp::TaskloopOperands taskloopClauseOps;
3277- genTaskloopClauses (converter, semaCtx, item->clauses , loc, taskloopClauseOps);
3278-
3279+ genTaskloopClauses (converter, semaCtx, stmtCtx, item->clauses , loc,
3280+ taskloopClauseOps);
32793281 DataSharingProcessor dsp (converter, semaCtx, item->clauses , eval,
32803282 /* shouldCollectPreDeterminedSymbols=*/ true ,
32813283 enableDelayedPrivatization, symTable);
@@ -3736,8 +3738,8 @@ static void genOMPDispatch(lower::AbstractConverter &converter,
37363738 genTaskgroupOp (converter, symTable, semaCtx, eval, loc, queue, item);
37373739 break ;
37383740 case llvm::omp::Directive::OMPD_taskloop:
3739- newOp = genStandaloneTaskloop (converter, symTable, semaCtx, eval, loc ,
3740- queue, item);
3741+ newOp = genStandaloneTaskloop (converter, symTable, stmtCtx, semaCtx, eval ,
3742+ loc, queue, item);
37413743 break ;
37423744 case llvm::omp::Directive::OMPD_taskwait:
37433745 newOp = genTaskwaitOp (converter, symTable, semaCtx, eval, loc, queue, item);
0 commit comments