diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2013-01-23 12:37:44 +0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2013-01-23 12:37:44 +0700 |
commit | 68636887891036a2ebd77fa0397afd7da91a551a (patch) | |
tree | 513be6708b8696ad51e84c124b45fd8244cf81af /src/sat | |
parent | ac1207abea41ad9d3dd304cdc9a10a899eb8cbcc (diff) | |
download | abc-68636887891036a2ebd77fa0397afd7da91a551a.tar.gz abc-68636887891036a2ebd77fa0397afd7da91a551a.tar.bz2 abc-68636887891036a2ebd77fa0397afd7da91a551a.zip |
Enabled detecting CEXes in multiple POs without stopping (sim3 -a).
Diffstat (limited to 'src/sat')
-rw-r--r-- | src/sat/bmc/bmc.h | 1 | ||||
-rw-r--r-- | src/sat/bmc/bmcBmc3.c | 11 |
2 files changed, 8 insertions, 4 deletions
diff --git a/src/sat/bmc/bmc.h b/src/sat/bmc/bmc.h index 7cc5637b..bac4a2dd 100644 --- a/src/sat/bmc/bmc.h +++ b/src/sat/bmc/bmc.h @@ -54,6 +54,7 @@ struct Saig_ParBmc_t_ int nFfToAddMax; // max number of flops to add during CBA int fSkipRand; // skip random decisions int fVerbose; // verbose + int fNotVerbose; // skip line-by-line print-out int iFrame; // explored up to this frame int nFailOuts; // the number of failed outputs }; diff --git a/src/sat/bmc/bmcBmc3.c b/src/sat/bmc/bmcBmc3.c index 7ca5c7ba..cd965c06 100644 --- a/src/sat/bmc/bmcBmc3.c +++ b/src/sat/bmc/bmcBmc3.c @@ -1305,6 +1305,7 @@ void Saig_ParBmcSetDefaultParams( Saig_ParBmc_t * p ) p->fSolveAll = 0; // stops on the first SAT instance p->fDropSatOuts = 0; // replace sat outputs by constant 0 p->fVerbose = 0; // verbose + p->fNotVerbose = 0; // skip line-by-line print-out p->iFrame = -1; // explored up to this frame p->nFailOuts = 0; // the number of failed outputs } @@ -1425,8 +1426,9 @@ clkOther += clock() - clk2; return 0; } pPars->nFailOuts++; - Abc_Print( 1, "Output %*d was asserted in frame %2d (solved %*d out of %*d outputs).\n", - nOutDigits, i, f, nOutDigits, pPars->nFailOuts, nOutDigits, Saig_ManPoNum(pAig) ); + if ( !pPars->fNotVerbose ) + Abc_Print( 1, "Output %*d was asserted in frame %2d (solved %*d out of %*d outputs).\n", + nOutDigits, i, f, nOutDigits, pPars->nFailOuts, nOutDigits, Saig_ManPoNum(pAig) ); if ( p->vCexes == NULL ) p->vCexes = Vec_PtrStart( Saig_ManPoNum(pAig) ); Vec_PtrWriteEntry( p->vCexes, i, pCex ); @@ -1498,8 +1500,9 @@ clkOther += clock() - clk2; return 0; } pPars->nFailOuts++; - Abc_Print( 1, "Output %*d was asserted in frame %2d (solved %*d out of %*d outputs).\n", - nOutDigits, i, f, nOutDigits, pPars->nFailOuts, nOutDigits, Saig_ManPoNum(pAig) ); + if ( !pPars->fNotVerbose ) + Abc_Print( 1, "Output %*d was asserted in frame %2d (solved %*d out of %*d outputs).\n", + nOutDigits, i, f, nOutDigits, pPars->nFailOuts, nOutDigits, Saig_ManPoNum(pAig) ); if ( p->vCexes == NULL ) p->vCexes = Vec_PtrStart( Saig_ManPoNum(pAig) ); Vec_PtrWriteEntry( p->vCexes, i, pCex ); |