summaryrefslogtreecommitdiffstats
path: root/src/base/wlc/wlcNdr.c
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2018-02-07 09:02:28 -0800
committerAlan Mishchenko <alanmi@berkeley.edu>2018-02-07 09:02:28 -0800
commitc6bce9c20e07587de48b157ed676d175ca8c1b31 (patch)
treee68ae136be8a9cdb1777167c0fea055e5e57380f /src/base/wlc/wlcNdr.c
parente839091ba05083f166356f5455cea7ba3adad8d6 (diff)
downloadabc-c6bce9c20e07587de48b157ed676d175ca8c1b31.tar.gz
abc-c6bce9c20e07587de48b157ed676d175ca8c1b31.tar.bz2
abc-c6bce9c20e07587de48b157ed676d175ca8c1b31.zip
Fixing input swapping issue in MUXes derived from NDR.
Diffstat (limited to 'src/base/wlc/wlcNdr.c')
-rw-r--r--src/base/wlc/wlcNdr.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/base/wlc/wlcNdr.c b/src/base/wlc/wlcNdr.c
index e0a00a56..7caa4656 100644
--- a/src/base/wlc/wlcNdr.c
+++ b/src/base/wlc/wlcNdr.c
@@ -332,6 +332,8 @@ Wlc_Ntk_t * Wlc_NtkFromNdr( void * pData )
Vec_IntPushTwo( vFanins, End, Beg );
else if ( Type == ABC_OPER_CONST )
Ndr_ObjReadConstant( vFanins, (char *)Ndr_ObjReadBodyP(p, Obj, NDR_FUNCTION) );
+ else if ( Type == ABC_OPER_BIT_MUX && Vec_IntSize(vFanins) == 3 )
+ ABC_SWAP( int, Vec_IntEntryP(vFanins, 1)[0], Vec_IntEntryP(vFanins, 2)[0] );
Wlc_ObjAddFanins( pNtk, Wlc_NtkObj(pNtk, iObj), vFanins );
Wlc_ObjSetNameId( pNtk, iObj, NameId );
}