Reland [GreedPatternRewriter] Preprocess constants while building worklist...
Reland [GreedPatternRewriter] Preprocess constants while building worklist when not processing top down Reland Note: Adds a fix to properly mark a commutative operation as folded if we change the order of its operands. This was uncovered by the fact that we no longer re-process constants. This avoids accidentally reversing the order of constants during successive application, e.g. when running the canonicalizer. This helps reduce the number of iterations, and also avoids unnecessary changes to input IR. Fixes #51892 Differential Revision: https://reviews.llvm.org/D122692
Showing
- flang/test/Lower/host-associated.f90 6 additions, 6 deletionsflang/test/Lower/host-associated.f90
- mlir/include/mlir/Transforms/FoldUtils.h 22 additions, 0 deletionsmlir/include/mlir/Transforms/FoldUtils.h
- mlir/lib/Transforms/Utils/FoldUtils.cpp 93 additions, 9 deletionsmlir/lib/Transforms/Utils/FoldUtils.cpp
- mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp 13 additions, 2 deletionsmlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp
- mlir/test/Conversion/VectorToSCF/vector-to-scf.mlir 3 additions, 3 deletionsmlir/test/Conversion/VectorToSCF/vector-to-scf.mlir
- mlir/test/Dialect/Async/async-parallel-for-num-worker-threads.mlir 27 additions, 27 deletions.../Dialect/Async/async-parallel-for-num-worker-threads.mlir
- mlir/test/Dialect/Linalg/detensorize_if.mlir 9 additions, 9 deletionsmlir/test/Dialect/Linalg/detensorize_if.mlir
- mlir/test/Dialect/Linalg/transform-patterns.mlir 1 addition, 1 deletionmlir/test/Dialect/Linalg/transform-patterns.mlir
- mlir/test/Dialect/SparseTensor/dense.mlir 5 additions, 5 deletionsmlir/test/Dialect/SparseTensor/dense.mlir
- mlir/test/Dialect/SparseTensor/sparse_scalars.mlir 3 additions, 3 deletionsmlir/test/Dialect/SparseTensor/sparse_scalars.mlir
- mlir/test/Dialect/Tensor/bufferize.mlir 1 addition, 1 deletionmlir/test/Dialect/Tensor/bufferize.mlir
- mlir/test/Dialect/Tensor/split-padding.mlir 2 additions, 2 deletionsmlir/test/Dialect/Tensor/split-padding.mlir
- mlir/test/Transforms/test-operation-folder.mlir 12 additions, 1 deletionmlir/test/Transforms/test-operation-folder.mlir
Loading
Please register or sign in to comment