diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2008-02-05 08:01:00 -0800 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2008-02-05 08:01:00 -0800 |
commit | 7174787abafe80437892b55a53f994da85a37342 (patch) | |
tree | 0df4c6f35d99111d757aa9b8091853b8f88ee762 /src/aig/fra/fraHot.c | |
parent | 3b790eb17e54cd922440a1a3b18a5cfdd5cbcadb (diff) | |
download | abc-7174787abafe80437892b55a53f994da85a37342.tar.gz abc-7174787abafe80437892b55a53f994da85a37342.tar.bz2 abc-7174787abafe80437892b55a53f994da85a37342.zip |
Version abc80205
Diffstat (limited to 'src/aig/fra/fraHot.c')
-rw-r--r-- | src/aig/fra/fraHot.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/aig/fra/fraHot.c b/src/aig/fra/fraHot.c index 6783b459..4a3f9b03 100644 --- a/src/aig/fra/fraHot.c +++ b/src/aig/fra/fraHot.c @@ -395,25 +395,28 @@ Aig_Man_t * Fra_OneHotCreateExdc( Fra_Man_t * p, Vec_Int_t * vOneHots ) { Aig_Man_t * pNew; Aig_Obj_t * pObj1, * pObj2, * pObj; - int i, Out1, Out2; + int i, Out1, Out2, nTruePis; pNew = Aig_ManStart( Vec_IntSize(vOneHots)/2 ); - for ( i = 0; i < Aig_ManRegNum(p->pManAig); i++ ) +// for ( i = 0; i < Aig_ManRegNum(p->pManAig); i++ ) +// Aig_ObjCreatePi(pNew); + Aig_ManForEachPi( p->pManAig, pObj, i ) Aig_ObjCreatePi(pNew); + nTruePis = Aig_ManPiNum(p->pManAig) - Aig_ManRegNum(p->pManAig); for ( i = 0; i < Vec_IntSize(vOneHots); i += 2 ) { Out1 = Vec_IntEntry( vOneHots, i ); Out2 = Vec_IntEntry( vOneHots, i+1 ); if ( Out1 == 0 && Out2 == 0 ) continue; - pObj1 = Aig_ManPi( pNew, Fra_LitReg(Out1) ); - pObj2 = Aig_ManPi( pNew, Fra_LitReg(Out2) ); + pObj1 = Aig_ManPi( pNew, nTruePis + Fra_LitReg(Out1) ); + pObj2 = Aig_ManPi( pNew, nTruePis + Fra_LitReg(Out2) ); pObj1 = Aig_NotCond( pObj1, Fra_LitSign(Out1) ); pObj2 = Aig_NotCond( pObj2, Fra_LitSign(Out2) ); pObj = Aig_Or( pNew, pObj1, pObj2 ); Aig_ObjCreatePo( pNew, pObj ); } Aig_ManCleanup(pNew); - printf( "Created AIG with %d nodes and %d outputs.\n", Aig_ManNodeNum(pNew), Aig_ManPoNum(pNew) ); +// printf( "Created AIG with %d nodes and %d outputs.\n", Aig_ManNodeNum(pNew), Aig_ManPoNum(pNew) ); return pNew; } |