diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2018-10-22 17:06:37 +0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2018-10-22 17:06:37 +0700 |
commit | 341e55ab3b53fe222407f0f8771cf05df49d568f (patch) | |
tree | c4e4b2c65d0a75018ba85a9ce7222c45b362fefc /src/aig/gia/giaBalAig.c | |
parent | 14d985a8c4597bc70765cb889be160b7af5fa128 (diff) | |
download | abc-341e55ab3b53fe222407f0f8771cf05df49d568f.tar.gz abc-341e55ab3b53fe222407f0f8771cf05df49d568f.tar.bz2 abc-341e55ab3b53fe222407f0f8771cf05df49d568f.zip |
Fix timing info communication in GIA APIs.
Diffstat (limited to 'src/aig/gia/giaBalAig.c')
-rw-r--r-- | src/aig/gia/giaBalAig.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/aig/gia/giaBalAig.c b/src/aig/gia/giaBalAig.c index 018bfcaf..a3a0719e 100644 --- a/src/aig/gia/giaBalAig.c +++ b/src/aig/gia/giaBalAig.c @@ -399,6 +399,12 @@ Gia_Man_t * Gia_ManBalanceInt( Gia_Man_t * p, int fStrict ) Gia_ManForEachCiId( pNew, Id, i ) Vec_IntWriteEntry( pNew->vLevels, Id, Vec_IntEntry(p->vCiArrs, i)/And2Delay ); } + else if ( p->vInArrs ) + { + int Id, And2Delay = p->And2Delay ? p->And2Delay : 1; + Gia_ManForEachCiId( pNew, Id, i ) + Vec_IntWriteEntry( pNew->vLevels, Id, (int)(Vec_FltEntry(p->vInArrs, i)/And2Delay) ); + } // create internal nodes Gia_ManHashStart( pNew ); Gia_ManForEachBuf( p, pObj, i ) @@ -1051,6 +1057,12 @@ Gia_Man_t * Gia_ManAreaBalance( Gia_Man_t * p, int fSimpleAnd, int nNewNodesMax, Gia_ManForEachCiId( p, Id, i ) Vec_IntWriteEntry( p->vLevels, Id, Vec_IntEntry(p->vCiArrs, i)/And2Delay ); } + else if ( p->vInArrs ) + { + int i, Id, And2Delay = p->And2Delay ? p->And2Delay : 1; + Gia_ManForEachCiId( p, Id, i ) + Vec_IntWriteEntry( p->vLevels, Id, (int)(Vec_FltEntry(p->vInArrs, i)/And2Delay) ); + } // determine CI levels if ( p->pManTime && p->vLevels == NULL ) Gia_ManLevelWithBoxes( p ); |