55 p->nCutsMax = nCutsMax;
56 p->nLeafMax = nLeafMax;
57 p->fVerbose = fVerbose;
70 p->nCutSize =
sizeof(
Csw_Cut_t) +
sizeof(
int) * nLeafMax +
sizeof(unsigned) * p->nTruthWords;
81 p->puTemp[0] =
ABC_ALLOC(
unsigned, 4 * p->nTruthWords );
82 p->puTemp[1] = p->puTemp[0] + p->nTruthWords;
83 p->puTemp[2] = p->puTemp[1] + p->nTruthWords;
84 p->puTemp[3] = p->puTemp[2] + p->nTruthWords;
105 printf(
"Beg = %7d. End = %7d. (%6.2f %%) Try = %7d. Cuts = %8d.\n",
106 nNodesBeg, nNodesEnd, 100.0*(nNodesBeg-nNodesEnd)/nNodesBeg,
108 printf(
"Triv0 = %6d. Triv1 = %6d. Triv2 = %6d. Cut-replace = %6d.\n",
109 p->nNodesTriv0, p->nNodesTriv1, p->nNodesTriv2, p->nNodesCuts );
110 ABC_PRTP(
"Cuts ", p->timeCuts, p->timeTotal );
111 ABC_PRTP(
"Hashing ", p->timeHash, p->timeTotal );
112 ABC_PRTP(
"Other ", p->timeOther, p->timeTotal );
113 ABC_PRTP(
"TOTAL ", p->timeTotal, p->timeTotal );
static int Abc_PrimeCudd(unsigned int p)
int Csw_TableCountCuts(Csw_Man_t *p)
typedefABC_NAMESPACE_HEADER_START struct Csw_Man_t_ Csw_Man_t
INCLUDES ///.
void Csw_ManStop(Csw_Man_t *p)
typedefABC_NAMESPACE_HEADER_START struct Aig_Man_t_ Aig_Man_t
INCLUDES ///.
void Aig_MmFixedStop(Aig_MmFixed_t *p, int fVerbose)
#define Aig_ManForEachCi(p, pObj, i)
ITERATORS ///.
#define ABC_ALLOC(type, num)
ABC_NAMESPACE_IMPL_START Csw_Man_t * Csw_ManStart(Aig_Man_t *pMan, int nCutsMax, int nLeafMax, int fVerbose)
DECLARATIONS ///.
static int Abc_TruthWordNum(int nVars)
Aig_MmFixed_t * Aig_MmFixedStart(int nEntrySize, int nEntriesMax)
FUNCTION DEFINITIONS ///.
static int Aig_ManNodeNum(Aig_Man_t *p)
#define ABC_PRTP(a, t, T)
static Aig_Obj_t * Aig_ManCi(Aig_Man_t *p, int i)
static int Aig_ManCiNum(Aig_Man_t *p)
#define ABC_NAMESPACE_IMPL_END
Aig_Man_t * Aig_ManStartFrom(Aig_Man_t *p)
static int Aig_ManObjNumMax(Aig_Man_t *p)
static Aig_Obj_t * Aig_ManConst1(Aig_Man_t *p)
#define ABC_NAMESPACE_IMPL_START
static void Csw_ObjSetEquiv(Csw_Man_t *p, Aig_Obj_t *pObj, Aig_Obj_t *pEquiv)
struct Csw_Cut_t_ Csw_Cut_t