@@ -3099,6 +3099,7 @@ static mlir::omp::DistributeOp genCompositeDistributeSimd(
3099
3099
/* shouldCollectPreDeterminedSymbols=*/ true ,
3100
3100
/* useDelayedPrivatization=*/ false , symTable);
3101
3101
dsp.processStep1 ();
3102
+ dsp.processStep2 ();
3102
3103
3103
3104
// Pass the innermost leaf construct's clauses because that's where COLLAPSE
3104
3105
// is placed by construct decomposition.
@@ -3149,16 +3150,12 @@ static mlir::omp::WsloopOp genCompositeDoSimd(
3149
3150
genSimdClauses (converter, semaCtx, simdItem->clauses , loc, simdClauseOps,
3150
3151
simdReductionSyms);
3151
3152
3152
- DataSharingProcessor wsloopItemDSP (
3153
- converter, semaCtx, doItem->clauses , eval,
3154
- /* shouldCollectPreDeterminedSymbols=*/ false ,
3155
- /* useDelayedPrivatization=*/ true , symTable);
3156
- wsloopItemDSP.processStep1 (&wsloopClauseOps);
3157
-
3158
- DataSharingProcessor simdItemDSP (converter, semaCtx, simdItem->clauses , eval,
3159
- /* shouldCollectPreDeterminedSymbols=*/ true ,
3160
- /* useDelayedPrivatization=*/ true , symTable);
3161
- simdItemDSP.processStep1 (&simdClauseOps);
3153
+ // TODO: Support delayed privatization.
3154
+ DataSharingProcessor dsp (converter, semaCtx, simdItem->clauses , eval,
3155
+ /* shouldCollectPreDeterminedSymbols=*/ true ,
3156
+ /* useDelayedPrivatization=*/ false , symTable);
3157
+ dsp.processStep1 ();
3158
+ dsp.processStep2 ();
3162
3159
3163
3160
// Pass the innermost leaf construct's clauses because that's where COLLAPSE
3164
3161
// is placed by construct decomposition.
@@ -3169,17 +3166,15 @@ static mlir::omp::WsloopOp genCompositeDoSimd(
3169
3166
3170
3167
// Operation creation.
3171
3168
EntryBlockArgs wsloopArgs;
3172
- wsloopArgs.priv .syms = wsloopItemDSP.getDelayedPrivSymbols ();
3173
- wsloopArgs.priv .vars = wsloopClauseOps.privateVars ;
3169
+ // TODO: Add private syms and vars.
3174
3170
wsloopArgs.reduction .syms = wsloopReductionSyms;
3175
3171
wsloopArgs.reduction .vars = wsloopClauseOps.reductionVars ;
3176
3172
auto wsloopOp = genWrapperOp<mlir::omp::WsloopOp>(
3177
3173
converter, loc, wsloopClauseOps, wsloopArgs);
3178
3174
wsloopOp.setComposite (/* val=*/ true );
3179
3175
3180
3176
EntryBlockArgs simdArgs;
3181
- simdArgs.priv .syms = simdItemDSP.getDelayedPrivSymbols ();
3182
- simdArgs.priv .vars = simdClauseOps.privateVars ;
3177
+ // TODO: Add private syms and vars.
3183
3178
simdArgs.reduction .syms = simdReductionSyms;
3184
3179
simdArgs.reduction .vars = simdClauseOps.reductionVars ;
3185
3180
auto simdOp =
@@ -3189,7 +3184,7 @@ static mlir::omp::WsloopOp genCompositeDoSimd(
3189
3184
genLoopNestOp (converter, symTable, semaCtx, eval, loc, queue, simdItem,
3190
3185
loopNestClauseOps, iv,
3191
3186
{{wsloopOp, wsloopArgs}, {simdOp, simdArgs}},
3192
- llvm::omp::Directive::OMPD_do_simd, simdItemDSP );
3187
+ llvm::omp::Directive::OMPD_do_simd, dsp );
3193
3188
return wsloopOp;
3194
3189
}
3195
3190
0 commit comments