From b581e16f32cd1ad68a65fd94d9f2b997da443721 Mon Sep 17 00:00:00 2001 From: Alan Mishchenko Date: Thu, 20 Mar 2014 11:21:33 -0700 Subject: Experiments with cut caching. --- src/map/if/ifMap.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/map/if/ifMap.c') 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; -- cgit v1.2.3