Add a canonicalization to erase empty AffineForOps.
authorRiver Riddle <riverriddle@google.com>
Fri, 30 Aug 2019 23:49:01 +0000 (16:49 -0700)
committerA. Unique TensorFlower <gardener@tensorflow.org>
Fri, 30 Aug 2019 23:49:32 +0000 (16:49 -0700)
commit9c8a8a7d0da011f1570733265020a40079127b05
treed73a6a1837ecbb4e76e1cd1d1478e69102c95f33
parent3d3f62323c820ed90bef4378ae2e3f23f542ca81
Add a canonicalization to erase empty AffineForOps.

AffineForOp themselves are pure and can be removed if there are no internal operations.

PiperOrigin-RevId: 266481293
mlir/lib/Dialect/AffineOps/AffineOps.cpp
mlir/lib/Transforms/LoopInvariantCodeMotion.cpp
mlir/test/AffineOps/canonicalize.mlir
mlir/test/Transforms/loop-invariant-code-motion.mlir