diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2014-08-16 18:28:41 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2014-08-16 18:28:41 -0700 |
commit | 97e620a4b7e926a036447e2b1d2b1b6e5a24eacd (patch) | |
tree | e352fe691e9739951d0e9f973891600da733a7a8 /src/map/if/ifMan.c | |
parent | 06100279cdf00acc67a3e08da389220d6dc47f92 (diff) | |
download | abc-97e620a4b7e926a036447e2b1d2b1b6e5a24eacd.tar.gz abc-97e620a4b7e926a036447e2b1d2b1b6e5a24eacd.tar.bz2 abc-97e620a4b7e926a036447e2b1d2b1b6e5a24eacd.zip |
Adding specialized matching to 'if'.
Diffstat (limited to 'src/map/if/ifMan.c')
-rw-r--r-- | src/map/if/ifMan.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/map/if/ifMan.c b/src/map/if/ifMan.c index 43f7b7e0..f65775d2 100644 --- a/src/map/if/ifMan.c +++ b/src/map/if/ifMan.c @@ -125,6 +125,15 @@ If_Man_t * If_ManStart( If_Par_t * pPars ) p->vPairRes = Vec_IntAlloc( 1000 ); Vec_IntPush( p->vPairRes, -1 ); } + if ( pPars->fUseBat ) + { +// abctime clk = Abc_Clock(); + extern int Bat_ManCellFuncLookup( void * pMan, unsigned * pTruth, int nVars, int nLeaves, char * pStr ); + extern void Bat_ManFuncSetupTable(); + pPars->pFuncCell = Bat_ManCellFuncLookup; + Bat_ManFuncSetupTable(); +// Abc_PrintTime( 1, "Setup time", Abc_Clock() - clk ); + } // create the constant node p->pConst1 = If_ManSetupObj( p ); p->pConst1->Type = IF_CONST1; @@ -249,6 +258,11 @@ void If_ManStop( If_Man_t * p ) Tim_ManStop( p->pManTim ); if ( p->vSwitching ) Vec_IntFree( p->vSwitching ); + if ( p->pPars->fUseBat ) + { + extern void Bat_ManFuncSetdownTable(); + Bat_ManFuncSetdownTable(); + } // hash table // if ( p->pPars->fVerbose && p->nTableEntries[0] ) // printf( "Hash table 2: Entries = %7d. Size = %7d.\n", p->nTableEntries[0], p->nTableSize[0] ); |