diff options
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/mapper/mapperCore.c | 3 | ||||
-rw-r--r-- | src/map/mapper/mapperCut.c | 6 | ||||
-rw-r--r-- | src/map/mapper/mapperLib.c | 7 | ||||
-rw-r--r-- | src/map/mapper/mapperTruth.c | 3 |
4 files changed, 12 insertions, 7 deletions
diff --git a/src/map/mapper/mapperCore.c b/src/map/mapper/mapperCore.c index e72b9134..0014d48f 100644 --- a/src/map/mapper/mapperCore.c +++ b/src/map/mapper/mapperCore.c @@ -88,6 +88,9 @@ PRT( "Time", p->timeMatch ); } ////////////////////////////////////////////////////////////////////// + if ( !p->fAreaRecovery ) + return 1; + ////////////////////////////////////////////////////////////////////// // perform area recovery using area flow clk = clock(); diff --git a/src/map/mapper/mapperCut.c b/src/map/mapper/mapperCut.c index a39200bb..1f3c8074 100644 --- a/src/map/mapper/mapperCut.c +++ b/src/map/mapper/mapperCut.c @@ -926,7 +926,7 @@ Map_Cut_t * Map_CutTableConsider( Map_Man_t * pMan, Map_CutTable_t * p, Map_Node Map_Cut_t * pCut; int Place, i; // int clk; -/* + // check the cut Place = Map_CutTableLookup( p, ppNodes, nNodes ); if ( Place == -1 ) @@ -934,7 +934,6 @@ Map_Cut_t * Map_CutTableConsider( Map_Man_t * pMan, Map_CutTable_t * p, Map_Node assert( nNodes > 0 ); // create the new cut //clk = clock(); -*/ pCut = Map_CutAlloc( pMan ); //pMan->time1 += clock() - clk; pCut->nLeaves = nNodes; @@ -944,15 +943,12 @@ Map_Cut_t * Map_CutTableConsider( Map_Man_t * pMan, Map_CutTable_t * p, Map_Node pCut->ppLeaves[i] = ppNodes[i]; // pCut->fLevel += ppNodes[i]->Level; } -/* // pCut->fLevel /= nNodes; // add the cut to the table assert( p->pBins[Place] == NULL ); p->pBins[Place] = pCut; // add the cut to the new list p->pCuts[ p->nCuts++ ] = Place; -*/ - return pCut; } diff --git a/src/map/mapper/mapperLib.c b/src/map/mapper/mapperLib.c index 5530f8cb..f9b280fe 100644 --- a/src/map/mapper/mapperLib.c +++ b/src/map/mapper/mapperLib.c @@ -140,10 +140,13 @@ void Map_SuperLibFree( Map_SuperLib_t * p ) { // if ( s_pLib == p->pGenlib ) // s_pLib = NULL; - if ( Abc_FrameReadLibGen(Abc_FrameGetGlobalFrame()) == p->pGenlib ) - Abc_FrameSetLibGen(Abc_FrameGetGlobalFrame(), NULL); +// if ( Abc_FrameReadLibGen(Abc_FrameGetGlobalFrame()) == p->pGenlib ) +// Abc_FrameSetLibGen(Abc_FrameGetGlobalFrame(), NULL); // Mio_LibraryDelete( p->pGenlib ); + + assert( p->pGenlib == Abc_FrameReadLibGen(Abc_FrameGetGlobalFrame()) ); Mio_LibraryDelete( p->pGenlib ); + Abc_FrameSetLibGen(Abc_FrameGetGlobalFrame(), NULL); } if ( p->tTableC ) Map_SuperTableFree( p->tTableC ); diff --git a/src/map/mapper/mapperTruth.c b/src/map/mapper/mapperTruth.c index 67ef029b..f79dac01 100644 --- a/src/map/mapper/mapperTruth.c +++ b/src/map/mapper/mapperTruth.c @@ -98,6 +98,9 @@ void Map_TruthsCut( Map_Man_t * p, Map_Cut_t * pCut ) return; Map_TruthsCutOne( p, pCut, uTruth ); +//assert( pCut->nLeaves < 5 ); +//Rwt_ManExploreCount( uTruth[0] & 0xFFFF ); + // compute the canonical form for the positive phase Map_CanonComputeSlow( p->uTruths, p->nVarsMax, pCut->nLeaves, uTruth, uPhases, uCanon ); pCut->M[1].pSupers = Map_SuperTableLookupC( p->pSuperLib, uCanon ); |