summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2014-06-16 16:46:39 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2014-06-16 16:46:39 -0700
commite20364896eeb0fba7d23fe6047fe8cd05c6ad648 (patch)
tree0d3859e8a494719584390d1943f9d97d0c488d26
parent2340d279bd7f1d53f12a2e5b0913d30d9aa98220 (diff)
downloadabc-e20364896eeb0fba7d23fe6047fe8cd05c6ad648.tar.gz
abc-e20364896eeb0fba7d23fe6047fe8cd05c6ad648.tar.bz2
abc-e20364896eeb0fba7d23fe6047fe8cd05c6ad648.zip
Bug fix in CEC generation after rarity simulation and few small changes.
-rw-r--r--src/aig/gia/gia.h1
-rw-r--r--src/base/abci/abc.c14
-rw-r--r--src/proof/ssw/sswRarity.c2
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 )