summaryrefslogtreecommitdiffstats
path: root/src/base/wlc
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2014-10-10 13:46:58 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2014-10-10 13:46:58 -0700
commit01e1b6345e38206c7e66b4c492acabb1fec5825f (patch)
tree85223f83f867746950e1d60a56dc5e10d77a6ae8 /src/base/wlc
parent5a4592ee69c41dcecb4227a1474216e299f572e2 (diff)
downloadabc-01e1b6345e38206c7e66b4c492acabb1fec5825f.tar.gz
abc-01e1b6345e38206c7e66b4c492acabb1fec5825f.tar.bz2
abc-01e1b6345e38206c7e66b4c492acabb1fec5825f.zip
Bug fix in the bit-blaster.
Diffstat (limited to 'src/base/wlc')
-rw-r--r--src/base/wlc/wlcBlast.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/base/wlc/wlcBlast.c b/src/base/wlc/wlcBlast.c
index c8631227..24b653c8 100644
--- a/src/base/wlc/wlcBlast.c
+++ b/src/base/wlc/wlcBlast.c
@@ -454,9 +454,9 @@ Gia_Man_t * Wlc_NtkBitBlast( Wlc_Ntk_t * p )
int nRangeMax = Abc_MaxInt( nRange, nRange0 );
int * pArg0 = Wlc_VecLoadFanins( vTemp0, pFans0, nRange0, nRangeMax, Wlc_ObjFanin0(p, pObj)->Signed );
if ( pObj->Type == WLC_OBJ_SHIFT_R || pObj->Type == WLC_OBJ_SHIFT_RA )
- Wlc_BlastShiftRight( pNew, pArg0, nRangeMax, pFans1, nRange1, pObj->Type == WLC_OBJ_SHIFT_RA, vRes );
+ Wlc_BlastShiftRight( pNew, pArg0, nRangeMax, pFans1, nRange1, Wlc_ObjFanin0(p, pObj)->Signed && pObj->Type == WLC_OBJ_SHIFT_RA, vRes );
else
- Wlc_BlastShiftLeft( pNew, pArg0, nRangeMax, pFans1, nRange1, pObj->Type == WLC_OBJ_SHIFT_LA, vRes );
+ Wlc_BlastShiftLeft( pNew, pArg0, nRangeMax, pFans1, nRange1, 0, vRes );
Vec_IntShrink( vRes, nRange );
}
else if ( pObj->Type == WLC_OBJ_ROTATE_R )
@@ -622,7 +622,7 @@ Gia_Man_t * Wlc_NtkBitBlast( Wlc_Ntk_t * p )
else
Wlc_BlastDivider( pNew, pArg0, nRangeMax, pArg1, nRangeMax, pObj->Type == WLC_OBJ_ARI_DIVIDE, vRes );
Vec_IntShrink( vRes, nRange );
-// Wlc_BlastZeroCondition( pNew, pFans1, nRange1, vRes );
+ Wlc_BlastZeroCondition( pNew, pFans1, nRange1, vRes );
}
else if ( pObj->Type == WLC_OBJ_ARI_MINUS )
{