diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2013-09-28 20:19:53 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2013-09-28 20:19:53 -0700 |
commit | 5f97f5cffa90f2e289e572ffb233cec70d63a64d (patch) | |
tree | 3507a8b465b557e279600f221b6af1f3c82dbc7e /src/aig/gia/giaHash.c | |
parent | 61ee156b72a0bc61aa4f422f1af469c486025d81 (diff) | |
download | abc-5f97f5cffa90f2e289e572ffb233cec70d63a64d.tar.gz abc-5f97f5cffa90f2e289e572ffb233cec70d63a64d.tar.bz2 abc-5f97f5cffa90f2e289e572ffb233cec70d63a64d.zip |
New logic sharing extraction.
Diffstat (limited to 'src/aig/gia/giaHash.c')
-rw-r--r-- | src/aig/gia/giaHash.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/aig/gia/giaHash.c b/src/aig/gia/giaHash.c index eb89a9cd..f7253c51 100644 --- a/src/aig/gia/giaHash.c +++ b/src/aig/gia/giaHash.c @@ -527,6 +527,10 @@ int Gia_ManHashMuxReal( Gia_Man_t * p, int iLitC, int iLit1, int iLit0 ) assert( iLit0 > 1 && iLit1 > 1 && iLitC > 1 ); if ( iLit0 == iLit1 ) return iLit0; + if ( iLitC == iLit0 || iLitC == Abc_LitNot(iLit1) ) + return Gia_ManHashAnd(p, iLit0, iLit1); + if ( iLitC == iLit1 || iLitC == Abc_LitNot(iLit0) ) + return Gia_ManHashOr(p, iLit0, iLit1); if ( Abc_Lit2Var(iLit0) == Abc_Lit2Var(iLit1) ) return Gia_ManHashXorReal( p, iLitC, iLit0 ); if ( iLit0 > iLit1 ) |