diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2017-12-06 13:51:10 -0800 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2017-12-06 13:51:10 -0800 |
commit | c6b962efc803c5d258302e2b8bdf33efb219bc5b (patch) | |
tree | e512380a2ddcf3d244b5d9ac5216dcf5323a2883 /src/sat | |
parent | e37bbba72d101debccd1f896f8a2aa09ebfbb297 (diff) | |
download | abc-c6b962efc803c5d258302e2b8bdf33efb219bc5b.tar.gz abc-c6b962efc803c5d258302e2b8bdf33efb219bc5b.tar.bz2 abc-c6b962efc803c5d258302e2b8bdf33efb219bc5b.zip |
An improvement to 'twoexact' and 'lutexact'.
Diffstat (limited to 'src/sat')
-rw-r--r-- | src/sat/bmc/bmc.h | 1 | ||||
-rw-r--r-- | src/sat/bmc/bmcMaj.c | 4 | ||||
-rw-r--r-- | src/sat/bmc/bmcMaj2.c | 4 |
3 files changed, 9 insertions, 0 deletions
diff --git a/src/sat/bmc/bmc.h b/src/sat/bmc/bmc.h index c046fe07..00c9feb0 100644 --- a/src/sat/bmc/bmc.h +++ b/src/sat/bmc/bmc.h @@ -36,6 +36,7 @@ ABC_NAMESPACE_HEADER_START //#define USE_NODE_ORDER 1 +//#define USE_FIRST_SPECIAL 1 //////////////////////////////////////////////////////////////////////// /// BASIC TYPES /// diff --git a/src/sat/bmc/bmcMaj.c b/src/sat/bmc/bmcMaj.c index 86934898..97322eae 100644 --- a/src/sat/bmc/bmcMaj.c +++ b/src/sat/bmc/bmcMaj.c @@ -438,6 +438,7 @@ int Exa_ManMarkup( Exa_Man_t * p ) { for ( k = 0; k < 2; k++ ) { +#ifdef USE_FIRST_SPECIAL if ( i == p->nObjs - 1 && k == 0 ) { j = p->nObjs - 2; @@ -445,6 +446,7 @@ int Exa_ManMarkup( Exa_Man_t * p ) p->VarMarks[i][k][j] = p->iVar++; continue; } +#endif for ( j = 1 - k; j < i - k; j++ ) { Vec_WecPush( p->vOutLits, j, Abc_Var2Lit(p->iVar, 0) ); @@ -817,6 +819,7 @@ static int Exa3_ManMarkup( Exa3_Man_t * p ) { for ( k = 0; k < p->nLutSize; k++ ) { +#ifdef USE_FIRST_SPECIAL if ( i == p->nObjs - 1 && k == 0 ) { j = p->nObjs - 2; @@ -824,6 +827,7 @@ static int Exa3_ManMarkup( Exa3_Man_t * p ) p->VarMarks[i][k][j] = p->iVar++; continue; } +#endif for ( j = p->nLutSize - 1 - k; j < i - k; j++ ) { Vec_WecPush( p->vOutLits, j, Abc_Var2Lit(p->iVar, 0) ); diff --git a/src/sat/bmc/bmcMaj2.c b/src/sat/bmc/bmcMaj2.c index cfc8c407..54745118 100644 --- a/src/sat/bmc/bmcMaj2.c +++ b/src/sat/bmc/bmcMaj2.c @@ -544,6 +544,7 @@ static int Exa_ManMarkup( Exa_Man_t * p ) { for ( k = 0; k < 2; k++ ) { +#ifdef USE_FIRST_SPECIAL if ( i == p->nObjs - 1 && k == 0 ) { j = p->nObjs - 2; @@ -551,6 +552,7 @@ static int Exa_ManMarkup( Exa_Man_t * p ) p->VarMarks[i][k][j] = p->iVar++; continue; } +#endif for ( j = 1 - k; j < i - k; j++ ) { Vec_WecPush( p->vOutLits, j, Abc_Var2Lit(p->iVar, 0) ); @@ -925,6 +927,7 @@ static int Exa3_ManMarkup( Exa3_Man_t * p ) { for ( k = 0; k < p->nLutSize; k++ ) { +#ifdef USE_FIRST_SPECIAL if ( i == p->nObjs - 1 && k == 0 ) { j = p->nObjs - 2; @@ -932,6 +935,7 @@ static int Exa3_ManMarkup( Exa3_Man_t * p ) p->VarMarks[i][k][j] = p->iVar++; continue; } +#endif for ( j = p->nLutSize - 1 - k; j < i - k; j++ ) { Vec_WecPush( p->vOutLits, j, Abc_Var2Lit(p->iVar, 0) ); |