llvm-project/mlir
Arjun P d5a2944219 [MLIR][Presburger] Add support for piece-wise multi-affine functions
Add the class MultiAffineFunction which represents functions whose domain is an
IntegerPolyhedron and which produce an output given by a tuple of affine
expressions in the IntegerPolyhedron's ids.

Also add support for piece-wise MultiAffineFunctions, which are defined on a
union of IntegerPolyhedrons, and may have different output affine expressions
on each IntegerPolyhedron. Thus the function is affine on each individual
IntegerPolyhedron piece in the domain.

This is part of a series of patches leading up to parametric integer programming.

Depends on D118778.

Reviewed By: Groverkss

Differential Revision: https://reviews.llvm.org/D118779
2022-02-08 00:43:59 +05:30
..
benchmark/python [mlir] Split out a new ControlFlow dialect from Standard 2022-02-06 14:51:16 -08:00
cmake/modules [mlir] Do not use an empty source file when building aggregate libraries. 2022-02-05 23:06:28 -08:00
docs [mlir] Split out a new ControlFlow dialect from Standard 2022-02-06 14:51:16 -08:00
examples [mlir] Split out a new ControlFlow dialect from Standard 2022-02-06 14:51:16 -08:00
include [MLIR][Presburger] Add support for piece-wise multi-affine functions 2022-02-08 00:43:59 +05:30
lib [MLIR][Presburger] Add support for piece-wise multi-affine functions 2022-02-08 00:43:59 +05:30
python [mlir] Fixup python bindings after splitting cf ops from std. 2022-02-06 14:51:17 -08:00
test [mlir][SCF] Further simplify affine maps during `for-loop-canonicalization` 2022-02-08 02:40:08 +09:00
tools [mlir][NFC] Fully qualify call to `mlir::success` in auto generated C++ 2022-02-05 00:40:04 +01:00
unittests [MLIR][Presburger] Add support for piece-wise multi-affine functions 2022-02-08 00:43:59 +05:30
utils [mlir] Set up boilerplate build for MLIR benchmarks 2022-01-27 21:38:15 +00:00
.clang-format
.clang-tidy Enable readability-redundant-smartptr-get in MLIR local clang-tidy config 2022-01-08 20:07:11 +00:00
CMakeLists.txt [mlir] Set up boilerplate build for MLIR benchmarks 2022-01-27 21:38:15 +00:00
LICENSE.TXT
README.md

README.md

Multi-Level Intermediate Representation

See https://mlir.llvm.org/ for more information.