251{
252 extern void Gia_ManCollapseTestTest(
Gia_Man_t *
p );
253
257 int i, nSize, Entry, k;
262 Gia_ManComputeDoms(
p );
263 Abc_PrintTime( 1, "Time", Abc_Clock() - clk );
264 vSupp = Vec_IntAlloc( 1000 );
265 vSuppRefs = Vec_IntAlloc( 1000 );
267 {
268 if ( !Gia_ObjIsAnd(pObj) && !Gia_ObjIsCo(pObj) )
269 continue;
270 if ( Gia_ObjDom(
p, pObj) != i )
271 continue;
272 if ( Gia_ObjIsCo(pObj) )
273 pObj = Gia_ObjFanin0(pObj);
274 if ( !Gia_ObjIsAnd(pObj) )
275 continue;
277 if ( nSize < 10 )
278 continue;
279
280 Vec_IntSelectSortCost2( Vec_IntArray(vSupp), Vec_IntSize(vSupp), Vec_IntArray(vSuppRefs) );
281
282 printf( "Obj %6d : ", i );
283 printf( "Cone = %4d ", nSize );
284 printf( "Supp = %4d ", Vec_IntSize(vSupp) );
285
286
287 printf( "\n" );
288
289
290 for ( k = 0; k < Vec_IntSize(vSupp); k++ )
291 if ( Vec_IntEntry(vSuppRefs, k) == 1 )
292 break;
293 k = Abc_MinInt( k, 3 );
294 k = 0;
295
296
299 Gia_ManCollapseTestTest( pNew );
300
302 }
303 Vec_IntFree( vSuppRefs );
304 Vec_IntFree( vSupp );
305}
typedefABC_NAMESPACE_IMPL_START struct Vec_Int_t_ Vec_Int_t
DECLARATIONS ///.
Gia_Man_t * Gia_ManDomDerive(Gia_Man_t *p, Gia_Obj_t *pRoot, Vec_Int_t *vSupp, int nVars)
void Gia_ManStop(Gia_Man_t *p)
int Gia_NodeMffcSizeSupp(Gia_Man_t *p, Gia_Obj_t *pNode, Vec_Int_t *vSupp)
struct Gia_Obj_t_ Gia_Obj_t
struct Gia_Man_t_ Gia_Man_t
void Gia_DumpAiger(Gia_Man_t *p, char *pFilePrefix, int iFileNum, int nFileNumDigits)
void Gia_ManCreateRefs(Gia_Man_t *p)
#define Gia_ManForEachObj(p, pObj, i)
MACRO DEFINITIONS ///.
int Gia_ManLevelNum(Gia_Man_t *p)