diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2013-08-14 12:10:55 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2013-08-14 12:10:55 -0700 |
commit | 0916417e2ec9aeac86899a599d63ca16791eba09 (patch) | |
tree | de75c42b89481db56abe7167800ba569210a9fb2 /src/map/if/ifDec75.c | |
parent | 1eae17a89d711a37274f116707dc639c30823080 (diff) | |
download | abc-0916417e2ec9aeac86899a599d63ca16791eba09.tar.gz abc-0916417e2ec9aeac86899a599d63ca16791eba09.tar.bz2 abc-0916417e2ec9aeac86899a599d63ca16791eba09.zip |
Enabling LUT decomposition in two special cases.
Diffstat (limited to 'src/map/if/ifDec75.c')
-rw-r--r-- | src/map/if/ifDec75.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/map/if/ifDec75.c b/src/map/if/ifDec75.c index 024f46ac..d608d7e9 100644 --- a/src/map/if/ifDec75.c +++ b/src/map/if/ifDec75.c @@ -306,13 +306,15 @@ int If_CutPerformCheck75( If_Man_t * p, unsigned * pTruth0, int nVars, int nLeav word * pTruthW = (word *)pTruth0; word pTruth[4] = { pTruthW[0], pTruthW[1], pTruthW[2], pTruthW[3] }; assert( nLeaves <= 8 ); - Abc_TtMinimumBase( pTruth, NULL, nLeaves, &nLeaves ); + if ( !p->pPars->fCutMin ) + Abc_TtMinimumBase( pTruth, NULL, nLeaves, &nLeaves ); if ( nLeaves < 6 ) return 1; // if ( nLeaves < 8 && If_CutPerformCheck07( p, (unsigned *)pTruth, nVars, nLeaves, "44" ) ) if ( nLeaves < 8 && If_CutPerformCheck16( p, (unsigned *)pTruth, nVars, nLeaves, "44" ) ) return 1; - if ( p->pPars->fEnableCheck75 && nLeaves == 8 ) + // this is faster but not compatible with -z + if ( !p->pPars->fDeriveLuts && p->pPars->fEnableCheck75 && nLeaves == 8 ) { // char pDsdStr[1000] = "(!(abd)!(c!([fe][gh])))"; char pDsdStr[1000]; |