163 int iFaninNew =
Wlc_ObjAlloc( p, Type, Signed, End, Beg );
169 static char Buffer[100];
172 sprintf( Buffer,
"n%d", iObj );
219 Mem += 4 * p->
vPis.nCap;
220 Mem += 4 * p->
vPos.nCap;
221 Mem += 4 * p->
vCis.nCap;
222 Mem += 4 * p->
vCos.nCap;
223 Mem += 4 * p->
vFfs.nCap;
244 for ( i = 0; i < nSize-1; i++ )
247 for ( j = i+1; j < nSize; j++ )
248 if ( pCosts[j] < pCosts[best_i] )
260 *s1 = (int)(sss >> 42); *s0 = (int)(sss >> 21) & 0x1FFFFF; *s = (int)sss & 0x1FFFFF;
302 printf(
"Object %6d has range %d, which is reduced to %d in the statistics.\n",
305 printf(
"Object %6d has non-standard range %d=[%d:%d]\n", i,
Wlc_ObjRange(pObj), pObj->
End, pObj->
Beg );
326 printf(
"ID : name occurrence (occurrence)<output_range>=<input_range>.<input_range> ...\n" );
331 if ( p->
nObjs[i] == 0 )
339 if ( ((k % 8) == 7 && s1) || ((k % 10) == 9 && !s1) )
358 printf(
"Operation %s\n",
Wlc_Names[Type] );
361 if ( (
int)pObj->
Type != Type )
363 printf(
"%8d :", Counter++ );
364 printf(
"%8d : ", i );
378 printf(
"%-20s : ", p->
pName );
392 printf(
"Node type statistics:\n" );
427 for ( i = 0; i < nInts; i++ )
static void Wlc_NtkPrintDistribAddOne(Vec_Ptr_t *vTypes, Vec_Ptr_t *vOccurs, int Type, word Sign)
static int * Vec_IntArray(Vec_Int_t *p)
static ABC_NAMESPACE_IMPL_START char * Wlc_Names[WLC_OBJ_NUMBER+1]
DECLARATIONS ///.
static Vec_Ptr_t * Vec_PtrStart(int nSize)
void Wlc_ObjUpdateType(Wlc_Ntk_t *p, Wlc_Obj_t *pObj, int Type)
#define Wlc_NtkForEachCo(p, pCo, i)
typedefABC_NAMESPACE_HEADER_START struct Vec_Ptr_t_ Vec_Ptr_t
INCLUDES ///.
void Abc_NamStop(Abc_Nam_t *p)
static int Wlc_ObjId(Wlc_Ntk_t *p, Wlc_Obj_t *pObj)
void Wlc_NtkPrintNodes(Wlc_Ntk_t *p, int Type)
void Wlc_ObjCollectCopyFanins(Wlc_Ntk_t *p, int iObj, Vec_Int_t *vFanins)
static int Wlc_ObjFaninId1(Wlc_Obj_t *p)
typedefABC_NAMESPACE_HEADER_START struct Vec_Vec_t_ Vec_Vec_t
INCLUDES ///.
static int Wlc_ObjIsSigned(Wlc_Obj_t *p)
static word Wlc_NtkPrintDistribMakeSign(int s, int s0, int s1)
void Wlc_ObjAddFanins(Wlc_Ntk_t *p, Wlc_Obj_t *pObj, Vec_Int_t *vFanins)
#define Wlc_ObjForEachFanin(pObj, iFanin, i)
typedefABC_NAMESPACE_IMPL_START struct Vec_Int_t_ Vec_Int_t
DECLARATIONS ///.
void Wlc_NtkTransferNames(Wlc_Ntk_t *pNew, Wlc_Ntk_t *p)
static int Wlc_NtkObjNum(Wlc_Ntk_t *p)
#define ABC_REALLOC(type, obj, num)
int Wlc_ObjDup(Wlc_Ntk_t *pNew, Wlc_Ntk_t *p, int iObj, Vec_Int_t *vFanins)
static void Vec_WrdPush(Vec_Wrd_t *p, word Entry)
static Wlc_Obj_t * Wlc_NtkObj(Wlc_Ntk_t *p, int Id)
int nObjs[WLC_OBJ_NUMBER]
static Wlc_Obj_t * Wlc_ObjFanin0(Wlc_Ntk_t *p, Wlc_Obj_t *pObj)
static void Vec_WrdSelectSortCost2(word *pArray, int nSize, word *pCosts)
static int Wlc_ObjSign(Wlc_Obj_t *p)
static void Vec_IntErase(Vec_Int_t *p)
static int Wlc_NtkFfNum(Wlc_Ntk_t *p)
static void Vec_IntInsert(Vec_Int_t *p, int iHere, int Entry)
static void Vec_WrdReverseOrder(Vec_Wrd_t *p)
static int Wlc_ObjRange(Wlc_Obj_t *p)
static void Vec_VecFree(Vec_Vec_t *p)
static int Vec_WrdSize(Vec_Wrd_t *p)
#define Vec_WrdForEachEntry(vVec, Entry, i)
MACRO DEFINITIONS ///.
Wlc_Ntk_t * Wlc_NtkDupDfs(Wlc_Ntk_t *p)
static void Wlc_NtkCleanCopy(Wlc_Ntk_t *p)
#define ABC_SWAP(Type, a, b)
void Wlc_NtkDupDfs_rec(Wlc_Ntk_t *pNew, Wlc_Ntk_t *p, int iObj, Vec_Int_t *vFanins)
char * Mem_FlexEntryFetch(Mem_Flex_t *p, int nBytes)
void Wlc_NtkPrintDistribSortOne(Vec_Ptr_t *vTypes, Vec_Ptr_t *vOccurs, int Type)
int Wlc_ObjAlloc(Wlc_Ntk_t *p, int Type, int Signed, int End, int Beg)
static int Wlc_ObjFaninId0(Wlc_Obj_t *p)
static void Wlc_NtkCleanNameId(Wlc_Ntk_t *p)
static void Vec_IntGrow(Vec_Int_t *p, int nCapMin)
static word Vec_WrdAddToEntry(Vec_Wrd_t *p, int i, word Addition)
static int Wlc_NtkHasNameId(Wlc_Ntk_t *p)
Mem_Flex_t * Mem_FlexStart()
static void Wlc_ObjSetCopy(Wlc_Ntk_t *p, int iObj, int i)
static int Abc_LitIsCompl(int Lit)
static int Wlc_NtkPoNum(Wlc_Ntk_t *p)
static int Wlc_NtkCiNum(Wlc_Ntk_t *p)
int Wlc_NtkMemUsage(Wlc_Ntk_t *p)
#define Wlc_NtkForEachCi(p, pCi, i)
static Vec_Int_t * Vec_IntAlloc(int nCap)
FUNCTION DEFINITIONS ///.
static int Wlc_ObjFaninNum(Wlc_Obj_t *p)
int Abc_NamMemUsed(Abc_Nam_t *p)
static int Wlc_ObjHasArray(Wlc_Obj_t *p)
unsigned __int64 word
DECLARATIONS ///.
#define ABC_NAMESPACE_IMPL_END
static int Wlc_ObjIsCi(Wlc_Obj_t *p)
static int Wlc_ObjNameId(Wlc_Ntk_t *p, int iObj)
static void Vec_IntPush(Vec_Int_t *p, int Entry)
struct Wlc_Ntk_t_ Wlc_Ntk_t
static int * Wlc_ObjConstValue(Wlc_Obj_t *p)
int nAnds[WLC_OBJ_NUMBER]
static Wlc_Obj_t * Wlc_ObjCopyObj(Wlc_Ntk_t *pNew, Wlc_Ntk_t *p, Wlc_Obj_t *pObj)
static char s1[largest_string]
#define Wlc_NtkForEachObj(p, pObj, i)
MACRO DEFINITIONS ///.
static void Wlc_ObjSetNameId(Wlc_Ntk_t *p, int iObj, int i)
static void Vec_PtrWriteEntry(Vec_Ptr_t *p, int i, void *Entry)
char * Abc_NamStr(Abc_Nam_t *p, int NameId)
void Mem_FlexStop(Mem_Flex_t *p, int fVerbose)
static Vec_Wrd_t * Vec_WrdAlloc(int nCap)
FUNCTION DEFINITIONS ///.
char * Wlc_ObjName(Wlc_Ntk_t *p, int iObj)
#define ABC_NAMESPACE_IMPL_START
static void * Vec_PtrEntry(Vec_Ptr_t *p, int i)
static int Wlc_ObjCopy(Wlc_Ntk_t *p, int iObj)
static int Vec_IntSize(Vec_Int_t *p)
static word * Vec_WrdArray(Vec_Wrd_t *p)
static int * Wlc_ObjFanins(Wlc_Obj_t *p)
struct Wlc_Obj_t_ Wlc_Obj_t
BASIC TYPES ///.
void Wlc_NtkPrintDistrib(Wlc_Ntk_t *p, int fVerbose)
void Wlc_ObjSetCi(Wlc_Ntk_t *p, Wlc_Obj_t *pObj)
int Mem_FlexReadMemUsage(Mem_Flex_t *p)
static word Vec_WrdEntry(Vec_Wrd_t *p, int i)
static int Abc_Lit2Var(int Lit)
#define ABC_CALLOC(type, num)
static Wlc_Obj_t * Wlc_ObjFanin1(Wlc_Ntk_t *p, Wlc_Obj_t *pObj)
static void Vec_PtrFreeP(Vec_Ptr_t **p)
static int Wlc_NtkPiNum(Wlc_Ntk_t *p)
void Wlc_NtkFree(Wlc_Ntk_t *p)
static int Abc_BitWordNum(int nBits)
static int Wlc_NtkHasCopy(Wlc_Ntk_t *p)
void Wlc_NtkPrintStats(Wlc_Ntk_t *p, int fDistrib, int fVerbose)
static void Vec_IntFree(Vec_Int_t *p)
static void Vec_IntClear(Vec_Int_t *p)
Wlc_Ntk_t * Wlc_NtkAlloc(char *pName, int nObjsAlloc)
FUNCTION DEFINITIONS ///.
int Wlc_ObjCreate(Wlc_Ntk_t *p, int Type, int Signed, int End, int Beg, Vec_Int_t *vFanins)
typedefABC_NAMESPACE_HEADER_START struct Vec_Wrd_t_ Vec_Wrd_t
INCLUDES ///.
static void Wlc_NtkPrintDistribFromSign(word sss, int *s, int *s0, int *s1)
void Wlc_ObjSetCo(Wlc_Ntk_t *p, Wlc_Obj_t *pObj, int fFlopInput)