19#ifndef ABC__map__mapper__mapper_h
20#define ABC__map__mapper__mapper_h
67#define Map_IsComplement(p) (((int)((ABC_PTRUINT_T) (p) & 01)))
68#define Map_Regular(p) ((Map_Node_t *)((ABC_PTRUINT_T)(p) & ~01))
69#define Map_Not(p) ((Map_Node_t *)((ABC_PTRUINT_T)(p) ^ 01))
70#define Map_NotCond(p,c) ((Map_Node_t *)((ABC_PTRUINT_T)(p) ^ (c)))
166extern int Map_CanonComputeSlow(
unsigned uTruths[][2],
int nVarsMax,
int nVarsReal,
unsigned uTruth[],
unsigned char * puPhases,
unsigned uTruthRes[] );
172 int * pLeaves,
int nLeaves,
unsigned uPhaseLeaves );
struct Abc_Ntk_t_ Abc_Ntk_t
#define ABC_NAMESPACE_HEADER_END
#define ABC_NAMESPACE_HEADER_START
NAMESPACES ///.
void Map_ManSetOutputNames(Map_Man_t *p, char **ppNames)
Mio_Library_t * Map_ManReadGenLib(Map_Man_t *p)
unsigned char * Map_SuperReadPhases(Map_Super_t *p)
void Map_CutCreateFromNode(Map_Man_t *p, Map_Super_t *pSuper, int iRoot, unsigned uPhaseRoot, int *pLeaves, int nLeaves, unsigned uPhaseLeaves)
int Map_ManReadPass(Map_Man_t *p)
int Map_NodeReadNum(Map_Node_t *p)
void Map_MappingSetupTruthTablesLarge(unsigned uTruths[][32])
unsigned Map_CutReadPhaseBest(Map_Cut_t *p, int fPhase)
void Map_NetworkSweep(Abc_Ntk_t *pNet)
void Map_NodeSetData(Map_Node_t *p, int fPhase, char *pData)
int Map_ManReadVerbose(Map_Man_t *p)
Map_Super_t * Map_CutReadSuper1(Map_Cut_t *p)
Map_Cut_t * Map_CutAlloc(Map_Man_t *p)
DECLARATIONS ///.
Map_Super_t * Map_SuperReadNext(Map_Super_t *p)
void Map_ManSetOutputRequireds(Map_Man_t *p, Map_Time_t *pArrivals)
unsigned Map_CutReadPhase0(Map_Cut_t *p)
float Map_ManReadAreaFinal(Map_Man_t *p)
void Map_NodeSetChoice(Map_Man_t *pMan, Map_Node_t *pNodeOld, Map_Node_t *pNodeNew)
int Map_NodeComparePhase(Map_Node_t *p1, Map_Node_t *p2)
Map_Cut_t * Map_NodeReadCutBest(Map_Node_t *p, int fPhase)
int Map_ManReadFanoutViolations(Map_Man_t *p)
void Map_ManPrintTimeStats(Map_Man_t *p)
typedefABC_NAMESPACE_HEADER_START struct Map_ManStruct_t_ Map_Man_t
INCLUDES ///.
Map_Node_t * Map_NodeReadTwo(Map_Node_t *p)
int Map_ManReadInputNum(Map_Man_t *p)
FUNCTION DEFINITIONS ///.
void Map_ManSetVerbose(Map_Man_t *p, int fVerbose)
int Map_NodeIsBuf(Map_Node_t *p)
void Map_NodeSetRepr(Map_Node_t *p, Map_Node_t *pRepr)
int Map_NodeReadAigId(Map_Node_t *p)
int Map_SuperLibDeriveFromGenlib(Mio_Library_t *pLib, int fVerbose)
void Map_ManSetUseProfile(Map_Man_t *p)
int Map_NodeReadLevel(Map_Node_t *p)
void Map_ManSetNumIterations(Map_Man_t *p, int nNumIterations)
int Map_CutReadLeavesNum(Map_Cut_t *p)
int Map_SuperReadFaninNum(Map_Super_t *p)
struct Map_HashTableStruct_t_ Map_HashTable_t
int Map_NodeIsConst(Map_Node_t *p)
Map_Cut_t * Map_NodeReadCuts(Map_Node_t *p)
struct Map_MatchStruct_t_ Map_Match_t
void Map_ManSetSwitching(Map_Man_t *p, int fSwitching)
Mio_Gate_t * Map_SuperReadRoot(Map_Super_t *p)
struct Map_CutStruct_t_ Map_Cut_t
Mio_Library_t * Map_SuperLibReadGenLib(Map_SuperLib_t *p)
int Map_CanonComputeSlow(unsigned uTruths[][2], int nVarsMax, int nVarsReal, unsigned uTruth[], unsigned char *puPhases, unsigned uTruthRes[])
FUNCTION DEFINITIONS ///.
Map_Node_t ** Map_ManReadOutputs(Map_Man_t *p)
char * Map_LibraryReadFormulaStep(char *pFormula, char *pStrings[], int *pnStrings)
void Map_ManSetObeyFanoutLimits(Map_Man_t *p, int fObeyFanoutLimits)
int Map_ManReadBufNum(Map_Man_t *p)
Map_Node_t * Map_ManReadConst1(Map_Man_t *p)
Map_Node_t ** Map_ManReadInputs(Map_Man_t *p)
struct Map_SuperStruct_t_ Map_Super_t
Map_Super_t * Map_CutReadSuper0(Map_Cut_t *p)
unsigned Map_CutReadPhase1(Map_Cut_t *p)
Map_Node_t * Map_NodeCreate(Map_Man_t *p, Map_Node_t *p1, Map_Node_t *p2)
struct Map_SuperLibStruct_t_ Map_SuperLib_t
struct Map_TimeStruct_t_ Map_Time_t
Map_Node_t ** Map_ManReadBufs(Map_Man_t *p)
Map_Super_t * Map_SuperTableLookupC(Map_SuperLib_t *pLib, unsigned uTruth[])
struct Map_HashEntryStruct_t_ Map_HashEntry_t
Map_Node_t * Map_ManReadBufDriver(Map_Man_t *p, int i)
void Map_ManSetChoiceNodeNum(Map_Man_t *p, int nChoiceNodes)
int Map_NodeIsVar(Map_Node_t *p)
int Map_SuperReadNumPhases(Map_Super_t *p)
void Map_ManCreateNodeDelays(Map_Man_t *p, int LogFan)
int Map_Mapping(Map_Man_t *p)
DECLARATIONS ///.
void Map_NodeSetSwitching(Map_Node_t *p, float Switching)
Map_Super_t * Map_CutReadSuperBest(Map_Cut_t *p, int fPhase)
int Map_SuperReadNum(Map_Super_t *p)
Map_Node_t * Map_NodeBuf(Map_Man_t *p, Map_Node_t *p1)
void Map_ManSetAreaRecovery(Map_Man_t *p, int fAreaRecovery)
char * Map_SuperReadFormula(Map_Super_t *p)
void Map_ManCleanData(Map_Man_t *p)
Map_Man_t * Map_NodeReadMan(Map_Node_t *p)
void Map_ManSetSkipFanout(Map_Man_t *p, int fSkipFanout)
char * Map_NodeReadData(Map_Node_t *p, int fPhase)
Map_Man_t * Map_ManCreate(int nInputs, int nOutputs, int fVerbose)
FUNCTION DEFINITIONS ///.
Map_Node_t * Map_NodeReadOne(Map_Node_t *p)
int Map_CanonComputeFast(Map_Man_t *p, int nVarsMax, int nVarsReal, unsigned uTruth[], unsigned char *puPhases, unsigned uTruthRes[])
void Map_ManSetPass(Map_Man_t *p, int nPass)
void Map_ManSetChoiceNum(Map_Man_t *p, int nChoices)
void Map_ManSetFanoutViolations(Map_Man_t *p, int nVio)
void Map_MappingSetupTruthTables(unsigned uTruths[][2])
float Map_SuperLibReadAreaInv(Map_SuperLib_t *p)
void Map_NodeSetAigId(Map_Node_t *p, int Id)
void Map_ManFree(Map_Man_t *pMan)
void Map_ManSetInputArrivals(Map_Man_t *p, Map_Time_t *pArrivals)
void Map_ManPrintStatsToFile(char *pName, float Area, float Delay, abctime Time)
st__table * Map_CreateTableGate2Super(Map_Man_t *p)
void Map_NodeSetNextE(Map_Node_t *p, Map_Node_t *pNextE)
void Map_SuperLibFree(Map_SuperLib_t *p)
Map_Cut_t * Map_CutReadNext(Map_Cut_t *p)
Map_Node_t * Map_NodeAnd(Map_Man_t *p, Map_Node_t *p1, Map_Node_t *p2)
int Map_SuperLibReadVarsMax(Map_SuperLib_t *p)
Map_Super_t ** Map_SuperReadFanins(Map_Super_t *p)
int Map_SuperReadFanoutLimit(Map_Super_t *p)
Vec_Ptr_t * Map_CutInternalNodes(Map_Node_t *pObj, Map_Cut_t *pCut)
Map_Node_t ** Map_CutReadLeaves(Map_Cut_t *p)
int Map_NodeIsAnd(Map_Node_t *p)
Map_Time_t Map_SuperLibReadDelayInv(Map_SuperLib_t *p)
void Map_ManSetDelayTarget(Map_Man_t *p, float DelayTarget)
int Map_ManCheckConsistency(Map_Man_t *p)
int Map_ManReadOutputNum(Map_Man_t *p)
void Map_ManCreateAigIds(Map_Man_t *p, int nObjs)
Map_Time_t * Map_ManReadInputArrivals(Map_Man_t *p)
struct Map_NodeVecStruct_t_ Map_NodeVec_t
struct Map_NodeStruct_t_ Map_Node_t
float Map_ManReadRequiredGlo(Map_Man_t *p)
struct Mio_LibraryStruct_t_ Mio_Library_t
struct Mio_GateStruct_t_ Mio_Gate_t
STRUCTURE DEFINITIONS ///.
typedefABC_NAMESPACE_HEADER_START struct Vec_Ptr_t_ Vec_Ptr_t
INCLUDES ///.