diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2014-03-20 11:21:33 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2014-03-20 11:21:33 -0700 |
commit | b581e16f32cd1ad68a65fd94d9f2b997da443721 (patch) | |
tree | 60550ee6a2254498f8e38b71b8f4347d8f0c5b1f /src/map/if/ifMap.c | |
parent | d44d9e292788efa2d933ffdeeaa058e4bc416e90 (diff) | |
download | abc-b581e16f32cd1ad68a65fd94d9f2b997da443721.tar.gz abc-b581e16f32cd1ad68a65fd94d9f2b997da443721.tar.bz2 abc-b581e16f32cd1ad68a65fd94d9f2b997da443721.zip |
Experiments with cut caching.
Diffstat (limited to 'src/map/if/ifMap.c')
-rw-r--r-- | src/map/if/ifMap.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/map/if/ifMap.c b/src/map/if/ifMap.c index 5a2cd99d..fe4b146b 100644 --- a/src/map/if/ifMap.c +++ b/src/map/if/ifMap.c @@ -219,6 +219,7 @@ void If_ObjPerformMappingAnd( If_Man_t * p, If_Obj_t * pObj, int Mode, int fPrep // p->timeTruth += Abc_Clock() - clk; if ( p->pPars->fUseDsd ) { + extern void If_ManCacheRecord( If_Man_t * p, int iDsd0, int iDsd1, int nShared, int iDsd ); int truthId = Abc_Lit2Var(pCut->iCutFunc); if ( Vec_IntSize(p->vTtDsds) <= truthId || Vec_IntEntry(p->vTtDsds, truthId) == -1 ) { @@ -239,6 +240,7 @@ void If_ObjPerformMappingAnd( If_Man_t * p, If_Obj_t * pObj, int Mode, int fPrep for ( v = 0; v < (int)pCut->nLeaves; v++ ) pCut->pPerm[v] = (unsigned char)Vec_StrEntry( p->vTtPerms, truthId * p->pPars->nLutSize + v ); } + If_ManCacheRecord( p, pCut0->iCutDsd, pCut1->iCutDsd, p->nShared, pCut->iCutDsd ); } // run user functions pCut->fUseless = 0; |