X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;ds=sidebyside;f=src%2FASTTransform%2Fpreprocess.cc;h=7b4877b7a57cbffea4bb13a34fb10dbc39bb58a8;hb=4e9820b3e2e81893145736665fd8c43ed9b8bccc;hp=a23d918e600833b534187f84f08fc60d1ac1201d;hpb=ee69b0984366edd899227cc651ec272c8f77c66a;p=satune.git diff --git a/src/ASTTransform/preprocess.cc b/src/ASTTransform/preprocess.cc index a23d918..7b4877b 100644 --- a/src/ASTTransform/preprocess.cc +++ b/src/ASTTransform/preprocess.cc @@ -5,7 +5,7 @@ #include "iterator.h" Preprocess::Preprocess(CSolver *_solver) - : Transform(_solver) + : Transform(_solver) { } @@ -13,12 +13,12 @@ Preprocess::~Preprocess() { } void Preprocess::doTransform() { - if (solver->getTuner()->getTunable(PREPROCESS, &onoff) == 0) + if (!solver->isBooleanVarUsed() && solver->getTuner()->getTunable(PREPROCESS, &onoff) == 0) return; - + BooleanIterator bit(solver); - while(bit.hasNext()) { - Boolean *b=bit.next(); + while (bit.hasNext()) { + Boolean *b = bit.next(); if (b->type == BOOLEANVAR) processBooleanVar((BooleanVar *)b); } @@ -26,7 +26,7 @@ void Preprocess::doTransform() { } void Preprocess::resolveBooleanVars() { - SetIteratorBoolean * iterator = toremove.iterator(); + SetIteratorBoolean *iterator = toremove.iterator(); while (iterator->hasNext()) { BooleanVar *bv = (BooleanVar *) iterator->next(); if (bv->polarity == P_TRUE) { @@ -38,9 +38,9 @@ void Preprocess::resolveBooleanVars() { delete iterator; } -void Preprocess::processBooleanVar(BooleanVar * b) { - if (b->polarity==P_TRUE || - b->polarity==P_FALSE) { +void Preprocess::processBooleanVar(BooleanVar *b) { + if (b->polarity == P_TRUE || + b->polarity == P_FALSE) { toremove.add(b); } }