mirror of
https://github.com/intel/llvm.git
synced 2026-01-26 12:26:52 +08:00
This change adds a new DelinearizeIndexOp to the `arith` dialect. The operation accepts an `index` type as well as a basis (array of index values) representing how the index should be decomposed into a multi-index. The decomposition obeys a canonical semantic that treats the final basis element as "fastest varying" and the first basis element as "slowest varying". A naive lowering of the operation using a sequence of `arith.divui` and `arith.remui` operations is also given. Differential Revision: https://reviews.llvm.org/D129697
Multi-Level Intermediate Representation
See https://mlir.llvm.org/ for more information.