diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2020-01-02 17:58:05 -0500 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2020-01-02 17:58:05 -0500 |
commit | f6dc4a588c81177ac198723381b5459909357d01 (patch) | |
tree | f06f92ab4aa82992cc645b54a29eff3784f323cc /src | |
parent | c4b12fae6d9c62f63205b6680b44e02b92639eb7 (diff) | |
download | abc-f6dc4a588c81177ac198723381b5459909357d01.tar.gz abc-f6dc4a588c81177ac198723381b5459909357d01.tar.bz2 abc-f6dc4a588c81177ac198723381b5459909357d01.zip |
Making sure arrival time of constant node is -infinity.
Diffstat (limited to 'src')
-rw-r--r-- | src/map/if/ifMap.c | 2 | ||||
-rw-r--r-- | src/opt/lpk/lpkMux.c | 34 |
2 files changed, 36 insertions, 0 deletions
diff --git a/src/map/if/ifMap.c b/src/map/if/ifMap.c index afeba005..bd8ebed7 100644 --- a/src/map/if/ifMap.c +++ b/src/map/if/ifMap.c @@ -633,6 +633,8 @@ int If_ManPerformMappingRound( If_Man_t * p, int nCutsUsed, int Mode, int fPrepr } else if ( If_ObjIsConst1(pObj) ) { + arrTime = -IF_INFINITY; + If_ObjSetArrTime( pObj, arrTime ); } else assert( 0 ); diff --git a/src/opt/lpk/lpkMux.c b/src/opt/lpk/lpkMux.c index 01c28c8c..60184f61 100644 --- a/src/opt/lpk/lpkMux.c +++ b/src/opt/lpk/lpkMux.c @@ -243,6 +243,40 @@ If_Obj_t * Lpk_MapSuppRedDec_rec( Lpk_Man_t * p, unsigned * pTruth, int nVars, I return pObjNew; } +/**Function************************************************************* + + Synopsis [Evaluates 4-LUT decompositions of larger functions.] + + Description [] + + SideEffects [] + + SeeAlso [] + +***********************************************************************/ +void Lpk_TryDec( word * pTruth, int nVars ) +{ + extern word If_Dec6Perform( word t, int fDerive ); + extern void If_Dec6Verify( word t, word z ); + int nWords = Abc_Truth6WordNum( nVars ); + assert( nVars == 8 ); + printf( "%d", If_Dec6Perform(pTruth[0], 1) > 0 ); + printf( "%d", If_Dec6Perform(pTruth[1], 1) > 0 ); + printf( "%d", If_Dec6Perform(pTruth[2], 1) > 0 ); + printf( "%d", If_Dec6Perform(pTruth[3], 1) > 0 ); + printf( "\n" ); +} +void Lpk_TryDecTest() +{ + word t0 = ABC_CONST(0x4f1ead396f247a04); + word t1 = ABC_CONST(0x10bdb210c006eab5); + word t2 = ABC_CONST(0x68ab4bfa8acb7a13); + word t3 = ABC_CONST(0xb14ede67096c6eed); + word Truth[4] = {t0, t1, t2, t3}; + Lpk_TryDec( Truth, 8 ); + +} + //////////////////////////////////////////////////////////////////////// /// END OF FILE /// //////////////////////////////////////////////////////////////////////// |