summaryrefslogtreecommitdiffstats
path: root/src/opt/sfm/sfmWin.c
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2013-05-31 00:56:10 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2013-05-31 00:56:10 -0700
commitba309121d7f1dbc9071a552d459bcaa6be7da31b (patch)
tree7f3ea333501cc141d854ecf086890a22c442f271 /src/opt/sfm/sfmWin.c
parent338845a21da672285705b9aae333768f2ba5dd96 (diff)
downloadabc-ba309121d7f1dbc9071a552d459bcaa6be7da31b.tar.gz
abc-ba309121d7f1dbc9071a552d459bcaa6be7da31b.tar.bz2
abc-ba309121d7f1dbc9071a552d459bcaa6be7da31b.zip
New MFS package.
Diffstat (limited to 'src/opt/sfm/sfmWin.c')
-rw-r--r--src/opt/sfm/sfmWin.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/opt/sfm/sfmWin.c b/src/opt/sfm/sfmWin.c
index db6bd0ea..f12474c9 100644
--- a/src/opt/sfm/sfmWin.c
+++ b/src/opt/sfm/sfmWin.c
@@ -215,7 +215,7 @@ void Sfm_NtkAddDivisors( Sfm_Ntk_t * p, int iNode, int nLevelMax )
return;
// skip TFI nodes, PO nodes, or nodes with high logic level
if ( Sfm_ObjIsTravIdCurrent(p, iFanout) || Sfm_ObjIsPo(p, iFanout) ||
- (p->pPars->fFixLevel && Sfm_ObjLevel(p, iFanout) >= nLevelMax) )
+ (p->pPars->fFixLevel && Sfm_ObjLevel(p, iFanout) > nLevelMax) )
continue;
// handle single-input nodes
if ( Sfm_ObjFaninNum(p, iFanout) == 1 )
@@ -311,7 +311,8 @@ int Sfm_NtkCreateWindow( Sfm_Ntk_t * p, int iNode, int fVerbose )
Sfm_NtkIncrementTravId2( p );
Vec_IntForEachEntry( p->vDivs, iTemp, i )
if ( Vec_IntSize(p->vDivs) < p->pPars->nWinSizeMax + 0 )
- Sfm_NtkAddDivisors( p, iTemp, Sfm_ObjLevel(p, iNode) );
+// Sfm_NtkAddDivisors( p, iTemp, Sfm_ObjLevel(p, iNode) - 1 );
+ Sfm_NtkAddDivisors( p, iTemp, p->nLevelMax - Sfm_ObjLevelR(p, iNode) );
}
if ( Vec_IntSize(p->vDivs) > p->pPars->nWinSizeMax )
{