diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2012-02-24 13:37:31 -0800 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2012-02-24 13:37:31 -0800 |
commit | 3552d39b7193be6e1c740b7a6b2c80225d9726be (patch) | |
tree | cc9f52600fb73904f44e8423ca141a8c80ecee71 | |
parent | d80f43a1851035b48b80dbeb2a898a3eeaea2df1 (diff) | |
download | abc-3552d39b7193be6e1c740b7a6b2c80225d9726be.tar.gz abc-3552d39b7193be6e1c740b7a6b2c80225d9726be.tar.bz2 abc-3552d39b7193be6e1c740b7a6b2c80225d9726be.zip |
Making BMC engines (bmc2, bmc3) to perform OR-decomposition by default.
-rw-r--r-- | src/base/abci/abcDar.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/base/abci/abcDar.c b/src/base/abci/abcDar.c index 8efa669f..8797b167 100644 --- a/src/base/abci/abcDar.c +++ b/src/base/abci/abcDar.c @@ -133,10 +133,17 @@ Aig_Man_t * Abc_NtkToDarBmc( Abc_Ntk_t * pNtk, Vec_Int_t ** pvMap ) // collect the drivers vSuper = Vec_PtrAlloc( 100 ); vDrivers = Vec_PtrAlloc( 100 ); - if ( pvMap ) + if ( pvMap ) *pvMap = Vec_IntAlloc( 100 ); Abc_NtkForEachPo( pNtk, pObj, i ) { + if ( pNtk->nConstrs && i >= pNtk->nConstrs ) + { + Vec_PtrPush( vDrivers, Abc_ObjNot(Abc_ObjChild0(pObj)) ); + if ( pvMap ) + Vec_IntPush( *pvMap, i ); + continue; + } Abc_CollectTopOr( Abc_ObjChild0(pObj), vSuper ); Vec_PtrForEachEntry( Abc_Obj_t *, vSuper, pTemp, k ) { |