edits
[satune.git] / src / ASTTransform / elementopt.cc
index 6fec15597d29f84d21b7cef38130ee7467eca364..b0866edc1d0985a64ad213262ef992132581e5e1 100644 (file)
@@ -71,7 +71,7 @@ void ElementOpt::handlePredicateEquals(BooleanPredicate *pred, ElementSet *left,
                replaceVarWithConst(pred, left, right);
        } else if (pred->isFalse() && updateSets) {
                constrainVarWithConst(pred, left, right);
-       } else ASSERT(0);
+       }
 }
 
 void ElementOpt::handlePredicateInequality(BooleanPredicate *pred, ElementSet *var, ElementConst *value) {
@@ -184,7 +184,8 @@ void ElementOpt::replaceVarWithConst(BooleanPredicate *pred, ElementSet *var, El
                                        solver->boolMap.remove(newpred);
                                        newpred->inputs.set(j, value);
                                        solver->boolMap.put(newpred, newpred);
-                                       workList.push(newpred);
+                                       if (newpred->isTrue() || newpred->isFalse())
+                                               workList.push(newpred);
                                        break;
                                }
                        }