summaryrefslogtreecommitdiffstats
path: root/src/map/if/ifMan.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/if/ifMan.c')
-rw-r--r--src/map/if/ifMan.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/map/if/ifMan.c b/src/map/if/ifMan.c
index 776c5ba6..076f74d6 100644
--- a/src/map/if/ifMan.c
+++ b/src/map/if/ifMan.c
@@ -83,8 +83,10 @@ If_Man_t * If_ManStart( If_Par_t * pPars )
p->pCutTemp = (If_Cut_t *)ABC_ALLOC( char, p->nCutBytes );
if ( pPars->fUseDsd )
{
- p->pNamDsd = Abc_NamStart( 1000, 20 );
- p->iNamVar = Abc_NamStrFindOrAdd( p->pNamDsd, "a", NULL );
+// p->pNamDsd = Abc_NamStart( 1000, 20 );
+// p->iNamVar = Abc_NamStrFindOrAdd( p->pNamDsd, "a", NULL );
+ p->pDsdMan = Dss_ManAlloc( pPars->nLutSize );
+ p->iNamVar = 2;
}
// create the constant node
@@ -150,8 +152,9 @@ void If_ManStop( If_Man_t * p )
Abc_Print( 1, "Useless cuts %2d = %9d (out of %9d) (%6.2f %%)\n", i, p->nCutsUseless[i], p->nCutsCount[i], 100.0*p->nCutsUseless[i]/(p->nCutsCount[i]+1) );
Abc_Print( 1, "Useless cuts all = %9d (out of %9d) (%6.2f %%)\n", p->nCutsUselessAll, p->nCutsCountAll, 100.0*p->nCutsUselessAll/(p->nCutsCountAll+1) );
}
- if ( p->pNamDsd )
+ if ( p->pPars->fUseDsd )
{
+/*
if ( p->pPars->fVerbose )
Abc_Print( 1, "Number of unique entries in the DSD table = %d. Memory = %.1f MB.\n",
Abc_NamObjNumMax(p->pNamDsd), 1.0*Abc_NamMemAlloc(p->pNamDsd)/(1<<20) );
@@ -161,6 +164,8 @@ void If_ManStop( If_Man_t * p )
Abc_PrintTime( 1, "Time3", s_TimeComp[3] );
// Abc_NamPrint( p->pNamDsd );
Abc_NamStop( p->pNamDsd );
+*/
+ Dss_ManFree( p->pDsdMan );
}
// Abc_PrintTime( 1, "Truth", p->timeTruth );
// Abc_Print( 1, "Small support = %d.\n", p->nSmallSupp );
@@ -427,7 +432,11 @@ void If_ManSetupCutTriv( If_Man_t * p, If_Cut_t * pCut, int ObjId )
pCut->nLeaves = 1;
pCut->pLeaves[0] = p->pPars->fLiftLeaves? (ObjId << 8) : ObjId;
pCut->uSign = If_ObjCutSign( pCut->pLeaves[0] );
- pCut->iDsd = p->iNamVar;
+ if ( p->pPars->fUseDsd )
+ {
+ pCut->iDsd = p->iNamVar;
+ pCut->pPerm[0] = 0;
+ }
// set up elementary truth table of the unit cut
if ( p->pPars->fTruth )
{