File tree Expand file tree Collapse file tree 1 file changed +7
-10
lines changed
flang/lib/Optimizer/Transforms Expand file tree Collapse file tree 1 file changed +7
-10
lines changed Original file line number Diff line number Diff line change @@ -203,16 +203,13 @@ class DoConcurrentConversion
203203 // dialect ops.
204204 assert (region.hasOneBlock () &&
205205 " Expected localizer region to have a single block." );
206- mlir::Block *beforeLocalizerRegion = rewriter.getInsertionBlock ();
207- mlir::Block *afterLocalizerRegion =
208- rewriter.splitBlock (rewriter.getInsertionBlock (), insertionPoint);
209- rewriter.cloneRegionBefore (region, afterLocalizerRegion);
210- mlir::Block *localizerRegion = beforeLocalizerRegion->getNextNode ();
211-
212- rewriter.eraseOp (localizerRegion->getTerminator ());
213- rewriter.mergeBlocks (afterLocalizerRegion, localizerRegion);
214- rewriter.mergeBlocks (localizerRegion, beforeLocalizerRegion,
215- regionArgs);
206+ mlir::OpBuilder::InsertionGuard guard (rewriter);
207+ rewriter.setInsertionPoint (rewriter.getInsertionBlock (),
208+ insertionPoint);
209+ mlir::IRMapping mapper;
210+ mapper.map (region.getArguments (), regionArgs);
211+ for (mlir::Operation &op : region.front ().without_terminator ())
212+ (void )rewriter.clone (op, mapper);
216213 };
217214
218215 if (!localizer.getInitRegion ().empty ())
You can’t perform that action at this time.
0 commit comments