diff options
| -rw-r--r-- | src/base/abc/abcBarBuf.c | 2 | ||||
| -rw-r--r-- | src/base/abc/abcNtk.c | 4 | ||||
| -rw-r--r-- | src/base/abci/abcDar.c | 5 | 
3 files changed, 9 insertions, 2 deletions
| diff --git a/src/base/abc/abcBarBuf.c b/src/base/abc/abcBarBuf.c index 856b9f96..52c10ccf 100644 --- a/src/base/abc/abcBarBuf.c +++ b/src/base/abc/abcBarBuf.c @@ -271,8 +271,6 @@ Abc_Ntk_t * Abc_NtkFromBarBufsInt( Abc_Ntk_t * pNtkBase, Abc_Ntk_t * pNtk, int f              Abc_ObjFanout0(Abc_ObjFanout0(pLatch))->pCopy = pNet->pCopy;          }      } -    Abc_NtkForEachLatch( pNtk, pObj, i ) -        assert( Abc_ObjFanout0(Abc_ObjFanout0(pLatch))->pCopy != NULL );      // build PO cones      if ( fRoot )      { diff --git a/src/base/abc/abcNtk.c b/src/base/abc/abcNtk.c index 07ee429b..4567d332 100644 --- a/src/base/abc/abcNtk.c +++ b/src/base/abc/abcNtk.c @@ -113,6 +113,7 @@ Abc_Ntk_t * Abc_NtkStartFrom( Abc_Ntk_t * pNtk, Abc_NtkType_t Type, Abc_NtkFunc_      // start the network      pNtkNew = Abc_NtkAlloc( Type, Func, 1 );      pNtkNew->nConstrs   = pNtk->nConstrs; +    pNtkNew->nBarBufs   = pNtk->nBarBufs;      // duplicate the name and the spec      pNtkNew->pName = Extra_UtilStrsav(pNtk->pName);      pNtkNew->pSpec = Extra_UtilStrsav(pNtk->pSpec); @@ -178,6 +179,7 @@ Abc_Ntk_t * Abc_NtkStartFromWithLatches( Abc_Ntk_t * pNtk, Abc_NtkType_t Type, A      // start the network      pNtkNew = Abc_NtkAlloc( Type, Func, 1 );      pNtkNew->nConstrs   = pNtk->nConstrs; +    pNtkNew->nBarBufs   = pNtk->nBarBufs;      // duplicate the name and the spec      pNtkNew->pName = Extra_UtilStrsav(pNtk->pName);      pNtkNew->pSpec = Extra_UtilStrsav(pNtk->pSpec); @@ -252,6 +254,7 @@ Abc_Ntk_t * Abc_NtkStartFromNoLatches( Abc_Ntk_t * pNtk, Abc_NtkType_t Type, Abc      // start the network      pNtkNew = Abc_NtkAlloc( Type, Func, 1 );      pNtkNew->nConstrs   = pNtk->nConstrs; +    pNtkNew->nBarBufs   = pNtk->nBarBufs;      // duplicate the name and the spec      pNtkNew->pName = Extra_UtilStrsav(pNtk->pName);      pNtkNew->pSpec = Extra_UtilStrsav(pNtk->pSpec); @@ -564,6 +567,7 @@ Abc_Ntk_t * Abc_NtkDupTransformMiter( Abc_Ntk_t * pNtk )      // start the network      pNtkNew = Abc_NtkAlloc( pNtk->ntkType, pNtk->ntkFunc, 1 );      pNtkNew->nConstrs   = pNtk->nConstrs; +    pNtkNew->nBarBufs   = pNtk->nBarBufs;      // duplicate the name and the spec      pNtkNew->pName = Extra_UtilStrsav(pNtk->pName);      pNtkNew->pSpec = Extra_UtilStrsav(pNtk->pSpec); diff --git a/src/base/abci/abcDar.c b/src/base/abci/abcDar.c index 4800557a..22d4fdff 100644 --- a/src/base/abci/abcDar.c +++ b/src/base/abci/abcDar.c @@ -417,6 +417,7 @@ Abc_Ntk_t * Abc_NtkFromDar( Abc_Ntk_t * pNtkOld, Aig_Man_t * pMan )      // perform strashing      pNtkNew = Abc_NtkStartFrom( pNtkOld, ABC_NTK_STRASH, ABC_FUNC_AIG );      pNtkNew->nConstrs = pMan->nConstrs; +    pNtkNew->nBarBufs = pNtkOld->nBarBufs;      // transfer the pointers to the basic nodes      Aig_ManConst1(pMan)->pData = Abc_AigConst1(pNtkNew);      Aig_ManForEachCi( pMan, pObj, i ) @@ -467,6 +468,7 @@ Abc_Ntk_t * Abc_NtkFromDarSeqSweep( Abc_Ntk_t * pNtkOld, Aig_Man_t * pMan )      Aig_Obj_t * pObj, * pObjLo, * pObjLi;      int i, iNodeId, nDigits;       assert( pMan->nAsserts == 0 ); +    assert( pNtkOld->nBarBufs == 0 );  //    assert( Aig_ManRegNum(pMan) != Abc_NtkLatchNum(pNtkOld) );      // perform strashing      pNtkNew = Abc_NtkStartFromNoLatches( pNtkOld, ABC_NTK_STRASH, ABC_FUNC_AIG ); @@ -811,6 +813,7 @@ Abc_Ntk_t * Abc_NtkAfterTrim( Aig_Man_t * pMan, Abc_Ntk_t * pNtkOld )      Aig_Obj_t * pObj, * pObjLo, * pObjLi;      int i;       assert( pMan->nAsserts == 0 ); +    assert( pNtkOld->nBarBufs == 0 );      assert( Aig_ManRegNum(pMan) <= Abc_NtkLatchNum(pNtkOld) );      assert( Saig_ManPiNum(pMan) <= Abc_NtkCiNum(pNtkOld) );      assert( Saig_ManPoNum(pMan) == Abc_NtkPoNum(pNtkOld) ); @@ -899,6 +902,7 @@ Abc_Ntk_t * Abc_NtkFromDarChoices( Abc_Ntk_t * pNtkOld, Aig_Man_t * pMan )      // perform strashing      pNtkNew = Abc_NtkStartFrom( pNtkOld, ABC_NTK_STRASH, ABC_FUNC_AIG );      pNtkNew->nConstrs = pMan->nConstrs; +    pNtkNew->nBarBufs = pNtkOld->nBarBufs;      // transfer the pointers to the basic nodes      Aig_ManCleanData( pMan );      Aig_ManConst1(pMan)->pData = Abc_AigConst1(pNtkNew); @@ -956,6 +960,7 @@ Abc_Ntk_t * Abc_NtkFromDarSeq( Abc_Ntk_t * pNtkOld, Aig_Man_t * pMan )      Aig_Obj_t * pObj;      int i;  //    assert( Aig_ManLatchNum(pMan) > 0 ); +    assert( pNtkOld->nBarBufs == 0 );      // perform strashing      pNtkNew = Abc_NtkStartFromNoLatches( pNtkOld, ABC_NTK_STRASH, ABC_FUNC_AIG );      pNtkNew->nConstrs = pMan->nConstrs; | 
