Commit 2a028aa1 by Alan Mishchenko

Bug fix in blasting MUX with different ranges of inputs and the output.

parent ac030ee4
...@@ -441,9 +441,9 @@ Gia_Man_t * Wlc_NtkBitBlast( Wlc_Ntk_t * p ) ...@@ -441,9 +441,9 @@ Gia_Man_t * Wlc_NtkBitBlast( Wlc_Ntk_t * p )
Wlc_ObjForEachFanin( pObj, iFanin, k ) Wlc_ObjForEachFanin( pObj, iFanin, k )
{ {
if ( !k ) continue; if ( !k ) continue;
assert( nRange == Wlc_ObjRange(Wlc_NtkObj(p, iFanin)) ); //assert( nRange == Wlc_ObjRange(Wlc_NtkObj(p, iFanin)) );
pFans1 = Vec_IntEntryP( vBits, Wlc_ObjCopy(p, iFanin) ); pFans1 = Vec_IntEntryP( vBits, Wlc_ObjCopy(p, iFanin) );
Vec_IntPush( vTemp0, pFans1[b] ); Vec_IntPush( vTemp0, b < Wlc_ObjRange(Wlc_NtkObj(p, iFanin)) ? pFans1[b] : 0 );
} }
Vec_IntPush( vRes, Wlc_NtkMuxTree_rec(pNew, pFans0, nRange0, vTemp0, 0) ); Vec_IntPush( vRes, Wlc_NtkMuxTree_rec(pNew, pFans0, nRange0, vTemp0, 0) );
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment