diff options
Diffstat (limited to 'src/aig')
-rw-r--r-- | src/aig/gia/gia.h | 1 | ||||
-rw-r--r-- | src/aig/gia/giaDup.c | 2 | ||||
-rw-r--r-- | src/aig/gia/giaHash.c | 2 | ||||
-rw-r--r-- | src/aig/gia/giaMan.c | 1 |
4 files changed, 5 insertions, 1 deletions
diff --git a/src/aig/gia/gia.h b/src/aig/gia/gia.h index ad65fcdc..c39ace32 100644 --- a/src/aig/gia/gia.h +++ b/src/aig/gia/gia.h @@ -142,6 +142,7 @@ struct Gia_Man_t_ Vec_Int_t * vObjClasses; // classes of objects for abstraction Vec_Int_t * vInitClasses; // classes of flops for retiming/merging/etc Vec_Int_t * vDoms; // dominators + Vec_Int_t * vBarBufs; // barrier buffers unsigned char* pSwitching; // switching activity for each object Gia_Plc_t * pPlacement; // placement of the objects Gia_Man_t * pAigExtra; // combinational logic of holes diff --git a/src/aig/gia/giaDup.c b/src/aig/gia/giaDup.c index acd75e26..0e1028e8 100644 --- a/src/aig/gia/giaDup.c +++ b/src/aig/gia/giaDup.c @@ -967,6 +967,8 @@ Gia_Man_t * Gia_ManDupMarked( Gia_Man_t * p ) pObj->Value = Gia_ManAppendXorReal( pNew, Gia_ObjFanin0Copy(pObj), Gia_ObjFanin1Copy(pObj) ); else if ( Gia_ObjIsMux(p, pObj) ) pObj->Value = Gia_ManAppendMuxReal( pNew, Gia_ObjFanin2Copy(p, pObj), Gia_ObjFanin1Copy(pObj), Gia_ObjFanin0Copy(pObj) ); + else if ( Gia_ObjIsBuf(pObj) ) + pObj->Value = Gia_ManAppendBuf( pNew, Gia_ObjFanin0Copy(pObj) ); else pObj->Value = Gia_ManAppendAnd( pNew, Gia_ObjFanin0Copy(pObj), Gia_ObjFanin1Copy(pObj) ); } diff --git a/src/aig/gia/giaHash.c b/src/aig/gia/giaHash.c index 10e1866e..c28745e9 100644 --- a/src/aig/gia/giaHash.c +++ b/src/aig/gia/giaHash.c @@ -182,7 +182,7 @@ void Gia_ManHashResize( Gia_Man_t * p ) assert( *pPlace != 0 ); Counter++; } - Counter2 = Gia_ManAndNum(p); + Counter2 = Gia_ManAndNum(p) - Gia_ManBufNum(p); assert( Counter == Counter2 ); ABC_FREE( pHTableOld ); // if ( p->fVerbose ) diff --git a/src/aig/gia/giaMan.c b/src/aig/gia/giaMan.c index 4a629519..9fbf5844 100644 --- a/src/aig/gia/giaMan.c +++ b/src/aig/gia/giaMan.c @@ -102,6 +102,7 @@ void Gia_ManStop( Gia_Man_t * p ) Vec_IntFreeP( &p->vObjClasses ); Vec_IntFreeP( &p->vInitClasses ); Vec_IntFreeP( &p->vDoms ); + Vec_IntFreeP( &p->vBarBufs ); Vec_IntFreeP( &p->vLevels ); Vec_IntFreeP( &p->vTruths ); Vec_IntFreeP( &p->vTtNums ); |