diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2013-09-26 00:00:49 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2013-09-26 00:00:49 -0700 |
commit | c8fa1c82f77ae7bc63d3a1545f4df12bf2d62d9a (patch) | |
tree | 0ab9320a6b5e871160c2fc4ec53c9acbfdbf2946 /src/aig/gia | |
parent | bce6d5ab9678d80793194eaf13df6181545bbe90 (diff) | |
download | abc-c8fa1c82f77ae7bc63d3a1545f4df12bf2d62d9a.tar.gz abc-c8fa1c82f77ae7bc63d3a1545f4df12bf2d62d9a.tar.bz2 abc-c8fa1c82f77ae7bc63d3a1545f4df12bf2d62d9a.zip |
Updates to the mapper.
Diffstat (limited to 'src/aig/gia')
-rw-r--r-- | src/aig/gia/giaJf.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/aig/gia/giaJf.c b/src/aig/gia/giaJf.c index da434516..93329abe 100644 --- a/src/aig/gia/giaJf.c +++ b/src/aig/gia/giaJf.c @@ -1207,7 +1207,10 @@ int Jf_ManComputeRefs( Jf_Man_t * p ) p->pPars->Edge += Jf_CutSize(pCut); p->pPars->Area++; } - // blend references and normalize flow + } + // blend references and normalize flow + Gia_ManForEachObj( p->pGia, pObj, i ) + { if ( p->pPars->fOptEdge ) nRefsNew = Abc_MaxFloat( 1, 0.8 * pRefs[i] + 0.2 * p->pGia->pRefs[i] ); else @@ -1216,6 +1219,7 @@ int Jf_ManComputeRefs( Jf_Man_t * p ) pRefs[i] = nRefsNew; assert( pFlow[i] >= 0 ); } + // compute delay p->pPars->Delay = Jf_ManComputeDelay( p, 1 ); return p->pPars->Area; } @@ -1308,8 +1312,8 @@ Gia_Man_t * Jf_ManDeriveMappingGia( Jf_Man_t * p ) Gia_Man_t * pNew; Gia_Obj_t * pObj; Vec_Int_t * vCopies = Vec_IntStartFull( Gia_ManObjNum(p->pGia) ); - Vec_Int_t * vMapping = Vec_IntStart( 2 * Gia_ManObjNum(p->pGia) ); - Vec_Int_t * vMapping2 = Vec_IntStart( 1 ); + Vec_Int_t * vMapping = Vec_IntStart( 2 * Gia_ManObjNum(p->pGia) + (int)p->pPars->Edge + 2 * (int)p->pPars->Area ); + Vec_Int_t * vMapping2 = Vec_IntStart( (int)p->pPars->Edge + 2 * (int)p->pPars->Area + 1000 ); Vec_Int_t * vCover = Vec_IntAlloc( 1 << 16 ); Vec_Int_t * vLeaves = Vec_IntAlloc( 16 ); int i, k, iLit, Class, * pCut; |