diff options
Diffstat (limited to 'flang/lib/Lower/IO.cpp')
| -rw-r--r-- | flang/lib/Lower/IO.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/flang/lib/Lower/IO.cpp b/flang/lib/Lower/IO.cpp index 4ad2ac01334f..98dc78f625b9 100644 --- a/flang/lib/Lower/IO.cpp +++ b/flang/lib/Lower/IO.cpp @@ -977,9 +977,9 @@ static void genIoLoop(Fortran::lower::AbstractConverter &converter, fir::StoreOp::create(builder, loc, lcv, loopVar); genItemList(ioImpliedDo); builder.setInsertionPointToEnd(doLoopOp.getBody()); - mlir::Value result = mlir::arith::AddIOp::create( - builder, loc, doLoopOp.getInductionVar(), doLoopOp.getStep(), iofAttr); - fir::ResultOp::create(builder, loc, result); + // fir.do_loop's induction variable's increment is implied, + // so we do not need to increment it explicitly. + fir::ResultOp::create(builder, loc, doLoopOp.getInductionVar()); builder.setInsertionPointAfter(doLoopOp); // The loop control variable may be used after the loop. lcv = builder.createConvert(loc, fir::unwrapRefType(loopVar.getType()), |
