diff options
Diffstat (limited to 'src/base/abci')
35 files changed, 74 insertions, 42 deletions
diff --git a/src/base/abci/abcAuto.c b/src/base/abci/abcAuto.c index b595a536..02d5fd17 100644 --- a/src/base/abci/abcAuto.c +++ b/src/base/abci/abcAuto.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START @@ -63,7 +64,7 @@ void Abc_NtkAutoPrint( Abc_Ntk_t * pNtk, int Output, int fNaive, int fVerbose ) nInputs = Abc_NtkCiNum(pNtk); nOutputs = Abc_NtkCoNum(pNtk); // dd = pNtk->pManGlob; - dd = Abc_NtkGlobalBddMan( pNtk ); + dd = (DdManager *)Abc_NtkGlobalBddMan( pNtk ); // complement the global functions vFuncsGlob = Vec_PtrAlloc( Abc_NtkCoNum(pNtk) ); diff --git a/src/base/abci/abcBalance.c b/src/base/abci/abcBalance.c index 840fd6f5..f69c80bd 100644 --- a/src/base/abci/abcBalance.c +++ b/src/base/abci/abcBalance.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START diff --git a/src/base/abci/abcBm.c b/src/base/abci/abcBm.c index 8855fd9e..25fba5fd 100644 --- a/src/base/abci/abcBm.c +++ b/src/base/abci/abcBm.c @@ -28,6 +28,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" #include "sim.h" #include "satSolver.h" diff --git a/src/base/abci/abcCas.c b/src/base/abci/abcCas.c index 76fe5e9f..68c91343 100644 --- a/src/base/abci/abcCas.c +++ b/src/base/abci/abcCas.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START @@ -69,16 +70,16 @@ Abc_Ntk_t * Abc_NtkCascade( Abc_Ntk_t * pNtk, int nLutSize, int fCheck, int fVer if ( fVerbose ) { - DdManager * dd = Abc_NtkGlobalBddMan( pNtk ); + DdManager * dd = (DdManager *)Abc_NtkGlobalBddMan( pNtk ); printf( "Shared BDD size = %6d nodes. ", Cudd_ReadKeys(dd) - Cudd_ReadDead(dd) ); ABC_PRT( "BDD construction time", clock() - clk ); } // collect global BDDs - dd = Abc_NtkGlobalBddMan( pNtk ); + dd = (DdManager *)Abc_NtkGlobalBddMan( pNtk ); ppOutputs = ABC_ALLOC( DdNode *, Abc_NtkCoNum(pNtk) ); Abc_NtkForEachCo( pNtk, pNode, i ) - ppOutputs[i] = Abc_ObjGlobalBdd(pNode); + ppOutputs[i] = (DdNode *)Abc_ObjGlobalBdd(pNode); // call the decomposition pFileGeneric = Extra_FileNameGeneric( pNtk->pSpec ); diff --git a/src/base/abci/abcCascade.c b/src/base/abci/abcCascade.c index a2e6d234..02858d97 100644 --- a/src/base/abci/abcCascade.c +++ b/src/base/abci/abcCascade.c @@ -248,7 +248,7 @@ void Abc_NtkBddDec( Abc_Ntk_t * pNtk, int fVerbose ) int i; assert( Abc_NtkIsStrash(pNtk) ); assert( Abc_NtkCoNum(pNtk) <= BDD_FUNC_MAX ); - dd = Abc_NtkBuildGlobalBdds( pNtk, nBddSizeMax, fDropInternal, fReorder, fVerbose ); + dd = (DdManager *)Abc_NtkBuildGlobalBdds( pNtk, nBddSizeMax, fDropInternal, fReorder, fVerbose ); if ( dd == NULL ) { Abc_Print( -1, "Construction of global BDDs has failed.\n" ); @@ -264,7 +264,7 @@ void Abc_NtkBddDec( Abc_Ntk_t * pNtk, int fVerbose ) // Cudd_addConst( dd, i ); // collect global BDDs Abc_NtkForEachCo( pNtk, pNode, i ) - pFuncs[i] = Abc_ObjGlobalBdd(pNode); + pFuncs[i] = (DdNode *)Abc_ObjGlobalBdd(pNode); pReo = Extra_ReorderInit( Abc_NtkCiNum(pNtk), 1000 ); Extra_ReorderSetMinimizationType( pReo, REO_MINIMIZE_WIDTH ); diff --git a/src/base/abci/abcCollapse.c b/src/base/abci/abcCollapse.c index 1b7709c5..07996b9a 100644 --- a/src/base/abci/abcCollapse.c +++ b/src/base/abci/abcCollapse.c @@ -19,7 +19,7 @@ ***********************************************************************/ #include "abc.h" -//#include "reo.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START @@ -57,7 +57,7 @@ Abc_Ntk_t * Abc_NtkCollapse( Abc_Ntk_t * pNtk, int fBddSizeMax, int fDualRail, i return NULL; if ( fVerbose ) { - DdManager * dd = Abc_NtkGlobalBddMan( pNtk ); + DdManager * dd = (DdManager *)Abc_NtkGlobalBddMan( pNtk ); printf( "Shared BDD size = %6d nodes. ", Cudd_ReadKeys(dd) - Cudd_ReadDead(dd) ); ABC_PRT( "BDD construction time", clock() - clk ); } @@ -114,7 +114,7 @@ Abc_Ntk_t * Abc_NtkFromGlobalBdds( Abc_Ntk_t * pNtk ) Abc_Ntk_t * pNtkNew; Abc_Obj_t * pNode, * pDriver, * pNodeNew; // DdManager * dd = pNtk->pManGlob; - DdManager * dd = Abc_NtkGlobalBddMan( pNtk ); + DdManager * dd = (DdManager *)Abc_NtkGlobalBddMan( pNtk ); int i; // pReo = Extra_ReorderInit( Abc_NtkCiNum(pNtk), 1000 ); @@ -136,7 +136,7 @@ Abc_Ntk_t * Abc_NtkFromGlobalBdds( Abc_Ntk_t * pNtk ) continue; } // pNodeNew = Abc_NodeFromGlobalBdds( pNtkNew, dd, Vec_PtrEntry(pNtk->vFuncsGlob, i) ); - pNodeNew = Abc_NodeFromGlobalBdds( pNtkNew, dd, Abc_ObjGlobalBdd(pNode) ); + pNodeNew = Abc_NodeFromGlobalBdds( pNtkNew, dd, (DdNode *)Abc_ObjGlobalBdd(pNode) ); Abc_ObjAddFanin( pNode->pCopy, pNodeNew ); // Extra_ShuffleTest( pReo, dd, Abc_ObjGlobalBdd(pNode) ); diff --git a/src/base/abci/abcCut.c b/src/base/abci/abcCut.c index 10cacff1..a08ce490 100644 --- a/src/base/abci/abcCut.c +++ b/src/base/abci/abcCut.c @@ -20,6 +20,7 @@ #include "abc.h" #include "cut.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START diff --git a/src/base/abci/abcDar.c b/src/base/abci/abcDar.c index 225bf1be..62f9b325 100644 --- a/src/base/abci/abcDar.c +++ b/src/base/abci/abcDar.c @@ -1146,10 +1146,10 @@ Abc_Ntk_t * Abc_NtkConstructFromCnf( Abc_Ntk_t * pNtk, Cnf_Man_t * p, Vec_Ptr_t { uTruth = 0xFFFF & *Cnf_CutTruth(pCut); Cnf_SopConvertToVector( p->pSops[uTruth], p->pSopSizes[uTruth], vCover ); - pNodeNew->pData = Abc_SopCreateFromIsop( (Extra_MmFlex_t *)pNtkNew->pManFunc, pCut->nFanins, vCover ); + pNodeNew->pData = Abc_SopCreateFromIsop( (Mem_Flex_t *)pNtkNew->pManFunc, pCut->nFanins, vCover ); } else - pNodeNew->pData = Abc_SopCreateFromIsop( (Extra_MmFlex_t *)pNtkNew->pManFunc, pCut->nFanins, pCut->vIsop[1] ); + pNodeNew->pData = Abc_SopCreateFromIsop( (Mem_Flex_t *)pNtkNew->pManFunc, pCut->nFanins, pCut->vIsop[1] ); // save the node pObj->pData = pNodeNew; } diff --git a/src/base/abci/abcDsd.c b/src/base/abci/abcDsd.c index 0bfb4ec0..558d9349 100644 --- a/src/base/abci/abcDsd.c +++ b/src/base/abci/abcDsd.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" #include "dsd.h" ABC_NAMESPACE_IMPL_START @@ -61,7 +62,7 @@ Abc_Ntk_t * Abc_NtkDsdGlobal( Abc_Ntk_t * pNtk, int fVerbose, int fPrint, int fS DdManager * dd; Abc_Ntk_t * pNtkNew; assert( Abc_NtkIsStrash(pNtk) ); - dd = Abc_NtkBuildGlobalBdds( pNtk, 10000000, 1, 1, fVerbose ); + dd = (DdManager *)Abc_NtkBuildGlobalBdds( pNtk, 10000000, 1, 1, fVerbose ); if ( dd == NULL ) return NULL; if ( fVerbose ) @@ -110,7 +111,7 @@ Abc_Ntk_t * Abc_NtkDsdInternal( Abc_Ntk_t * pNtk, int fVerbose, int fPrint, int Vec_PtrPush( vFuncsGlob, Cudd_NotCond(Abc_ObjGlobalBdd(pObj), Abc_ObjFaninC0(pObj)) ); // perform the decomposition - dd = Abc_NtkGlobalBddMan(pNtk); + dd = (DdManager *)Abc_NtkGlobalBddMan(pNtk); pManDsd = Dsd_ManagerStart( dd, Abc_NtkCiNum(pNtk), fVerbose ); Dsd_Decompose( pManDsd, (DdNode **)vFuncsGlob->pArray, Abc_NtkCoNum(pNtk) ); Vec_PtrFree( vFuncsGlob ); diff --git a/src/base/abci/abcFxu.c b/src/base/abci/abcFxu.c index bd030609..dbbcb1b1 100644 --- a/src/base/abci/abcFxu.c +++ b/src/base/abci/abcFxu.c @@ -144,7 +144,7 @@ void Abc_NtkFxuCollectInfo( Abc_Ntk_t * pNtk, Fxu_Data_t * p ) Abc_Obj_t * pNode; int i; // add information to the manager - p->pManSop = (Extra_MmFlex_t *)pNtk->pManFunc; + p->pManSop = (Mem_Flex_t *)pNtk->pManFunc; p->vSops = Vec_PtrAlloc(0); p->vFanins = Vec_PtrAlloc(0); p->vSopsNew = Vec_PtrAlloc(0); diff --git a/src/base/abci/abcGen.c b/src/base/abci/abcGen.c index dc376826..a886949f 100644 --- a/src/base/abci/abcGen.c +++ b/src/base/abci/abcGen.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START diff --git a/src/base/abci/abcIf.c b/src/base/abci/abcIf.c index 82e968bd..ce1366de 100644 --- a/src/base/abci/abcIf.c +++ b/src/base/abci/abcIf.c @@ -417,13 +417,13 @@ Abc_Obj_t * Abc_NodeFromIf_rec( Abc_Ntk_t * pNtkNew, If_Man_t * pIfMan, If_Obj_t if ( Vec_IntSize(vCover) == 0 || (Vec_IntSize(vCover) == 1 && Vec_IntEntry(vCover,0) == 0) ) { assert( RetValue == 0 ); - pNodeNew->pData = Abc_SopCreateAnd( (Extra_MmFlex_t *)pNtkNew->pManFunc, If_CutLeaveNum(pCutBest), NULL ); + pNodeNew->pData = Abc_SopCreateAnd( (Mem_Flex_t *)pNtkNew->pManFunc, If_CutLeaveNum(pCutBest), NULL ); pNodeNew = (Vec_IntSize(vCover) == 0) ? Abc_NtkCreateNodeConst0(pNtkNew) : Abc_NtkCreateNodeConst1(pNtkNew); } else { // derive the AIG for that tree - pNodeNew->pData = Abc_SopCreateFromIsop( (Extra_MmFlex_t *)pNtkNew->pManFunc, If_CutLeaveNum(pCutBest), vCover ); + pNodeNew->pData = Abc_SopCreateFromIsop( (Mem_Flex_t *)pNtkNew->pManFunc, If_CutLeaveNum(pCutBest), vCover ); if ( RetValue ) Abc_SopComplement( (char *)pNodeNew->pData ); } diff --git a/src/base/abci/abcLut.c b/src/base/abci/abcLut.c index a33cc7db..98991e25 100644 --- a/src/base/abci/abcLut.c +++ b/src/base/abci/abcLut.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" #include "cut.h" ABC_NAMESPACE_IMPL_START @@ -582,7 +583,7 @@ Abc_Obj_t * Abc_NodeSuperChoiceLut( Abc_ManScl_t * p, Abc_Obj_t * pObj ) Vec_PtrForEachEntry( Abc_Obj_t *, p->vLeaves, pFanin, i ) Abc_ObjAddFanin( pObjNew, pFanin ); // create the function - pObjNew->pData = Abc_SopCreateFromTruth( (Extra_MmFlex_t *)pObj->pNtk->pManFunc, Vec_PtrSize(p->vLeaves), p->uTruth ); // need ISOP + pObjNew->pData = Abc_SopCreateFromTruth( (Mem_Flex_t *)pObj->pNtk->pManFunc, Vec_PtrSize(p->vLeaves), p->uTruth ); // need ISOP pObjNew->Level = Abc_NodeGetLevel( pObjNew ); return pObjNew; } @@ -763,7 +764,7 @@ int Abc_NodeDecomposeStep( Abc_ManScl_t * p ) Abc_ObjAddFanin( pObjNew, pFanin ); } // create the function - pObjNew->pData = Abc_SopCreateFromTruth( (Extra_MmFlex_t *)pNtk->pManFunc, p->nLutSize, pTruth ); // need ISOP + pObjNew->pData = Abc_SopCreateFromTruth( (Mem_Flex_t *)pNtk->pManFunc, p->nLutSize, pTruth ); // need ISOP pObjNew->Level = Abc_NodeGetLevel( pObjNew ); pNodesNew[v] = pObjNew; } diff --git a/src/base/abci/abcLutmin.c b/src/base/abci/abcLutmin.c index 71dea2e1..c539b53e 100644 --- a/src/base/abci/abcLutmin.c +++ b/src/base/abci/abcLutmin.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START diff --git a/src/base/abci/abcMap.c b/src/base/abci/abcMap.c index 543df7b0..33707b15 100644 --- a/src/base/abci/abcMap.c +++ b/src/base/abci/abcMap.c @@ -657,7 +657,7 @@ Abc_Obj_t * Abc_NodeFromMapSuperChoice_rec( Abc_Ntk_t * pNtkNew, Map_Super_t * p pNodeFanin = Abc_NodeFromMapSuperChoice_rec( pNtkNew, ppFanins[i], pNodePis, nNodePis ); Abc_ObjAddFanin( pNodeNew, pNodeFanin ); } - pNodeNew->pData = Abc_SopRegister( (Extra_MmFlex_t *)pNtkNew->pManFunc, Mio_GateReadSop(pRoot) ); + pNodeNew->pData = Abc_SopRegister( (Mem_Flex_t *)pNtkNew->pManFunc, Mio_GateReadSop(pRoot) ); return pNodeNew; } diff --git a/src/base/abci/abcMiter.c b/src/base/abci/abcMiter.c index 0c75919c..5397f167 100644 --- a/src/base/abci/abcMiter.c +++ b/src/base/abci/abcMiter.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START diff --git a/src/base/abci/abcMulti.c b/src/base/abci/abcMulti.c index 4e962cff..299e22d5 100644 --- a/src/base/abci/abcMulti.c +++ b/src/base/abci/abcMulti.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START diff --git a/src/base/abci/abcMv.c b/src/base/abci/abcMv.c index 4bfb1a02..98d27a19 100644 --- a/src/base/abci/abcMv.c +++ b/src/base/abci/abcMv.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START diff --git a/src/base/abci/abcNpnSave.c b/src/base/abci/abcNpnSave.c index 381409de..568a3e28 100644 --- a/src/base/abci/abcNpnSave.c +++ b/src/base/abci/abcNpnSave.c @@ -20,6 +20,7 @@ #include "abc.h" #include "aig.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START diff --git a/src/base/abci/abcNtbdd.c b/src/base/abci/abcNtbdd.c index d27eab82..33226a19 100644 --- a/src/base/abci/abcNtbdd.c +++ b/src/base/abci/abcNtbdd.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START @@ -52,7 +53,7 @@ static DdNode * Abc_NodeGlobalBdds_rec( DdManager * dd, Abc_Obj_t * pNode, in SeeAlso [] ***********************************************************************/ -Abc_Ntk_t * Abc_NtkDeriveFromBdd( DdManager * dd, DdNode * bFunc, char * pNamePo, Vec_Ptr_t * vNamesPi ) +Abc_Ntk_t * Abc_NtkDeriveFromBdd( DdManager * dd, void * bFunc, char * pNamePo, Vec_Ptr_t * vNamesPi ) { Abc_Ntk_t * pNtk; Vec_Ptr_t * vNamesPiFake = NULL; @@ -72,7 +73,7 @@ Abc_Ntk_t * Abc_NtkDeriveFromBdd( DdManager * dd, DdNode * bFunc, char * pNamePo // make sure BDD depends on the variables whose index // does not exceed the size of the array with PI names - bSupp = Cudd_Support( dd, bFunc ); Cudd_Ref( bSupp ); + bSupp = Cudd_Support( dd, (DdNode *)bFunc ); Cudd_Ref( bSupp ); for ( bTemp = bSupp; bTemp != Cudd_ReadOne(dd); bTemp = cuddT(bTemp) ) if ( (int)Cudd_NodeReadIndex(bTemp) >= Vec_PtrSize(vNamesPi) ) break; @@ -90,7 +91,7 @@ Abc_Ntk_t * Abc_NtkDeriveFromBdd( DdManager * dd, DdNode * bFunc, char * pNamePo Abc_ObjAssignName( Abc_NtkCreatePi(pNtk), pName, NULL ); // create the node pNode = Abc_NtkCreateNode( pNtk ); - pNode->pData = (DdNode *)Cudd_bddTransfer( dd, (DdManager *)pNtk->pManFunc, bFunc ); Cudd_Ref((DdNode *)pNode->pData); + pNode->pData = (DdNode *)Cudd_bddTransfer( dd, (DdManager *)pNtk->pManFunc, (DdNode *)bFunc ); Cudd_Ref((DdNode *)pNode->pData); Abc_NtkForEachPi( pNtk, pNodePi, i ) Abc_ObjAddFanin( pNode, pNodePi ); // create the only PO @@ -246,7 +247,7 @@ Abc_Obj_t * Abc_NodeBddToMuxes_rec( DdManager * dd, DdNode * bFunc, Abc_Ntk_t * SeeAlso [] ***********************************************************************/ -DdManager * Abc_NtkBuildGlobalBdds( Abc_Ntk_t * pNtk, int nBddSizeMax, int fDropInternal, int fReorder, int fVerbose ) +void * Abc_NtkBuildGlobalBdds( Abc_Ntk_t * pNtk, int nBddSizeMax, int fDropInternal, int fReorder, int fVerbose ) { ProgressBar * pProgress; Abc_Obj_t * pObj, * pFanin; @@ -450,7 +451,7 @@ DdNode * Abc_NodeGlobalBdds_rec( DdManager * dd, Abc_Obj_t * pNode, int nBddSize Extra_ProgressBarUpdate( pProgress, *pCounter, NULL ); } // prepare the return value - bFunc = Abc_ObjGlobalBdd(pNode); + bFunc = (DdNode *)Abc_ObjGlobalBdd(pNode); // dereference BDD at the node if ( --pNode->vFanouts.nSize == 0 && fDropInternal ) { @@ -471,9 +472,9 @@ DdNode * Abc_NodeGlobalBdds_rec( DdManager * dd, Abc_Obj_t * pNode, int nBddSize SeeAlso [] ***********************************************************************/ -DdManager * Abc_NtkFreeGlobalBdds( Abc_Ntk_t * pNtk, int fFreeMan ) +void * Abc_NtkFreeGlobalBdds( Abc_Ntk_t * pNtk, int fFreeMan ) { - return (DdManager *)Abc_NtkAttrFree( pNtk, VEC_ATTR_GLOBAL_BDD, fFreeMan ); + return Abc_NtkAttrFree( pNtk, VEC_ATTR_GLOBAL_BDD, fFreeMan ); } /**Function************************************************************* diff --git a/src/base/abci/abcOdc.c b/src/base/abci/abcOdc.c index 5db556b8..50694832 100644 --- a/src/base/abci/abcOdc.c +++ b/src/base/abci/abcOdc.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START diff --git a/src/base/abci/abcProve.c b/src/base/abci/abcProve.c index 35c1ee29..154c5e1c 100644 --- a/src/base/abci/abcProve.c +++ b/src/base/abci/abcProve.c @@ -21,6 +21,7 @@ #include "abc.h" #include "fraig.h" #include "math.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START diff --git a/src/base/abci/abcQuant.c b/src/base/abci/abcQuant.c index 957d99b5..262797d2 100644 --- a/src/base/abci/abcQuant.c +++ b/src/base/abci/abcQuant.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START diff --git a/src/base/abci/abcReach.c b/src/base/abci/abcReach.c index 6eb7fb06..f7bc5186 100644 --- a/src/base/abci/abcReach.c +++ b/src/base/abci/abcReach.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START @@ -103,7 +104,7 @@ DdNode ** Abc_NtkCreatePartitions( DdManager * dd, Abc_Ntk_t * pNtk, int fReorde Abc_NtkForEachLatch( pNtk, pNode, i ) { bVar = Cudd_bddIthVar( dd, Abc_NtkCiNum(pNtk) + i ); - pbParts[i] = Cudd_bddXnor( dd, bVar, Abc_ObjGlobalBdd(Abc_ObjFanin0(pNode)) ); Cudd_Ref( pbParts[i] ); + pbParts[i] = Cudd_bddXnor( dd, bVar, (DdNode *)Abc_ObjGlobalBdd(Abc_ObjFanin0(pNode)) ); Cudd_Ref( pbParts[i] ); } // free the global BDDs Abc_NtkFreeGlobalBdds( pNtk, 0 ); @@ -264,7 +265,7 @@ void Abc_NtkVerifyUsingBdds( Abc_Ntk_t * pNtk, int nBddMax, int nIterMax, int fP assert( Abc_ObjFanoutNum(Abc_NtkPo(pNtk,0)) == 0 ); // PO should go first // compute the global BDDs of the latches - dd = Abc_NtkBuildGlobalBdds( pNtk, nBddMax, 1, fReorder, fVerbose ); + dd = (DdManager *)Abc_NtkBuildGlobalBdds( pNtk, nBddMax, 1, fReorder, fVerbose ); if ( dd == NULL ) { printf( "The number of intermediate BDD nodes exceeded the limit (%d).\n", nBddMax ); @@ -274,7 +275,7 @@ void Abc_NtkVerifyUsingBdds( Abc_Ntk_t * pNtk, int nBddMax, int nIterMax, int fP printf( "Shared BDD size is %6d nodes.\n", Cudd_ReadKeys(dd) - Cudd_ReadDead(dd) ); // save the output BDD - bOutput = Abc_ObjGlobalBdd(Abc_NtkPo(pNtk,0)); Cudd_Ref( bOutput ); + bOutput = (DdNode *)Abc_ObjGlobalBdd(Abc_NtkPo(pNtk,0)); Cudd_Ref( bOutput ); // create partitions pbParts = Abc_NtkCreatePartitions( dd, pNtk, fReorder, fVerbose ); diff --git a/src/base/abci/abcReconv.c b/src/base/abci/abcReconv.c index 434577ec..e0cec5cd 100644 --- a/src/base/abci/abcReconv.c +++ b/src/base/abci/abcReconv.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START diff --git a/src/base/abci/abcRefactor.c b/src/base/abci/abcRefactor.c index 4e922ebd..3ba171b7 100644 --- a/src/base/abci/abcRefactor.c +++ b/src/base/abci/abcRefactor.c @@ -20,6 +20,7 @@ #include "abc.h" #include "dec.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START @@ -187,7 +188,10 @@ pManRef->timeTotal = clock() - clkStart; ***********************************************************************/ Dec_Graph_t * Abc_NodeRefactor( Abc_ManRef_t * p, Abc_Obj_t * pNode, Vec_Ptr_t * vFanins, int fUpdateLevel, int fUseZeros, int fUseDcs, int fVerbose ) { - extern int Dec_GraphToNetworkCount( Abc_Obj_t * pRoot, Dec_Graph_t * pGraph, int NodeMax, int LevelMax ); + extern DdNode * Abc_NodeConeBdd( DdManager * dd, DdNode ** pbVars, Abc_Obj_t * pNode, Vec_Ptr_t * vFanins, Vec_Ptr_t * vVisited ); + extern DdNode * Abc_NodeConeDcs( DdManager * dd, DdNode ** pbVarsX, DdNode ** pbVarsY, Vec_Ptr_t * vLeaves, Vec_Ptr_t * vRoots, Vec_Ptr_t * vVisited ); + extern char * Abc_ConvertBddToSop( Mem_Flex_t * pMan, DdManager * dd, DdNode * bFuncOn, DdNode * bFuncOnDc, int nFanins, int fAllPrimes, Vec_Str_t * vCube, int fMode ); + extern int Dec_GraphToNetworkCount( Abc_Obj_t * pRoot, Dec_Graph_t * pGraph, int NodeMax, int LevelMax ); int fVeryVerbose = 0; Abc_Obj_t * pFanin; Dec_Graph_t * pFForm; diff --git a/src/base/abci/abcRestruct.c b/src/base/abci/abcRestruct.c index 4a63db67..719d722e 100644 --- a/src/base/abci/abcRestruct.c +++ b/src/base/abci/abcRestruct.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" #include "dec.h" #include "dsd.h" #include "cut.h" @@ -317,6 +318,7 @@ Dec_Graph_t * Abc_NodeRestructure( Abc_ManRst_t * p, Abc_Obj_t * pNode, Cut_Cut_ ***********************************************************************/ Dec_Graph_t * Abc_NodeRestructureCut( Abc_ManRst_t * p, Abc_Obj_t * pRoot, Cut_Cut_t * pCut ) { + extern DdNode * Abc_NodeConeBdd( DdManager * dd, DdNode ** pbVars, Abc_Obj_t * pNode, Vec_Ptr_t * vFanins, Vec_Ptr_t * vVisited ); Dec_Graph_t * pGraph; Dsd_Node_t * pNodeDsd; Abc_Obj_t * pLeaf; diff --git a/src/base/abci/abcResub.c b/src/base/abci/abcResub.c index a0a1af91..aab4d1ce 100644 --- a/src/base/abci/abcResub.c +++ b/src/base/abci/abcResub.c @@ -20,6 +20,7 @@ #include "abc.h" #include "dec.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START diff --git a/src/base/abci/abcRewrite.c b/src/base/abci/abcRewrite.c index f36600fa..54e19f50 100644 --- a/src/base/abci/abcRewrite.c +++ b/src/base/abci/abcRewrite.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" #include "rwr.h" #include "dec.h" diff --git a/src/base/abci/abcRr.c b/src/base/abci/abcRr.c index 12e94478..3e60ebf9 100644 --- a/src/base/abci/abcRr.c +++ b/src/base/abci/abcRr.c @@ -20,6 +20,7 @@ #include "abc.h" #include "fraig.h" +#include "extra.h" #include "sim.h" ABC_NAMESPACE_IMPL_START diff --git a/src/base/abci/abcSat.c b/src/base/abci/abcSat.c index 30c77e59..b0c5024a 100644 --- a/src/base/abci/abcSat.c +++ b/src/base/abci/abcSat.c @@ -834,7 +834,7 @@ int Abc_NodeAddClausesTop( sat_solver * pSat, Abc_Obj_t * pNode, Vec_Int_t * vVa sat_solver * Abc_NtkMiterSatCreateLogic( Abc_Ntk_t * pNtk, int fAllPrimes ) { sat_solver * pSat; - Extra_MmFlex_t * pMmFlex; + Mem_Flex_t * pMmFlex; Abc_Obj_t * pNode; Vec_Str_t * vCube; Vec_Int_t * vVars; @@ -850,7 +850,7 @@ sat_solver * Abc_NtkMiterSatCreateLogic( Abc_Ntk_t * pNtk, int fAllPrimes ) // start the data structures pSat = sat_solver_new(); sat_solver_store_alloc( pSat ); - pMmFlex = Extra_MmFlexStart(); + pMmFlex = Mem_FlexStart(); vCube = Vec_StrAlloc( 100 ); vVars = Vec_IntAlloc( 100 ); @@ -883,7 +883,7 @@ finish: // delete Vec_StrFree( vCube ); Vec_IntFree( vVars ); - Extra_MmFlexStop( pMmFlex ); + Mem_FlexStop( pMmFlex, 0 ); return pSat; } diff --git a/src/base/abci/abcSense.c b/src/base/abci/abcSense.c index cfecfaf3..8a477c4e 100644 --- a/src/base/abci/abcSense.c +++ b/src/base/abci/abcSense.c @@ -20,6 +20,7 @@ #include "abc.h" #include "fraig.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START diff --git a/src/base/abci/abcSymm.c b/src/base/abci/abcSymm.c index 4e0a7373..41abc4db 100644 --- a/src/base/abci/abcSymm.c +++ b/src/base/abci/abcSymm.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" #include "sim.h" ABC_NAMESPACE_IMPL_START @@ -93,7 +94,7 @@ void Abc_NtkSymmetriesUsingBdds( Abc_Ntk_t * pNtk, int fNaive, int fReorder, int // compute the global functions clk = clock(); - dd = Abc_NtkBuildGlobalBdds( pNtk, 10000000, 1, fReorder, fVerbose ); + dd = (DdManager *)Abc_NtkBuildGlobalBdds( pNtk, 10000000, 1, fReorder, fVerbose ); printf( "Shared BDD size = %d nodes.\n", Abc_NtkSizeOfGlobalBdds(pNtk) ); Cudd_AutodynDisable( dd ); if ( !fGarbCollect ) @@ -138,7 +139,7 @@ void Ntk_NetworkSymmsBdd( DdManager * dd, Abc_Ntk_t * pNtk, int fNaive, int fVer Abc_NtkForEachCo( pNtk, pNode, i ) { // bFunc = pNtk->vFuncsGlob->pArray[i]; - bFunc = Abc_ObjGlobalBdd( pNode ); + bFunc = (DdNode *)Abc_ObjGlobalBdd( pNode ); nSupps += Cudd_SupportSize( dd, bFunc ); if ( Cudd_IsConstant(bFunc) ) continue; diff --git a/src/base/abci/abcUnate.c b/src/base/abci/abcUnate.c index b77eec63..829a83bd 100644 --- a/src/base/abci/abcUnate.c +++ b/src/base/abci/abcUnate.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START @@ -76,14 +77,14 @@ void Abc_NtkPrintUnateBdd( Abc_Ntk_t * pNtk, int fUseNaive, int fVerbose ) int clkBdd, clkUnate; // compute the global BDDs - dd = Abc_NtkBuildGlobalBdds(pNtk, 10000000, 1, 1, fVerbose); + dd = (DdManager *)Abc_NtkBuildGlobalBdds(pNtk, 10000000, 1, 1, fVerbose); if ( dd == NULL ) return; clkBdd = clock() - clk; // get information about the network // dd = pNtk->pManGlob; -// dd = Abc_NtkGlobalBddMan( pNtk ); +// dd = (DdManager *)Abc_NtkGlobalBddMan( pNtk ); // pbGlobal = (DdNode **)Vec_PtrArray( pNtk->vFuncsGlob ); // print the size of the BDDs @@ -95,7 +96,7 @@ clkBdd = clock() - clk; Abc_NtkForEachCo( pNtk, pNode, i ) { // p = Extra_UnateComputeSlow( dd, pbGlobal[i] ); - p = Extra_UnateComputeSlow( dd, Abc_ObjGlobalBdd(pNode) ); + p = Extra_UnateComputeSlow( dd, (DdNode *)Abc_ObjGlobalBdd(pNode) ); if ( fVerbose ) Extra_UnateInfoPrint( p ); TotalSupps += p->nVars; @@ -111,7 +112,7 @@ clkBdd = clock() - clk; Abc_NtkForEachCo( pNtk, pNode, i ) { // p = Extra_UnateComputeFast( dd, pbGlobal[i] ); - p = Extra_UnateComputeFast( dd, Abc_ObjGlobalBdd(pNode) ); + p = Extra_UnateComputeFast( dd, (DdNode *)Abc_ObjGlobalBdd(pNode) ); if ( fVerbose ) Extra_UnateInfoPrint( p ); TotalSupps += p->nVars; diff --git a/src/base/abci/abcUnreach.c b/src/base/abci/abcUnreach.c index ae7fbd02..f62ec7fc 100644 --- a/src/base/abci/abcUnreach.c +++ b/src/base/abci/abcUnreach.c @@ -19,6 +19,7 @@ ***********************************************************************/ #include "abc.h" +#include "extra.h" ABC_NAMESPACE_IMPL_START @@ -61,7 +62,7 @@ int Abc_NtkExtractSequentialDcs( Abc_Ntk_t * pNtk, int fVerbose ) } // compute the global BDDs of the latches - dd = Abc_NtkBuildGlobalBdds( pNtk, 10000000, 1, 1, fVerbose ); + dd = (DdManager *)Abc_NtkBuildGlobalBdds( pNtk, 10000000, 1, 1, fVerbose ); if ( dd == NULL ) return 0; if ( fVerbose ) @@ -141,7 +142,7 @@ DdNode * Abc_NtkTransitionRelation( DdManager * dd, Abc_Ntk_t * pNtk, int fVerbo { bVar = Cudd_bddIthVar( dd, Abc_NtkCiNum(pNtk) + i ); // bProd = Cudd_bddXnor( dd, bVar, pNtk->vFuncsGlob->pArray[i] ); Cudd_Ref( bProd ); - bProd = Cudd_bddXnor( dd, bVar, Abc_ObjGlobalBdd(Abc_ObjFanin0(pNode)) ); Cudd_Ref( bProd ); + bProd = Cudd_bddXnor( dd, bVar, (DdNode *)Abc_ObjGlobalBdd(Abc_ObjFanin0(pNode)) ); Cudd_Ref( bProd ); bRel = Cudd_bddAnd( dd, bTemp = bRel, bProd ); Cudd_Ref( bRel ); Cudd_RecursiveDeref( dd, bTemp ); Cudd_RecursiveDeref( dd, bProd ); |