diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2017-11-13 18:50:04 -0800 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2017-11-13 18:50:04 -0800 |
commit | d85bc1dd68afa94ad4625cfae3f59e5211253111 (patch) | |
tree | 3b2522baf1e93c23babd9a9b6bf0e3f6853c14f2 /src/aig/gia/gia.h | |
parent | 71d9a1671447b0235b8ed2c8090835fdcf65a93a (diff) | |
download | abc-d85bc1dd68afa94ad4625cfae3f59e5211253111.tar.gz abc-d85bc1dd68afa94ad4625cfae3f59e5211253111.tar.bz2 abc-d85bc1dd68afa94ad4625cfae3f59e5211253111.zip |
Changes to make GIA structural hashing use a dedicated array instead of pObj->Value.
Diffstat (limited to 'src/aig/gia/gia.h')
-rw-r--r-- | src/aig/gia/gia.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/aig/gia/gia.h b/src/aig/gia/gia.h index 4d58992c..e5e5b303 100644 --- a/src/aig/gia/gia.h +++ b/src/aig/gia/gia.h @@ -108,8 +108,8 @@ struct Gia_Man_t_ int nBufs; // the number of buffers Vec_Int_t * vCis; // the vector of CIs (PIs + LOs) Vec_Int_t * vCos; // the vector of COs (POs + LIs) - int * pHTable; // hash table - int nHTable; // hash table size + Vec_Int_t vHash; // hash links + Vec_Int_t vHTable; // hash table int fAddStrash; // performs additional structural hashing int fSweeper; // sweeper is running int fGiaSimple; // simple mode (no const-propagation and strashing) @@ -640,6 +640,7 @@ static inline Gia_Obj_t * Gia_ManAppendObj( Gia_Man_t * p ) } p->nObjsAlloc = nObjNew; } + if ( Vec_IntSize(&p->vHTable) ) Vec_IntPush( &p->vHash, 0 ); return Gia_ManObj( p, p->nObjs++ ); } static inline int Gia_ManAppendCi( Gia_Man_t * p ) @@ -731,7 +732,7 @@ static inline int Gia_ManAppendMuxReal( Gia_Man_t * p, int iLitC, int iLit1, int assert( Abc_Lit2Var(iLit0) != Abc_Lit2Var(iLit1) ); assert( Abc_Lit2Var(iLitC) != Abc_Lit2Var(iLit0) ); assert( Abc_Lit2Var(iLitC) != Abc_Lit2Var(iLit1) ); - assert( !p->pHTable || !Abc_LitIsCompl(iLit1) ); + assert( !Vec_IntSize(&p->vHTable) || !Abc_LitIsCompl(iLit1) ); if ( Abc_Lit2Var(iLit0) < Abc_Lit2Var(iLit1) ) { pObj->iDiff0 = Gia_ObjId(p, pObj) - Abc_Lit2Var(iLit0); |