[Mlir-commits] [mlir] [MLIR][Presburger] Fix Gaussian elimination (PR #164437)
Arjun P
llvmlistbot at llvm.org
Mon Dec 1 08:37:28 PST 2025
================
@@ -1112,15 +1112,28 @@ unsigned IntegerRelation::gaussianEliminateVars(unsigned posStart,
return posLimit - posStart;
}
+static std::optional<unsigned>
+findEqualityWithNonZeroAfterRow(IntegerRelation &rel, unsigned fromRow,
+ unsigned colIdx) {
+ assert(fromRow < rel.getNumVars() && colIdx < rel.getNumCols() &&
+ "position out of bounds");
+ for (unsigned rowIdx = fromRow; rowIdx < rel.getNumEqualities(); ++rowIdx) {
----------------
Superty wrote:
in LLVM we are supposed to write this as
`for (unsigned rowIdx = fromRow, e = rel.getNumEqualities(); rowIdx < e; ++rowIdx)`
https://llvm.org/docs/CodingStandards.html#don-t-evaluate-end-every-time-through-a-loop
https://github.com/llvm/llvm-project/pull/164437
More information about the Mlir-commits
mailing list