summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2013-06-29 13:13:39 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2013-06-29 13:13:39 -0700
commit2d6d5a0f0bbe6bd686d4b178e893a477a061cbe6 (patch)
tree9e479692105afaecde9c9f8f2561a8f69b24c0cb
parent45ce1511959dcb9ba067fc6fa85e0839f8942a2e (diff)
downloadabc-2d6d5a0f0bbe6bd686d4b178e893a477a061cbe6.tar.gz
abc-2d6d5a0f0bbe6bd686d4b178e893a477a061cbe6.tar.bz2
abc-2d6d5a0f0bbe6bd686d4b178e893a477a061cbe6.zip
Improvemesnts to the mapper.
-rw-r--r--src/aig/gia/giaTest.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/aig/gia/giaTest.c b/src/aig/gia/giaTest.c
index 081b238d..ceef96dc 100644
--- a/src/aig/gia/giaTest.c
+++ b/src/aig/gia/giaTest.c
@@ -1212,7 +1212,7 @@ void Mpm_ObjDerefFaninCuts( Mpm_Man_t * p, Mig_Obj_t * pObj )
Mig_Obj_t * pFanin;
int i;
Mig_ObjForEachFanin( pObj, pFanin, i )
- if ( --Mpm_ManObj(p, pFanin)->nMigRefs == 0 )
+ if ( !Mig_ObjIsCi(pObj) && --Mpm_ManObj(p, pFanin)->nMigRefs == 0 )
Mpm_ObjRecycleCuts( p, pFanin );
if ( Mig_ObjSiblId(pObj) )
Mpm_ObjRecycleCuts( p, Mig_ObjSibl(pObj) );
@@ -1399,7 +1399,10 @@ void Mpm_ManPerform( Mpm_Man_t * p )
abctime clk = Abc_Clock();
int i;
Mig_ManForEachCi( p->pMig, pObj, i )
+ {
Mpm_ManObj(p, pObj)->iCutList = Mpm_CutCreateUnit( p, pObj );
+ Mpm_ManObj(p, pObj)->nMapRefs = Mig_ObjRefNum(pObj);
+ }
Mig_ManForEachNode( p->pMig, pObj )
Mpm_ManDeriveCuts( p, pObj );
Abc_PrintTime( 1, "Time", Abc_Clock() - clk );