198 int nDivsPlus = 0, nTrueSupp;
202 Abc_NtkIncrementTravId( pNode->
pNtk );
208 nTrueSupp += Abc_ObjIsCi(pObj);
215 Abc_NtkIncrementTravId( pNode->
pNtk );
219 Abc_NodeSetTravIdCurrent( pObj );
226 vDivs = Vec_PtrAlloc(
p->pPars->nWinMax );
229 if ( !Abc_NodeIsTravIdPrevious(pObj) )
231 if ( (
int)pObj->
Level > nLevDivMax )
233 Vec_PtrPush( vDivs, pObj );
234 if ( Vec_PtrSize(vDivs) >=
p->pPars->nWinMax )
237 Vec_PtrFree( vCone );
240 if ( Vec_PtrSize(vDivs) <
p->pPars->nWinMax )
247 if (
p->pPars->nFanoutsMax && f >
p->pPars->nFanoutsMax )
250 if ( Abc_NodeIsTravIdPrevious(pFanout) )
253 if ( Abc_NodeIsTravIdCurrent(pFanout) )
256 if ( !Abc_ObjIsNode(pFanout) )
259 if ( (
int)pFanout->
Level > nLevDivMax )
263 if ( !Abc_NodeIsTravIdPrevious(pFanin) )
265 if ( m < Abc_ObjFaninNum(pFanout) )
271 Vec_PtrPush( vDivs, pFanout );
273 Vec_PtrPushUnique(
p->vNodes, pFanout );
274 Abc_NodeSetTravIdPrevious( pFanout );
276 if ( Vec_PtrSize(vDivs) >=
p->pPars->nWinMax )
279 if ( Vec_PtrSize(vDivs) >=
p->pPars->nWinMax )
282 p->nMaxDivs += (Vec_PtrSize(vDivs) >=
p->pPars->nWinMax);
289 Vec_PtrPush( vDivs, pFanin );