summaryrefslogtreecommitdiffstats
path: root/src/aig
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2011-03-12 19:44:38 -0800
committerAlan Mishchenko <alanmi@berkeley.edu>2011-03-12 19:44:38 -0800
commit92a1c5b58ef78321c5731225f6de6227561d3178 (patch)
tree712803965638dd0a1d49796ca621f1a055a46aae /src/aig
parenta4aaf110adca0fd9175b90c163d21455fa2d0210 (diff)
downloadabc-92a1c5b58ef78321c5731225f6de6227561d3178.tar.gz
abc-92a1c5b58ef78321c5731225f6de6227561d3178.tar.bz2
abc-92a1c5b58ef78321c5731225f6de6227561d3178.zip
Several bug fixes and other improvements.
Diffstat (limited to 'src/aig')
-rw-r--r--src/aig/aig/aigCuts.c4
-rw-r--r--src/aig/kit/kitDsd.c27
2 files changed, 15 insertions, 16 deletions
diff --git a/src/aig/aig/aigCuts.c b/src/aig/aig/aigCuts.c
index 6de19484..1bcf69ce 100644
--- a/src/aig/aig/aigCuts.c
+++ b/src/aig/aig/aigCuts.c
@@ -56,9 +56,7 @@ Aig_ManCut_t * Aig_ManCutStart( Aig_Man_t * pMan, int nCutsMax, int nLeafMax, in
p->fTruth = fTruth;
p->fVerbose = fVerbose;
p->pAig = pMan;
- // allocate room for cuts and equivalent nodes
- p->pCuts = ABC_ALLOC( Aig_Cut_t *, Aig_ManObjNumMax(pMan) );
- memset( p->pCuts, 0, sizeof(Aig_Obj_t *) * Aig_ManObjNumMax(pMan) );
+ p->pCuts = ABC_CALLOC( Aig_Cut_t *, Aig_ManObjNumMax(pMan) );
// allocate memory manager
p->nTruthWords = Aig_TruthWordNum(nLeafMax);
p->nCutSize = sizeof(Aig_Cut_t) + sizeof(int) * nLeafMax + fTruth * sizeof(unsigned) * p->nTruthWords;
diff --git a/src/aig/kit/kitDsd.c b/src/aig/kit/kitDsd.c
index fbf92e48..f16d94d9 100644
--- a/src/aig/kit/kitDsd.c
+++ b/src/aig/kit/kitDsd.c
@@ -307,7 +307,8 @@ void Kit_DsdPrintExpanded( Kit_DsdNtk_t * pNtk )
void Kit_DsdPrintFromTruth( unsigned * pTruth, int nVars )
{
Kit_DsdNtk_t * pTemp, * pTemp2;
- pTemp = Kit_DsdDecomposeMux( pTruth, nVars, 5 );
+// pTemp = Kit_DsdDecomposeMux( pTruth, nVars, 5 );
+ pTemp = Kit_DsdDecomposeMux( pTruth, nVars, 8 );
// Kit_DsdPrintExpanded( pTemp );
pTemp2 = Kit_DsdExpand( pTemp );
Kit_DsdPrint( stdout, pTemp2 );
@@ -2090,7 +2091,7 @@ int Kit_DsdTestCofs( Kit_DsdNtk_t * pNtk, unsigned * pTruthInit )
// Extra_PrintBinary( stdout, pTruth, (1 << pNtk->nVars) );
Extra_PrintHexadecimal( stdout, pTruth, pNtk->nVars );
printf( "\n" );
- Kit_DsdPrint( stdout, pNtk );
+ Kit_DsdPrint( stdout, pNtk ), printf( "\n" );
}
for ( i = 0; i < pNtk->nVars; i++ )
{
@@ -2102,7 +2103,7 @@ int Kit_DsdTestCofs( Kit_DsdNtk_t * pNtk, unsigned * pTruthInit )
if ( fVerbose )
{
printf( "Cof%d0: ", i );
- Kit_DsdPrint( stdout, pNtk0 );
+ Kit_DsdPrint( stdout, pNtk0 ), printf( "\n" );
}
Kit_TruthCofactor1New( pCofs2[1], pTruth, pNtk->nVars, i );
@@ -2113,7 +2114,7 @@ int Kit_DsdTestCofs( Kit_DsdNtk_t * pNtk, unsigned * pTruthInit )
if ( fVerbose )
{
printf( "Cof%d1: ", i );
- Kit_DsdPrint( stdout, pNtk1 );
+ Kit_DsdPrint( stdout, pNtk1 ), printf( "\n" );
}
// if ( Kit_DsdCheckVar4Dec2( pNtk0, pNtk1 ) )
@@ -2215,7 +2216,7 @@ void Kit_DsdTest( unsigned * pTruth, int nVars )
pNtk = Kit_DsdExpand( pTemp = pNtk );
Kit_DsdNtkFree( pTemp );
- Kit_DsdPrint( stdout, pNtk );
+ Kit_DsdPrint( stdout, pNtk ), printf( "\n" );
// if ( Kit_DsdFindLargeBox(pNtk, Kit_DsdLit2Var(pNtk->Root)) )
// Kit_DsdTestCofs( pNtk, pTruth );
@@ -2277,7 +2278,7 @@ void Kit_DsdPrecompute4Vars()
RetValue = Kit_DsdTestCofs( pNtk, &uTruth );
printf( "\n" );
printf( "%3d : Non-DSD function %s %s\n", i, Buffer + 2, RetValue? "implementable" : "" );
- Kit_DsdPrint( stdout, pNtk );
+ Kit_DsdPrint( stdout, pNtk ), printf( "\n" );
Counter1++;
Counter2 += RetValue;
@@ -2456,9 +2457,9 @@ int Kit_DsdCofactoring( unsigned * pTruth, int nVars, int * pCofVars, int nLimit
Kit_DsdNtkFree( pTemp );
printf( "Cof%d%d: ", nStep+1, 2*i+0 );
- Kit_DsdPrint( stdout, ppNtks[nStep+1][2*i+0] );
+ Kit_DsdPrint( stdout, ppNtks[nStep+1][2*i+0] ), printf( "\n" );
printf( "Cof%d%d: ", nStep+1, 2*i+1 );
- Kit_DsdPrint( stdout, ppNtks[nStep+1][2*i+1] );
+ Kit_DsdPrint( stdout, ppNtks[nStep+1][2*i+1] ), printf( "\n" );
}
}
}
@@ -2500,7 +2501,7 @@ void Kit_DsdPrintCofactors( unsigned * pTruth, int nVars, int nCofLevel, int fVe
ppNtks[0] = Kit_DsdExpand( pTemp = ppNtks[0] );
Kit_DsdNtkFree( pTemp );
if ( fVerbose )
- Kit_DsdPrint( stdout, ppNtks[0] );
+ Kit_DsdPrint( stdout, ppNtks[0] ), printf( "\n" );
Kit_DsdNtkFree( ppNtks[0] );
// allocate storage for cofactors
@@ -2551,7 +2552,7 @@ void Kit_DsdPrintCofactors( unsigned * pTruth, int nVars, int nCofLevel, int fVe
if ( fVerbose )
{
printf( "Cof%d%d: ", nSteps, i );
- Kit_DsdPrint( stdout, ppNtks[i] );
+ Kit_DsdPrint( stdout, ppNtks[i] ), printf( "\n" );
}
// compute the largest non-decomp block
nPrimeSizeCur = Kit_DsdNonDsdSizeMax(ppNtks[i]);
@@ -2600,7 +2601,7 @@ void Kit_DsdPrintCofactors( unsigned * pTruth, int nVars, int nCofLevel, int fVe
if ( fVerbose )
{
printf( "Cof%d%d: ", nSteps, i );
- Kit_DsdPrint( stdout, ppNtks[i] );
+ Kit_DsdPrint( stdout, ppNtks[i] ), printf( "\n" );
}
// compute the largest non-decomp block
nPrimeSizeCur = Kit_DsdNonDsdSizeMax(ppNtks[i]);
@@ -2651,7 +2652,7 @@ void Kit_DsdPrintCofactors( unsigned * pTruth, int nVars, int nCofLevel, int fVe
if ( fVerbose )
{
printf( "Cof%d%d: ", nSteps, i );
- Kit_DsdPrint( stdout, ppNtks[i] );
+ Kit_DsdPrint( stdout, ppNtks[i] ), printf( "\n" );
}
// compute the largest non-decomp block
nPrimeSizeCur = Kit_DsdNonDsdSizeMax(ppNtks[i]);
@@ -2704,7 +2705,7 @@ void Kit_DsdPrintCofactors( unsigned * pTruth, int nVars, int nCofLevel, int fVe
if ( fVerbose )
{
printf( "Cof%d%d: ", nSteps, i );
- Kit_DsdPrint( stdout, ppNtks[i] );
+ Kit_DsdPrint( stdout, ppNtks[i] ), printf( "\n" );
}
// compute the largest non-decomp block
nPrimeSizeCur = Kit_DsdNonDsdSizeMax(ppNtks[i]);