[all-commits] [llvm/llvm-project] 4ae185: [MLIR][Presburger] Refactor looping strategy in co...
Michel Weber via All-commits
all-commits at lists.llvm.org
Fri Feb 25 04:41:34 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 4ae18553560256f08e7dd64fec3a97ca65eac138
https://github.com/llvm/llvm-project/commit/4ae18553560256f08e7dd64fec3a97ca65eac138
Author: Michel Weber <michel.weber at inf.ethz.ch>
Date: 2022-02-25 (Fri, 25 Feb 2022)
Changed paths:
M mlir/lib/Analysis/Presburger/PresburgerSet.cpp
M mlir/unittests/Analysis/Presburger/PresburgerSetTest.cpp
Log Message:
-----------
[MLIR][Presburger] Refactor looping strategy in coalesce
This patch refactors the looping strategy of coalesce for future patches. The new strategy works in-place and uses IneqType to organize inequalities into vectors of the same type. Future coalesce cases will pattern match on this organization. E.g. the contained case needs all inequalities and equalities to be redundant, so this case becomes checking whether the respective vectors are empty. For other cases, the patterns consider the types of all inequalities of both sets making it wasteful to only consider whether a can be coalesced with b in one step, as inequalities would need to be typed again for the opposite case. Therefore, the new strategy tries to coalesce a with b and b with a in a single step.
Reviewed By: Groverkss, arjunp
Differential Revision: https://reviews.llvm.org/D120392
More information about the All-commits
mailing list