diff options
| author | Uday Bondhugula <udayb@iisc.ac.in> | 2019-10-08 15:01:35 -0700 |
|---|---|---|
| committer | A. Unique TensorFlower <gardener@tensorflow.org> | 2019-10-08 15:13:11 -0700 |
| commit | 6136f33d5960a63961f2b471f82e5b7df583f8f2 (patch) | |
| tree | 627db937fbc9b5629e1a0da4d76ac601ce246e56 /mlir/lib/Transforms/LoopUnrollAndJam.cpp | |
| parent | ac91e673757f215325781cde4a286e96d7734fef (diff) | |
| download | bcm5719-llvm-6136f33d5960a63961f2b471f82e5b7df583f8f2.tar.gz bcm5719-llvm-6136f33d5960a63961f2b471f82e5b7df583f8f2.zip | |
unroll and jam: fix order of jammed bodies
- bodies would earlier appear in the order (i, i+3, i+2, i+1) instead of
(i, i+1, i+2, i+3) for example for factor 4.
- clean up hardcoded test cases
Signed-off-by: Uday Bondhugula <uday@polymagelabs.com>
Closes tensorflow/mlir#170
COPYBARA_INTEGRATE_REVIEW=https://github.com/tensorflow/mlir/pull/170 from bondhugula:ujam b66b405b2b1894a03b376952e32a9d0292042665
PiperOrigin-RevId: 273613131
Diffstat (limited to 'mlir/lib/Transforms/LoopUnrollAndJam.cpp')
| -rw-r--r-- | mlir/lib/Transforms/LoopUnrollAndJam.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/mlir/lib/Transforms/LoopUnrollAndJam.cpp b/mlir/lib/Transforms/LoopUnrollAndJam.cpp index 559f94bedf0..2b7330f4175 100644 --- a/mlir/lib/Transforms/LoopUnrollAndJam.cpp +++ b/mlir/lib/Transforms/LoopUnrollAndJam.cpp @@ -209,8 +209,8 @@ LogicalResult mlir::loopUnrollJamByFactor(AffineForOp forOp, forOp.setStep(step * unrollJamFactor); auto *forOpIV = forOp.getInductionVar(); - // Unroll and jam (appends unrollJamFactor-1 additional copies). - for (unsigned i = 1; i < unrollJamFactor; i++) { + // Unroll and jam (appends unrollJamFactor - 1 additional copies). + for (unsigned i = unrollJamFactor - 1; i >= 1; --i) { // Operand map persists across all sub-blocks. BlockAndValueMapping operandMapping; for (auto &subBlock : subBlocks) { |

