summaryrefslogtreecommitdiff
path: root/flang/lib/Lower/IO.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'flang/lib/Lower/IO.cpp')
-rw-r--r--flang/lib/Lower/IO.cpp6
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()),