66 for ( i = 0; i < dd->
size; i++ )
72 for ( i = 0; i < nFuncs; i++ )
74 FuncsRes[i] = Funcs[i];
Cudd_Ref( FuncsRes[i] );
82 for ( i = 0; i < dd->
size; i++ )
101 for ( i = 0; i < nFuncs; i++ )
107 printf(
"An important message from the REO reordering engine:\n" );
108 printf(
"The BDD given to the engine for reordering contains complemented edges.\n" );
109 printf(
"Currently, such BDDs cannot be reordered for the minimum width.\n" );
110 printf(
"Therefore, minimization for the number of BDD nodes is performed.\n" );
125 printf(
"INITIAL:\n" );
138 for ( i = 0; i < p->
nIters; i++ )
144 printf(
"ITER #%d:\n", i+1 );
186 for ( i = 0; i < nFuncs; i++ )
194 for ( i = 0; i < nFuncs; i++ )
209 for ( i = 0; i < p->
nSupp; i++ )
222 for ( i = 0; i < p->
nSupp; i++ )
229 for ( i = 0; i < nFuncs; i++ )
238 if ( FuncRemapped != Funcs[i] )
241 printf(
"REO: Internal verification has failed!\n" );
247 printf(
"REO: Internal verification is okay!\n" );
254 for ( i = 0; i <= p->
nSupp; i++ )
375 if ( pUnitR->
n == 0 )
397 for ( pUnit = pPlane->
pHead; pUnit; pUnit = pUnit->
Next )
423 for ( i = 0; i < p->
nSupp; i++ )
void Cudd_RecursiveDeref(DdManager *table, DdNode *n)
void reoProfileAplStart(reo_man *p)
static int reoCheckZeroRefs(reo_plane *pPlane)
void reoProfileWidthStart(reo_man *p)
void reoProfileWidthPrint(reo_man *p)
reo_unit * reoTransferNodesToUnits_rec(reo_man *p, DdNode *F)
DECLARATIONS ///.
#define ABC_ALLOC(type, num)
DdNode * reoTransferUnitsToNodes_rec(reo_man *p, reo_unit *pUnit)
void reoUnitsRecycleUnitList(reo_man *p, reo_plane *pPlane)
DdNode * Cudd_addPermute(DdManager *manager, DdNode *node, int *permut)
void reoProfileNodesStart(reo_man *p)
DECLARATIONS ///.
DdNode * Cudd_bddPermute(DdManager *manager, DdNode *node, int *permut)
static ABC_NAMESPACE_IMPL_START int reoRecursiveDeref(reo_unit *pUnit)
DECLARATIONS ///.
#define ABC_NAMESPACE_IMPL_END
void reoProfileAplPrint(reo_man *p)
void reoReorderSift(reo_man *p)
DECLARATIONS ///.
#define ABC_NAMESPACE_IMPL_START
#define Unit_IsConstant(u)
void reoReorderArray(reo_man *p, DdManager *dd, DdNode *Funcs[], DdNode *FuncsRes[], int nFuncs, int *pOrder)
FUNCTION DEFINITIONS ///.
#define ABC_CALLOC(type, num)
void reoProfileNodesPrint(reo_man *p)
void reoResizeStructures(reo_man *p, int nDdVarsMax, int nNodesMax, int nFuncs)
int Cudd_SharingSize(DdNode **nodeArray, int n)
static int reoCheckLevels(reo_man *p)