[MLIR] PresburgerSet emptiness check: remove assertions that there are no symbols
authorArjun P <arjunpitchanathan@gmail.com>
Mon, 12 Apr 2021 17:31:15 +0000 (23:01 +0530)
committerArjun P <arjunpitchanathan@gmail.com>
Mon, 12 Apr 2021 17:41:06 +0000 (23:11 +0530)
Symbols are now supported in the integer emptiness check. Remove some outdated assertions checking that there are no symbols.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D100327

mlir/lib/Analysis/PresburgerSet.cpp

index 051010e..7a36e9c 100644 (file)
@@ -297,7 +297,6 @@ bool PresburgerSet::isEqual(const PresburgerSet &set) const {
 /// Return true if all the sets in the union are known to be integer empty,
 /// false otherwise.
 bool PresburgerSet::isIntegerEmpty() const {
-  assert(nSym == 0 && "isIntegerEmpty is intended for non-symbolic sets");
   // The set is empty iff all of the disjuncts are empty.
   for (const FlatAffineConstraints &fac : flatAffineConstraints) {
     if (!fac.isIntegerEmpty())
@@ -307,7 +306,6 @@ bool PresburgerSet::isIntegerEmpty() const {
 }
 
 bool PresburgerSet::findIntegerSample(SmallVectorImpl<int64_t> &sample) {
-  assert(nSym == 0 && "findIntegerSample is intended for non-symbolic sets");
   // A sample exists iff any of the disjuncts contains a sample.
   for (const FlatAffineConstraints &fac : flatAffineConstraints) {
     if (Optional<SmallVector<int64_t, 8>> opt = fac.findIntegerSample()) {