diff options
| author | Alan Mishchenko <alanmi@berkeley.edu> | 2013-09-25 18:07:34 -0700 | 
|---|---|---|
| committer | Alan Mishchenko <alanmi@berkeley.edu> | 2013-09-25 18:07:34 -0700 | 
| commit | dbaf28db1db21c7a5a8d76cbbaa1f1d316f03c68 (patch) | |
| tree | 4fe1d410a54f8fb749edbe4a72b7fffc433f7b11 /src | |
| parent | e035f60d4f5284e639169de5ea4c5498e925f62e (diff) | |
| download | abc-dbaf28db1db21c7a5a8d76cbbaa1f1d316f03c68.tar.gz abc-dbaf28db1db21c7a5a8d76cbbaa1f1d316f03c68.tar.bz2 abc-dbaf28db1db21c7a5a8d76cbbaa1f1d316f03c68.zip  | |
Fixing the large MFFC problem.
Diffstat (limited to 'src')
| -rw-r--r-- | src/aig/gia/giaJf.c | 16 | 
1 files changed, 8 insertions, 8 deletions
diff --git a/src/aig/gia/giaJf.c b/src/aig/gia/giaJf.c index e55e4adb..f549c4f5 100644 --- a/src/aig/gia/giaJf.c +++ b/src/aig/gia/giaJf.c @@ -748,24 +748,24 @@ static inline int Jf_CutAreaOld( Jf_Man_t * p, int * pCut )      return Ela1;  } -int Jf_CutAreaRef_rec( Jf_Man_t * p, int * pCut, int Limit ) +int Jf_CutAreaRef_rec( Jf_Man_t * p, int * pCut )  {      int i, Var, Count = Jf_CutCost(pCut);      Jf_CutForEachVar( pCut, Var, i )      { -        if ( !Gia_ObjRefIncId(p->pGia, Var) && !Jf_CutIsTriv(Jf_ObjCutBest(p, Var), Var) && Limit > 1 ) -            Count += Jf_CutAreaRef_rec( p, Jf_ObjCutBest(p, Var), Limit - 1 ); +        if ( !Gia_ObjRefIncId(p->pGia, Var) && !Jf_CutIsTriv(Jf_ObjCutBest(p, Var), Var) ) +            Count += Jf_CutAreaRef_rec( p, Jf_ObjCutBest(p, Var) );          Vec_IntPush( p->vTemp, Var );      }      return Count;  } -int Jf_CutAreaRefEdge_rec( Jf_Man_t * p, int * pCut, int Limit ) +int Jf_CutAreaRefEdge_rec( Jf_Man_t * p, int * pCut )  {      int i, Var, Count = (Jf_CutCost(pCut) << 4) | Jf_CutSize(pCut);      Jf_CutForEachVar( pCut, Var, i )      { -        if ( !Gia_ObjRefIncId(p->pGia, Var) && !Jf_CutIsTriv(Jf_ObjCutBest(p, Var), Var) && Limit > 1 ) -            Count += Jf_CutAreaRefEdge_rec( p, Jf_ObjCutBest(p, Var), Limit - 1 ); +        if ( !Gia_ObjRefIncId(p->pGia, Var) && !Jf_CutIsTriv(Jf_ObjCutBest(p, Var), Var) ) +            Count += Jf_CutAreaRefEdge_rec( p, Jf_ObjCutBest(p, Var) );          Vec_IntPush( p->vTemp, Var );      }      return Count; @@ -775,9 +775,9 @@ static inline int Jf_CutArea( Jf_Man_t * p, int * pCut, int fEdge )      int Ela, Entry, i;      Vec_IntClear( p->vTemp );      if ( fEdge ) -        Ela = Jf_CutAreaRefEdge_rec( p, pCut, ABC_INFINITY ); +        Ela = Jf_CutAreaRefEdge_rec( p, pCut );      else -        Ela = Jf_CutAreaRef_rec( p, pCut, ABC_INFINITY ); +        Ela = Jf_CutAreaRef_rec( p, pCut );      Vec_IntForEachEntry( p->vTemp, Entry, i )          Gia_ObjRefDecId( p->pGia, Entry );      return Ela;  | 
