Commit 15372449 by Alan Mishchenko

Added DSD-based collapsing &dsd.

parent ec5bc582
...@@ -111,7 +111,7 @@ int Gia_ManRebuildNode( Dsd_Manager_t * pManDsd, Dsd_Node_t * pNodeDsd, Gia_Man_ ...@@ -111,7 +111,7 @@ int Gia_ManRebuildNode( Dsd_Manager_t * pManDsd, Dsd_Node_t * pNodeDsd, Gia_Man_
DdNode * bLocal, * bTemp; DdNode * bLocal, * bTemp;
Dsd_Node_t * pFaninDsd; Dsd_Node_t * pFaninDsd;
Dsd_Type_t Type; Dsd_Type_t Type;
int i, iLit, nDecs; int i, nDecs, iLit = -1;
// add the fanins // add the fanins
Type = Dsd_NodeReadType( pNodeDsd ); Type = Dsd_NodeReadType( pNodeDsd );
...@@ -328,10 +328,11 @@ Gia_Man_t * Gia_ManCollapseTest( Gia_Man_t * p, int fVerbose ) ...@@ -328,10 +328,11 @@ Gia_Man_t * Gia_ManCollapseTest( Gia_Man_t * p, int fVerbose )
ddNew = Cudd_Init( Gia_ManCiNum(p), 0, CUDD_UNIQUE_SLOTS, CUDD_CACHE_SLOTS, 0 ); ddNew = Cudd_Init( Gia_ManCiNum(p), 0, CUDD_UNIQUE_SLOTS, CUDD_CACHE_SLOTS, 0 );
Cudd_zddVarsFromBddVars( ddNew, 2 ); Cudd_zddVarsFromBddVars( ddNew, 2 );
// Cudd_ReduceHeap( dd, CUDD_REORDER_SYMM_SIFT, 100 ); // Cudd_ReduceHeap( dd, CUDD_REORDER_SYMM_SIFT, 100 );
if ( fVerbose )
printf( "Ins = %d. Outs = %d. Shared BDD nodes = %d. Peak live nodes = %d. Peak nodes = %d.\n", printf( "Ins = %d. Outs = %d. Shared BDD nodes = %d. Peak live nodes = %d. Peak nodes = %d.\n",
Gia_ManCiNum(p), Gia_ManCoNum(p), Gia_ManCiNum(p), Gia_ManCoNum(p),
Cudd_SharingSize( (DdNode **)Vec_PtrArray(vFuncs), Vec_PtrSize(vFuncs) ), Cudd_SharingSize( (DdNode **)Vec_PtrArray(vFuncs), Vec_PtrSize(vFuncs) ),
Cudd_ReadPeakLiveNodeCount(dd), Cudd_ReadNodeCount(dd) ); Cudd_ReadPeakLiveNodeCount(dd), (int)Cudd_ReadNodeCount(dd) );
// perform decomposition // perform decomposition
pManDsd = Dsd_ManagerStart( dd, Gia_ManCiNum(p), 0 ); pManDsd = Dsd_ManagerStart( dd, Gia_ManCiNum(p), 0 );
Dsd_Decompose( pManDsd, (DdNode **)Vec_PtrArray(vFuncs), Vec_PtrSize(vFuncs) ); Dsd_Decompose( pManDsd, (DdNode **)Vec_PtrArray(vFuncs), Vec_PtrSize(vFuncs) );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment