diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2014-05-11 22:13:40 +0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2014-05-11 22:13:40 +0700 |
commit | 954ab62ce68fdd225ac82301c4e037826013bd17 (patch) | |
tree | 80e4b01465e88a8ce9c4c77f6daca3fdb4404cf2 | |
parent | aed898c8782d6335a21c4c5e5a4fddc5619f1e74 (diff) | |
download | abc-954ab62ce68fdd225ac82301c4e037826013bd17.tar.gz abc-954ab62ce68fdd225ac82301c4e037826013bd17.tar.bz2 abc-954ab62ce68fdd225ac82301c4e037826013bd17.zip |
Bug fix in handling barrier buffers.
-rw-r--r-- | src/base/abc/abcBarBuf.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/base/abc/abcBarBuf.c b/src/base/abc/abcBarBuf.c index 1345a5d6..2b9c692f 100644 --- a/src/base/abc/abcBarBuf.c +++ b/src/base/abc/abcBarBuf.c @@ -209,9 +209,15 @@ Abc_Ntk_t * Abc_NtkToBarBufs( Abc_Ntk_t * pNtk ) Abc_ObjAddFanin( pLatch, pObjLi ); Abc_ObjAddFanin( pObjLo, pLatch ); pLatch->pData = (void *)ABC_INIT_ZERO; - sprintf( Buffer, "_%s_in", Abc_NtkName(Abc_ObjFanin0(pLiMap)->pNtk) ); + pTemp = NULL; + if ( Abc_ObjFanin0(pLiMap)->pNtk != pNtk ) + pTemp = Abc_ObjFanin0(pLiMap)->pNtk; + else if ( Abc_ObjFanout0(pLoMap)->pNtk != pNtk ) + pTemp = Abc_ObjFanout0(pLoMap)->pNtk; + else assert( 0 ); + sprintf( Buffer, "_%s_in", Abc_NtkName(pTemp) ); Abc_ObjAssignName( pObjLi, Abc_ObjName(Abc_ObjFanin0(pLiMap)), Buffer ); - sprintf( Buffer, "_%s_out", Abc_NtkName(Abc_ObjFanout0(pLoMap)->pNtk) ); + sprintf( Buffer, "_%s_out", Abc_NtkName(pTemp) ); Abc_ObjAssignName( pObjLo, Abc_ObjName(Abc_ObjFanout0(pLoMap)), Buffer ); pLiMap->pCopy = pObjLi; Abc_ObjFanout0(pLoMap)->pCopy = pObjLo; |