Revert "[mlir][Arithmetic] Add `arith.delinearize_index` operation"This reverts commit 535b507ba58e8b5f604d53ffc961be1456d229a7.
[mlir][Arithmetic] Add `arith.delinearize_index` operationThis change adds a new DelinearizeIndexOp to the `arith` dialect. Theoperation accepts an `index` type as well as a basis (array of index
[mlir][Arithmetic] Add `arith.delinearize_index` operationThis change adds a new DelinearizeIndexOp to the `arith` dialect. Theoperation accepts an `index` type as well as a basis (array of indexvalues) representing how the index should be decomposed into amulti-index. The decomposition obeys a canonical semantic that treatsthe final basis element as "fastest varying" and the first basis elementas "slowest varying". A naive lowering of the operation using a sequenceof `arith.divui` and `arith.remui` operations is also given.Differential Revision: https://reviews.llvm.org/D129697
show more ...
[mlir] (NFC) Clean up bazel and CMake target namesAll dialect targets in bazel have been named *Dialect and all dialecttargets in CMake have been named MLIR*Dialect.
[mlir][Vector] Enable create_mask for scalable vectorsThe way vector.create_mask is currently lowered isvector-length-dependent, and therefore incompatible with scalable vectortypes. This patch a
[mlir][Vector] Enable create_mask for scalable vectorsThe way vector.create_mask is currently lowered isvector-length-dependent, and therefore incompatible with scalable vectortypes. This patch adds an alternative lowering path for create_maskoperations that return a scalable vector mask.Differential Revision: https://reviews.llvm.org/D118248
[mlir] Use SmallBitVector instead of SmallDenseSet for AffineMap::compressSymbolsThis is both more efficient and more ergonomic to use, as inverting abit vector is trivial while inverting a set is
[mlir] Use SmallBitVector instead of SmallDenseSet for AffineMap::compressSymbolsThis is both more efficient and more ergonomic to use, as inverting abit vector is trivial while inverting a set is annoying.Sadly this leaks into a bunch of APIs downstream, so adapt them as well.This would be NFC, but there is an ordering dependency in MemRefOps'scomputeMemRefRankReductionMask. This is now deterministic, previously itwas dependent on SmallDenseSet's unspecified iteration order.Differential Revision: https://reviews.llvm.org/D119076
[mlir] Move StandardOps/Utils to Arithmetic and sever a bunch of dependencies on StandardThe Utils.cpp file in StandardOps essentially just contains utilities for interacting with arithmeticoperat
[mlir] Move StandardOps/Utils to Arithmetic and sever a bunch of dependencies on StandardThe Utils.cpp file in StandardOps essentially just contains utilities for interacting with arithmeticoperations, and at this point makes more sense as a utility file for the arithemtic dialect.Differential Revision: https://reviews.llvm.org/D118280