llvm-project/mlir/lib/Analysis
Arjun P d7ec4d0be3 [MLIR] PresburgerSet subtraction: fix bug where the set `b` was not restored properly on return
When subtracting `b \ c`, when there are divisions in `c`, these division
constraints get added to `b`. `b` must be restored to its original state
when returning, but these added divisions constraints were not removed in
one of the return paths. This patch fixes this and deduplicates the
restoration logic by encapuslating it in a lambda `restoreState`. The patch
also includes a regression test for the bug fix.

Reviewed By: Groverkss

Differential Revision: https://reviews.llvm.org/D115577
2021-12-12 17:14:04 +05:30
..
AliasAnalysis [mlir] Added new RegionBranchTerminatorOpInterface and adapted uses of hasTrait<ReturnLike>. 2021-07-26 06:39:31 +02:00
Presburger [MLIR] FlatAffineConstraints::isIntegerEmpty: fix bug in computation of duals 2021-12-11 03:48:40 +05:30
AffineAnalysis.cpp [mlir] Move min/max ops from Std to Arith. 2021-11-15 13:19:17 +01:00
AffineStructures.cpp [MLIR][FlatAffineConstraints] Add support for extracting divisions with tighter bounds 2021-12-11 16:23:54 +05:30
AliasAnalysis.cpp [mlir] Add support for querying the ModRef behavior from the AliasAnalysis class 2021-05-27 13:57:29 -07:00
BufferViewFlowAnalysis.cpp [mlir] Added new RegionBranchTerminatorOpInterface and adapted uses of hasTrait<ReturnLike>. 2021-07-26 06:39:31 +02:00
CMakeLists.txt Revert "[mlir] FlatAffineConstraint parsing for unit tests" 2021-11-15 07:22:38 +00:00
CallGraph.cpp [mlir] Update SCCP and the Inliner to use SymbolTableCollection for symbol lookups 2020-10-16 12:08:48 -07:00
DataFlowAnalysis.cpp Adjust "end namespace" comment in MLIR to match new agree'd coding style 2021-12-08 06:05:26 +00:00
DataLayoutAnalysis.cpp [mlir] support memref of memref in standard-to-llvm conversion 2021-06-08 11:11:31 +02:00
LinearTransform.cpp [MLIR] Support symbols in emptiness checks for FlatAffineConstraints 2021-04-08 21:38:47 +05:30
Liveness.cpp [MLIR][NFC] Minor cleanup in liveness. 2021-07-23 13:30:02 -07:00
LoopAnalysis.cpp [mlir][RFC] Refactor layout representation in MemRefType 2021-10-19 12:31:15 +03:00
NestedMatcher.cpp Adjust "end namespace" comment in MLIR to match new agree'd coding style 2021-12-08 06:05:26 +00:00
NumberOfExecutions.cpp [MLIR] Replace std ops with arith dialect ops 2021-10-13 03:07:03 +00:00
PresburgerSet.cpp [MLIR] PresburgerSet subtraction: fix bug where the set `b` was not restored properly on return 2021-12-12 17:14:04 +05:30
SliceAnalysis.cpp [mlir] Make topologicalSort iterative and consider op regions 2021-11-10 10:05:01 -08:00
Utils.cpp [MLIR] Fix incorrect removal of source loop in loop fusion 2021-11-23 02:54:09 +05:30