summaryrefslogtreecommitdiffstats
path: root/src/bdd/reo
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2011-03-08 20:07:52 -0800
committerAlan Mishchenko <alanmi@berkeley.edu>2011-03-08 20:07:52 -0800
commit35f90a777dd92e7647689b93db09ca068cca87a2 (patch)
tree1ebaebd7891228e74da47f73ff040c04ea5a2cd0 /src/bdd/reo
parent24f0da1475c715a1daa57fd20159c438728a8fc2 (diff)
downloadabc-35f90a777dd92e7647689b93db09ca068cca87a2.tar.gz
abc-35f90a777dd92e7647689b93db09ca068cca87a2.tar.bz2
abc-35f90a777dd92e7647689b93db09ca068cca87a2.zip
Mffc-based structural decomposition of the network and bug fixes in reordering package.
Diffstat (limited to 'src/bdd/reo')
-rw-r--r--src/bdd/reo/reoCore.c4
-rw-r--r--src/bdd/reo/reoProfile.c6
-rw-r--r--src/bdd/reo/reoUnits.c3
3 files changed, 7 insertions, 6 deletions
diff --git a/src/bdd/reo/reoCore.c b/src/bdd/reo/reoCore.c
index d0535ff9..78a8b211 100644
--- a/src/bdd/reo/reoCore.c
+++ b/src/bdd/reo/reoCore.c
@@ -122,7 +122,7 @@ void reoReorderArray( reo_man * p, DdManager * dd, DdNode * Funcs[], DdNode * Fu
if ( p->fVerbose )
{
- printf( "INITIAL: " );
+ printf( "INITIAL:\n" );
if ( p->fMinWidth )
reoProfileWidthPrint(p);
else if ( p->fMinApl )
@@ -141,7 +141,7 @@ void reoReorderArray( reo_man * p, DdManager * dd, DdNode * Funcs[], DdNode * Fu
// print statistics after each iteration
if ( p->fVerbose )
{
- printf( "ITER #%d: ", i+1 );
+ printf( "ITER #%d:\n", i+1 );
if ( p->fMinWidth )
reoProfileWidthPrint(p);
else if ( p->fMinApl )
diff --git a/src/bdd/reo/reoProfile.c b/src/bdd/reo/reoProfile.c
index 68d4b3cc..037e3202 100644
--- a/src/bdd/reo/reoProfile.c
+++ b/src/bdd/reo/reoProfile.c
@@ -200,7 +200,7 @@ void reoProfileWidthStart( reo_man * p )
p->pPlanes[v].statsWidth = p->pPlanes[v-1].statsWidth + pWidthStart[v] - pWidthStop[v];
p->pPlanes[v].statsCost = p->pPlanes[v].statsWidth;
p->nWidthCur += p->pPlanes[v].statsWidth;
-// printf( "Level %2d: Width = %5d. Correct = %d.\n", v, Temp, p->pPlanes[v].statsWidth );
+ printf( "Level %2d: Width = %5d.\n", v, p->pPlanes[v].statsWidth );
}
p->nWidthBeg = p->nWidthCur;
ABC_FREE( pWidthStart );
@@ -328,13 +328,13 @@ void reoProfileWidthPrint( reo_man * p )
TotalWidth = 0;
for ( i = 0; i <= p->nSupp; i++ )
{
-// printf( "Level = %2d. Width = %3d.\n", i, p->pProfile[i] );
+ printf( "Level = %2d. Width = %3d.\n", i, p->pPlanes[i].statsWidth );
if ( WidthMax < p->pPlanes[i].statsWidth )
WidthMax = p->pPlanes[i].statsWidth;
TotalWidth += p->pPlanes[i].statsWidth;
}
assert( p->nWidthCur == TotalWidth );
- printf( "WIDTH: " );
+ printf( "WIDTH: " );
printf( "Maximum = %5d. ", WidthMax );
printf( "Total = %7d. ", p->nWidthCur );
printf( "Average = %6.2f.\n", TotalWidth / (float)p->nSupp );
diff --git a/src/bdd/reo/reoUnits.c b/src/bdd/reo/reoUnits.c
index 70be8b82..7e57ff35 100644
--- a/src/bdd/reo/reoUnits.c
+++ b/src/bdd/reo/reoUnits.c
@@ -97,7 +97,8 @@ void reoUnitsRecycleUnitList( reo_man * p, reo_plane * pPlane )
pTail = pUnit;
pTail->Next = p->pUnitFreeList;
p->pUnitFreeList = pPlane->pHead;
- memset( pPlane, 0, sizeof(reo_plane) );
+// memset( pPlane, 0, sizeof(reo_plane) );
+ pPlane->pHead = NULL;
}
/**Function*************************************************************