diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2015-10-23 15:44:53 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2015-10-23 15:44:53 -0700 |
commit | 701565eb7bd5b464f530e9816e8f4de8ceb98534 (patch) | |
tree | 5e9d23e1b0509fcc5817e233331e50a8bc4daf16 /src/base/abci | |
parent | 637da8baeaabf6f12aa8d9ec287aa675d9ea5fab (diff) | |
download | abc-701565eb7bd5b464f530e9816e8f4de8ceb98534.tar.gz abc-701565eb7bd5b464f530e9816e8f4de8ceb98534.tar.bz2 abc-701565eb7bd5b464f530e9816e8f4de8ceb98534.zip |
Set the default cube limit in 'satclp' to be 0.
Diffstat (limited to 'src/base/abci')
-rw-r--r-- | src/base/abci/abc.c | 4 | ||||
-rw-r--r-- | src/base/abci/abcCollapse.c | 21 |
2 files changed, 14 insertions, 11 deletions
diff --git a/src/base/abci/abc.c b/src/base/abci/abc.c index 9b62c622..c1f7eb5a 100644 --- a/src/base/abci/abc.c +++ b/src/base/abci/abc.c @@ -3102,8 +3102,8 @@ usage: int Abc_CommandSatClp( Abc_Frame_t * pAbc, int argc, char ** argv ) { Abc_Ntk_t * pNtk = Abc_FrameReadNtk(pAbc), * pNtkRes; - int nCubeLim = 1000; - int nBTLimit = 1000000; + int nCubeLim = 0; + int nBTLimit = 1000000; int nCostMax = 20000000; int fCanon = 0; int fReverse = 0; diff --git a/src/base/abci/abcCollapse.c b/src/base/abci/abcCollapse.c index e6618e15..dad22e2b 100644 --- a/src/base/abci/abcCollapse.c +++ b/src/base/abci/abcCollapse.c @@ -431,16 +431,19 @@ Abc_Ntk_t * Abc_NtkFromSops( Abc_Ntk_t * pNtk, int nCubeLim, int nBTLimit, int n // order CO nodes by support size vCoNodes = Abc_NtkCreateCoOrder( pNtk, vSupps ); // compute cost of the largest node - pNode = (Abc_Obj_t *)Vec_PtrEntry( vCoNodes, 0 ); - vDfsNodes = Abc_NtkDfsNodes( pNtk, &pNode, 1 ); - vLevel = Vec_WecEntry( vSupps, Abc_ObjFaninId0(pNode) ); - Cost = Vec_PtrSize(vDfsNodes) * Vec_IntSize(vLevel) * nCubeLim; - Vec_PtrFree( vDfsNodes ); - if ( Cost > nCostMax ) + if ( nCubeLim > 0 ) { - Vec_PtrFree( vCoNodes ); - Vec_WecFree( vSupps ); - return NULL; + pNode = (Abc_Obj_t *)Vec_PtrEntry( vCoNodes, 0 ); + vDfsNodes = Abc_NtkDfsNodes( pNtk, &pNode, 1 ); + vLevel = Vec_WecEntry( vSupps, Abc_ObjFaninId0(pNode) ); + Cost = Vec_PtrSize(vDfsNodes) * Vec_IntSize(vLevel) * nCubeLim; + Vec_PtrFree( vDfsNodes ); + if ( Cost > nCostMax ) + { + Vec_PtrFree( vCoNodes ); + Vec_WecFree( vSupps ); + return NULL; + } } // collect CO IDs in this order vNodeCoIds = Vec_IntAlloc( Abc_NtkCoNum(pNtk) ); |