diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2013-05-24 22:35:22 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2013-05-24 22:35:22 -0700 |
commit | d5234332fb29b7b50220df6a09d913d6832a425c (patch) | |
tree | e53657c8789830bee75166c61df9eee3f97d06d3 /src/opt/sfm/sfmWin.c | |
parent | 283abd4795bd5c45d7dc51abd2e097a1794bad5d (diff) | |
download | abc-d5234332fb29b7b50220df6a09d913d6832a425c.tar.gz abc-d5234332fb29b7b50220df6a09d913d6832a425c.tar.bz2 abc-d5234332fb29b7b50220df6a09d913d6832a425c.zip |
New MFS package.
Diffstat (limited to 'src/opt/sfm/sfmWin.c')
-rw-r--r-- | src/opt/sfm/sfmWin.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/opt/sfm/sfmWin.c b/src/opt/sfm/sfmWin.c index e0baa96f..893a4592 100644 --- a/src/opt/sfm/sfmWin.c +++ b/src/opt/sfm/sfmWin.c @@ -245,6 +245,7 @@ int Sfm_NtkCreateWindow( Sfm_Ntk_t * p, int iNode, int fVerbose ) assert( Sfm_ObjIsNode( p, iNode ) ); Vec_IntClear( p->vLeaves ); // leaves Vec_IntClear( p->vNodes ); // internal + Vec_IntClear( p->vDivs ); // divisors // collect transitive fanin Sfm_NtkIncrementTravId( p ); Sfm_NtkCollectTfi_rec( p, iNode ); @@ -266,12 +267,13 @@ int Sfm_NtkCreateWindow( Sfm_Ntk_t * p, int iNode, int fVerbose ) p->timeWin += clock() - clk; // collect divisors of the TFI nodes clk = clock(); - Vec_IntClear( p->vDivs ); Vec_IntAppend( p->vDivs, p->vLeaves ); Vec_IntAppend( p->vDivs, p->vNodes ); Sfm_NtkIncrementTravId2( p ); Vec_IntForEachEntry( p->vDivs, iTemp, i ) - Sfm_NtkAddDivisors( p, iTemp ); + if ( Vec_IntSize(p->vDivs) < p->pPars->nDivNumMax ) + Sfm_NtkAddDivisors( p, iTemp ); + p->nTotalDivs += Vec_IntSize(p->vDivs); p->timeDiv += clock() - clk; if ( !fVerbose ) return 1; |