33static inline Aig_Obj_t * Aig_ObjChild0Frames(
Aig_Obj_t ** pObjMap,
int nFs,
Aig_Obj_t * pObj,
int i ) {
return Aig_ObjFanin0(pObj)? Aig_NotCond(Aig_ObjFrames(pObjMap,nFs,Aig_ObjFanin0(pObj),i), Aig_ObjFaninC0(pObj)) : NULL; }
34static inline Aig_Obj_t * Aig_ObjChild1Frames(
Aig_Obj_t ** pObjMap,
int nFs,
Aig_Obj_t * pObj,
int i ) {
return Aig_ObjFanin1(pObj)? Aig_NotCond(Aig_ObjFrames(pObjMap,nFs,Aig_ObjFanin1(pObj),i), Aig_ObjFaninC1(pObj)) : NULL; }
54 Aig_Obj_t * pObj, * pObjLi, * pObjLo, * pObjNew;
60 memset( pObjMap, 0,
sizeof(
Aig_Obj_t *) * nFs * Aig_ManObjNumMax(pAig) );
64 pFrames->pName = Abc_UtilStrsav( pAig->pName );
65 pFrames->pSpec = Abc_UtilStrsav( pAig->pSpec );
67 for ( f = 0; f < nFs; f++ )
68 Aig_ObjSetFrames( pObjMap, nFs, Aig_ManConst1(pAig), f, Aig_ManConst1(pFrames) );
70 for ( f = 0; f < nFs; f++ )
77 Aig_ObjSetFrames( pObjMap, nFs, pObj, 0, Aig_ManConst0(pFrames) );
86 for ( f = 0; f < nFs; f++ )
95 pObjNew =
Aig_And( pFrames, Aig_ObjChild0Frames(pObjMap,nFs,pObj,f), Aig_ObjChild1Frames(pObjMap,nFs,pObj,f) );
96 Aig_ObjSetFrames( pObjMap, nFs, pObj, f, pObjNew );
101 pObjNew = Aig_ObjChild0Frames(pObjMap,nFs,pObjLi,f);
103 Aig_ObjSetFrames( pObjMap, nFs, pObjLo, f+1, pObjNew );
108 for ( f = fEnlarge?nFs-1:0; f < nFs; f++ )
111 pObjNew =
Aig_ObjCreateCo( pFrames, Aig_ObjChild0Frames(pObjMap,nFs,pObj,f) );
112 Aig_ObjSetFrames( pObjMap, nFs, pObj, f, pObjNew );
117 pFrames->nRegs = pAig->nRegs;
120 pObjNew =
Aig_ObjCreateCo( pFrames, Aig_ObjChild0Frames(pObjMap,nFs,pObj,fEnlarge?0:nFs-1) );
121 Aig_ObjSetFrames( pObjMap, nFs, pObj, nFs-1, pObjNew );
Aig_Man_t * Aig_ManFrames(Aig_Man_t *pAig, int nFs, int fInit, int fOuts, int fRegs, int fEnlarge, Aig_Obj_t ***ppObjMap)
FUNCTION DEFINITIONS ///.