diff options
-rw-r--r-- | src/base/wlc/wlc.h | 2 | ||||
-rw-r--r-- | src/base/wlc/wlcNdr.c | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/src/base/wlc/wlc.h b/src/base/wlc/wlc.h index 61a71b65..55e85330 100644 --- a/src/base/wlc/wlc.h +++ b/src/base/wlc/wlc.h @@ -331,6 +331,8 @@ extern void Wlc_SetNtk( Abc_Frame_t * pAbc, Wlc_Ntk_t * pNtk ); /*=== wlcNdr.c ========================================================*/ extern Wlc_Ntk_t * Wlc_ReadNdr( char * pFileName ); extern void Wlc_WriteNdr( Wlc_Ntk_t * pNtk, char * pFileName ); +extern Wlc_Ntk_t * Wlc_NtkFromNdr( void * pData ); +extern void * Wlc_NtkToNdr( Wlc_Ntk_t * pNtk ); /*=== wlcNtk.c ========================================================*/ extern void Wlc_ManSetDefaultParams( Wlc_Par_t * pPars ); extern char * Wlc_ObjTypeName( Wlc_Obj_t * p ); 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 ); } |