From e20364896eeb0fba7d23fe6047fe8cd05c6ad648 Mon Sep 17 00:00:00 2001 From: Alan Mishchenko Date: Mon, 16 Jun 2014 16:46:39 -0700 Subject: Bug fix in CEC generation after rarity simulation and few small changes. --- src/aig/gia/gia.h | 1 + src/base/abci/abc.c | 14 +++++++++----- src/proof/ssw/sswRarity.c | 2 +- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/aig/gia/gia.h b/src/aig/gia/gia.h index bc6fae06..426660a4 100644 --- a/src/aig/gia/gia.h +++ b/src/aig/gia/gia.h @@ -257,6 +257,7 @@ struct Jf_Par_t_ int DelayTarget; int fAreaOnly; int fOptEdge; + int fUseMux7; int fPower; int fCoarsen; int fCutMin; diff --git a/src/base/abci/abc.c b/src/base/abci/abc.c index 9bd645e6..3fc68dda 100644 --- a/src/base/abci/abc.c +++ b/src/base/abci/abc.c @@ -30913,7 +30913,7 @@ int Abc_CommandAbc9Lf( Abc_Frame_t * pAbc, int argc, char ** argv ) Gia_Man_t * pNew; int c; Lf_ManSetDefaultPars( pPars ); Extra_UtilGetoptReset(); - while ( ( c = Extra_UtilGetopt( argc, argv, "KCFARLDWaekmgpvwh" ) ) != EOF ) + while ( ( c = Extra_UtilGetopt( argc, argv, "KCFARLDWaekmupgvwh" ) ) != EOF ) { switch ( c ) { @@ -31023,12 +31023,15 @@ int Abc_CommandAbc9Lf( Abc_Frame_t * pAbc, int argc, char ** argv ) case 'm': pPars->fCutMin ^= 1; break; - case 'g': - pPars->fPureAig ^= 1; + case 'u': + pPars->fUseMux7 ^= 1; break; case 'p': pPars->fPower ^= 1; break; + case 'g': + pPars->fPureAig ^= 1; + break; case 'v': pPars->fVerbose ^= 1; break; @@ -31061,7 +31064,7 @@ usage: sprintf(Buffer, "best possible" ); else sprintf(Buffer, "%d", pPars->DelayTarget ); - Abc_Print( -2, "usage: &lf [-KCFARLD num] [-akmgpvwh]\n" ); + Abc_Print( -2, "usage: &lf [-KCFARLD num] [-akmupgvwh]\n" ); Abc_Print( -2, "\t performs technology mapping of the network\n" ); Abc_Print( -2, "\t-K num : LUT size for the mapping (2 <= K <= %d) [default = %d]\n", pPars->nLutSizeMax, pPars->nLutSize ); Abc_Print( -2, "\t-C num : the max number of priority cuts (1 <= C <= %d) [default = %d]\n", pPars->nCutNumMax, pPars->nCutNum ); @@ -31074,8 +31077,9 @@ usage: Abc_Print( -2, "\t-e : toggles edge vs node minimization [default = %s]\n", pPars->fOptEdge? "yes": "no" ); Abc_Print( -2, "\t-k : toggles coarsening the subject graph [default = %s]\n", pPars->fCoarsen? "yes": "no" ); Abc_Print( -2, "\t-m : toggles cut minimization [default = %s]\n", pPars->fCutMin? "yes": "no" ); + Abc_Print( -2, "\t-u : toggles using additional MUXes [default = %s]\n", pPars->fUseMux7? "yes": "no" ); + Abc_Print( -2, "\t-p : toggles power-aware cut selection heuristics [default = %s]\n", pPars->fPower? "yes": "no" ); Abc_Print( -2, "\t-g : toggles generating AIG without mapping [default = %s]\n", pPars->fPureAig? "yes": "no" ); - Abc_Print( -2, "\t-p : uses power-aware cut selection heuristics [default = %s]\n", pPars->fPower? "yes": "no" ); Abc_Print( -2, "\t-v : toggles verbose output [default = %s]\n", pPars->fVerbose? "yes": "no" ); Abc_Print( -2, "\t-w : toggles very verbose output [default = %s]\n", pPars->fVeryVerbose? "yes": "no" ); Abc_Print( -2, "\t-h : prints the command usage\n"); diff --git a/src/proof/ssw/sswRarity.c b/src/proof/ssw/sswRarity.c index 2dd51f38..a02ea01b 100644 --- a/src/proof/ssw/sswRarity.c +++ b/src/proof/ssw/sswRarity.c @@ -569,7 +569,7 @@ unsigned Ssw_RarManObjHashWord( void * pMan, Aig_Obj_t * pObj ) int Ssw_RarManObjWhichOne( Ssw_RarMan_t * p, Aig_Obj_t * pObj ) { word * pSim = Ssw_RarObjSim( p, Aig_ObjId(pObj) ); - word Flip = pObj->fPhase ? ~(word)0 : 0; + word Flip = 0;//pObj->fPhase ? ~(word)0 : 0; // bug fix! int w, i; for ( w = 0; w < p->pPars->nWords; w++ ) if ( pSim[w] ^ Flip ) -- cgit v1.2.3