66 for ( i = 0; i < p->nOutputs; i++ )
72 p->uPatRand =
ABC_ALLOC(
unsigned, p->nSimWords );
73 p->uPatCol =
ABC_ALLOC(
unsigned, p->nSimWords );
74 p->uPatRow =
ABC_ALLOC(
unsigned, p->nSimWords );
80 for ( i = 0; i < p->nOutputs; i++ )
81 for ( v = 0; v < p->nInputs; v++ )
83 Vec_VecPush( p->vSupports, i, (
void *)(ABC_PTRUINT_T)v );
106 for ( i = 0; i < p->nOutputs; i++ )
139 printf(
"Total symm = %8d.\n", p->nPairsSymm );
140 printf(
"Structural symm = %8d.\n", p->nPairsSymmStr );
141 printf(
"Total non-sym = %8d.\n", p->nPairsNonSymm );
142 printf(
"Total var pairs = %8d.\n", p->nPairsTotal );
143 printf(
"Sat runs SAT = %8d.\n", p->nSatRunsSat );
144 printf(
"Sat runs UNSAT = %8d.\n", p->nSatRunsUnsat );
145 ABC_PRT(
"Structural ", p->timeStruct );
146 ABC_PRT(
"Simulation ", p->timeSim );
147 ABC_PRT(
"Matrix ", p->timeMatr );
148 ABC_PRT(
"Counting ", p->timeCount );
149 ABC_PRT(
"Fraiging ", p->timeFraig );
151 ABC_PRT(
"TOTAL ", p->timeTotal );
static Vec_Ptr_t * Vec_PtrStart(int nSize)
void Sym_ManStop(Sym_Man_t *p)
static void Vec_VecPush(Vec_Vec_t *p, int Level, void *Entry)
static int Abc_NtkObjNumMax(Abc_Ntk_t *pNtk)
int Sim_UtilCountSuppSizes(Sim_Man_t *p, int fStruct)
static int Abc_NtkCiNum(Abc_Ntk_t *pNtk)
#define ABC_ALLOC(type, num)
typedefABC_NAMESPACE_HEADER_START struct Sym_Man_t_ Sym_Man_t
INCLUDES ///.
ABC_DLL Vec_Ptr_t * Abc_NtkDfs(Abc_Ntk_t *pNtk, int fCollectAll)
static void Vec_VecFree(Vec_Vec_t *p)
struct Sim_Pat_t_ Sim_Pat_t
static int Abc_NtkCoNum(Abc_Ntk_t *pNtk)
Vec_Ptr_t * Sim_ComputeStrSupp(Abc_Ntk_t *pNtk)
FUNCTION DEFINITIONS ///.
void Sim_UtilInfoFree(Vec_Ptr_t *p)
static Vec_Int_t * Vec_IntStart(int nSize)
Vec_Ptr_t * Sim_UtilInfoAlloc(int nSize, int nWords, int fClean)
FUNCTION DEFINITIONS ///.
static Vec_Int_t * Vec_IntAlloc(int nCap)
FUNCTION DEFINITIONS ///.
void Sim_ManPatFree(Sim_Man_t *p, Sim_Pat_t *pPat)
void Sim_ManStop(Sim_Man_t *p)
Sim_Pat_t * Sim_ManPatAlloc(Sim_Man_t *p)
#define ABC_NAMESPACE_IMPL_END
void Sim_ManPrintStats(Sim_Man_t *p)
static Vec_Vec_t * Vec_VecStart(int nSize)
#define SIM_NUM_WORDS(n)
MACRO DEFINITIONS ///.
#define ABC_NAMESPACE_IMPL_START
static Vec_Ptr_t * Vec_PtrAlloc(int nCap)
FUNCTION DEFINITIONS ///.
Vec_Ptr_t * Sim_ComputeFunSupp(Abc_Ntk_t *pNtk, int fVerbose)
Sim_Man_t * Sim_ManStart(Abc_Ntk_t *pNtk, int fLightweight)
ABC_NAMESPACE_IMPL_START Sym_Man_t * Sym_ManStart(Abc_Ntk_t *pNtk, int fVerbose)
DECLARATIONS ///.
static void Vec_IntFree(Vec_Int_t *p)
#define Sim_SuppFunHasVar(vSupps, Output, v)
static void Vec_PtrFree(Vec_Ptr_t *p)
void Sym_ManPrintStats(Sym_Man_t *p)