@@ -464,7 +464,7 @@ void OrderedAssignmentRewriter::pre(hlfir::RegionAssignOp regionAssignOp) {
464464 // if the LHS is not).
465465 mlir::Value shape = hlfir::genShape (loc, builder, lhsEntity);
466466 elementalLoopNest = hlfir::genLoopNest (loc, builder, shape);
467- builder.setInsertionPointToStart (elementalLoopNest->innerLoop . getBody () );
467+ builder.setInsertionPointToStart (elementalLoopNest->body );
468468 lhsEntity = hlfir::getElementAt (loc, builder, lhsEntity,
469469 elementalLoopNest->oneBasedIndices );
470470 rhsEntity = hlfir::getElementAt (loc, builder, rhsEntity,
@@ -484,7 +484,7 @@ void OrderedAssignmentRewriter::pre(hlfir::RegionAssignOp regionAssignOp) {
484484 for (auto &cleanupConversion : argConversionCleanups)
485485 cleanupConversion ();
486486 if (elementalLoopNest)
487- builder.setInsertionPointAfter (elementalLoopNest->outerLoop );
487+ builder.setInsertionPointAfter (elementalLoopNest->outerOp );
488488 } else {
489489 // TODO: preserve allocatable assignment aspects for forall once
490490 // they are conveyed in hlfir.region_assign.
@@ -493,7 +493,7 @@ void OrderedAssignmentRewriter::pre(hlfir::RegionAssignOp regionAssignOp) {
493493 generateCleanupIfAny (loweredLhs.elementalCleanup );
494494 if (loweredLhs.vectorSubscriptLoopNest )
495495 builder.setInsertionPointAfter (
496- loweredLhs.vectorSubscriptLoopNest ->outerLoop );
496+ loweredLhs.vectorSubscriptLoopNest ->outerOp );
497497 generateCleanupIfAny (oldRhsYield);
498498 generateCleanupIfAny (loweredLhs.nonElementalCleanup );
499499}
@@ -518,16 +518,16 @@ void OrderedAssignmentRewriter::pre(hlfir::WhereOp whereOp) {
518518 hlfir::Entity savedMask{maybeSaved->first };
519519 mlir::Value shape = hlfir::genShape (loc, builder, savedMask);
520520 whereLoopNest = hlfir::genLoopNest (loc, builder, shape);
521- constructStack.push_back (whereLoopNest->outerLoop . getOperation () );
522- builder.setInsertionPointToStart (whereLoopNest->innerLoop . getBody () );
521+ constructStack.push_back (whereLoopNest->outerOp );
522+ builder.setInsertionPointToStart (whereLoopNest->body );
523523 mlir::Value cdt = hlfir::getElementAt (loc, builder, savedMask,
524524 whereLoopNest->oneBasedIndices );
525525 generateMaskIfOp (cdt);
526526 if (maybeSaved->second ) {
527527 // If this is the same run as the one that saved the value, the clean-up
528528 // was left-over to be done now.
529529 auto insertionPoint = builder.saveInsertionPoint ();
530- builder.setInsertionPointAfter (whereLoopNest->outerLoop );
530+ builder.setInsertionPointAfter (whereLoopNest->outerOp );
531531 generateCleanupIfAny (maybeSaved->second );
532532 builder.restoreInsertionPoint (insertionPoint);
533533 }
@@ -539,8 +539,8 @@ void OrderedAssignmentRewriter::pre(hlfir::WhereOp whereOp) {
539539 mask.generateNoneElementalPart (builder, mapper);
540540 mlir::Value shape = mask.generateShape (builder, mapper);
541541 whereLoopNest = hlfir::genLoopNest (loc, builder, shape);
542- constructStack.push_back (whereLoopNest->outerLoop . getOperation () );
543- builder.setInsertionPointToStart (whereLoopNest->innerLoop . getBody () );
542+ constructStack.push_back (whereLoopNest->outerOp );
543+ builder.setInsertionPointToStart (whereLoopNest->body );
544544 mlir::Value cdt = generateMaskedEntity (mask);
545545 generateMaskIfOp (cdt);
546546 return ;
@@ -754,7 +754,7 @@ OrderedAssignmentRewriter::generateYieldedLHS(
754754 loweredLhs.vectorSubscriptLoopNest = hlfir::genLoopNest (
755755 loc, builder, loweredLhs.vectorSubscriptShape .value ());
756756 builder.setInsertionPointToStart (
757- loweredLhs.vectorSubscriptLoopNest ->innerLoop . getBody () );
757+ loweredLhs.vectorSubscriptLoopNest ->body );
758758 }
759759 loweredLhs.lhs = temp->second .fetch (loc, builder);
760760 return loweredLhs;
@@ -772,7 +772,7 @@ OrderedAssignmentRewriter::generateYieldedLHS(
772772 hlfir::genLoopNest (loc, builder, *loweredLhs.vectorSubscriptShape ,
773773 !elementalAddrLhs.isOrdered ());
774774 builder.setInsertionPointToStart (
775- loweredLhs.vectorSubscriptLoopNest ->innerLoop . getBody () );
775+ loweredLhs.vectorSubscriptLoopNest ->body );
776776 mapper.map (elementalAddrLhs.getIndices (),
777777 loweredLhs.vectorSubscriptLoopNest ->oneBasedIndices );
778778 for (auto &op : elementalAddrLhs.getBody ().front ().without_terminator ())
@@ -798,11 +798,11 @@ OrderedAssignmentRewriter::generateMaskedEntity(MaskedArrayExpr &maskedExpr) {
798798 if (!maskedExpr.noneElementalPartWasGenerated ) {
799799 // Generate none elemental part before the where loops (but inside the
800800 // current forall loops if any).
801- builder.setInsertionPoint (whereLoopNest->outerLoop );
801+ builder.setInsertionPoint (whereLoopNest->outerOp );
802802 maskedExpr.generateNoneElementalPart (builder, mapper);
803803 }
804804 // Generate the none elemental part cleanup after the where loops.
805- builder.setInsertionPointAfter (whereLoopNest->outerLoop );
805+ builder.setInsertionPointAfter (whereLoopNest->outerOp );
806806 maskedExpr.generateNoneElementalCleanupIfAny (builder, mapper);
807807 // Generate the value of the current element for the masked expression
808808 // at the current insertion point (inside the where loops, and any fir.if
@@ -1242,7 +1242,7 @@ void OrderedAssignmentRewriter::saveLeftHandSide(
12421242 LhsValueAndCleanUp loweredLhs = generateYieldedLHS (loc, region);
12431243 fir::factory::TemporaryStorage *temp = nullptr ;
12441244 if (loweredLhs.vectorSubscriptLoopNest )
1245- constructStack.push_back (loweredLhs.vectorSubscriptLoopNest ->outerLoop );
1245+ constructStack.push_back (loweredLhs.vectorSubscriptLoopNest ->outerOp );
12461246 if (loweredLhs.vectorSubscriptLoopNest && !rhsIsArray (regionAssignOp)) {
12471247 // Vector subscripted entity for which the shape must also be saved on top
12481248 // of the element addresses (e.g. the shape may change in each forall
@@ -1265,7 +1265,7 @@ void OrderedAssignmentRewriter::saveLeftHandSide(
12651265 // subscripted LHS.
12661266 auto &vectorTmp = temp->cast <fir::factory::AnyVectorSubscriptStack>();
12671267 auto insertionPoint = builder.saveInsertionPoint ();
1268- builder.setInsertionPoint (loweredLhs.vectorSubscriptLoopNest ->outerLoop );
1268+ builder.setInsertionPoint (loweredLhs.vectorSubscriptLoopNest ->outerOp );
12691269 vectorTmp.pushShape (loc, builder, shape);
12701270 builder.restoreInsertionPoint (insertionPoint);
12711271 } else {
@@ -1291,7 +1291,7 @@ void OrderedAssignmentRewriter::saveLeftHandSide(
12911291 if (loweredLhs.vectorSubscriptLoopNest ) {
12921292 constructStack.pop_back ();
12931293 builder.setInsertionPointAfter (
1294- loweredLhs.vectorSubscriptLoopNest ->outerLoop );
1294+ loweredLhs.vectorSubscriptLoopNest ->outerOp );
12951295 }
12961296}
12971297
0 commit comments