-
- Downloads
[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
Showing
- mlir/include/mlir/Analysis/Presburger/IntegerPolyhedron.h 9 additions, 0 deletionsmlir/include/mlir/Analysis/Presburger/IntegerPolyhedron.h
- mlir/include/mlir/Analysis/Presburger/PWMAFunction.h 195 additions, 0 deletionsmlir/include/mlir/Analysis/Presburger/PWMAFunction.h
- mlir/lib/Analysis/Presburger/CMakeLists.txt 1 addition, 0 deletionsmlir/lib/Analysis/Presburger/CMakeLists.txt
- mlir/lib/Analysis/Presburger/IntegerPolyhedron.cpp 13 additions, 20 deletionsmlir/lib/Analysis/Presburger/IntegerPolyhedron.cpp
- mlir/lib/Analysis/Presburger/PWMAFunction.cpp 198 additions, 0 deletionsmlir/lib/Analysis/Presburger/PWMAFunction.cpp
- mlir/unittests/Analysis/Presburger/CMakeLists.txt 1 addition, 0 deletionsmlir/unittests/Analysis/Presburger/CMakeLists.txt
- mlir/unittests/Analysis/Presburger/PWMAFunctionTest.cpp 183 additions, 0 deletionsmlir/unittests/Analysis/Presburger/PWMAFunctionTest.cpp
Loading
Please register or sign in to comment