Pin
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Enumerations | Functions
edg.cpp File Reference
#include "level_base.H"
#include "level_core.H"
#include "container.H"

Enumerations

enum  EDG_TYPE {
  LEVEL_CORE::EDG_TYPE_INVALID,
  LEVEL_CORE::EDG_TYPE_RETURN,
  LEVEL_CORE::EDG_TYPE_CALL,
  LEVEL_CORE::EDG_TYPE_LINK,
  LEVEL_CORE::EDG_TYPE_COMP,
  LEVEL_CORE::EDG_TYPE_FALSE,
  LEVEL_CORE::EDG_TYPE_BRANCH,
  LEVEL_CORE::EDG_TYPE_SWITCH,
  LEVEL_CORE::EDG_TYPE_PREFETCH,
  LEVEL_CORE::EDG_TYPE_EXCEPTION,
  LEVEL_CORE::EDG_TYPE_NORMAL,
  LEVEL_CORE::EDG_TYPE_IBRANCH,
  EDG_TYPE_LAST
}
 
enum  EDG_STATE {
  EDG_STATE_INVALID,
  EDG_STATE_LAST
}
 

Functions

ARRAYBASE LEVEL_CORE::EdgArrayBase ("edg pool", 64 *1024)
 
STRIPE< EDG_STRUCT_BASE > LEVEL_CORE::EdgStripeBase ("edg stripe base","core",&EdgArrayBase)
 
EDG LEVEL_CORE::EDG_INVALID ()
 
BOOL LEVEL_CORE::EDG_valid (EDG x)
 
INT32 LEVEL_CORE::EDG_no (EDG x)
 
BOOL LEVEL_CORE::EDG_allocated (EDG x)
 
BOOL LEVEL_CORE::EDG_mark (EDG x)
 
VOID LEVEL_CORE::EDG_mark_set (EDG x, BOOL y)
 
BOOL LEVEL_CORE::EDG_mark2 (EDG x)
 
VOID LEVEL_CORE::EDG_mark2_set (EDG x, BOOL y)
 
EDG_TYPE LEVEL_CORE::EDG_type (EDG x)
 
VOID LEVEL_CORE::EDG_type_set (EDG x, EDG_TYPE y)
 
BOOL LEVEL_CORE::EDG_linked (EDG x)
 
BBL LEVEL_CORE::EDG_bbl_src (EDG x)
 
BBL LEVEL_CORE::EDG_bbl_dst (EDG x)
 
EDG LEVEL_CORE::EDG_next_succ (EDG x)
 
EDG LEVEL_CORE::EDG_next_pred (EDG x)
 
EXT LEVEL_CORE::EDG_ext (EDG x)
 
INT32 LEVEL_CORE::EDG_weight (EDG x)
 
VOID LEVEL_CORE::EDG_weight_set (EDG x, INT32 y)
 
LOCALINLINE VOID LEVEL_CORE::EDG_allocated_set (EDG x, BOOL y)
 
LOCALINLINE VOID LEVEL_CORE::EDG_linked_set (EDG x, BOOL y)
 
LOCALINLINE VOID LEVEL_CORE::EDG_next_succ_set (EDG x, EDG y)
 
LOCALINLINE VOID LEVEL_CORE::EDG_next_pred_set (EDG x, EDG y)
 
LOCALINLINE VOID LEVEL_CORE::EDG_bbl_dst_set (EDG x, BBL y)
 
LOCALINLINE VOID LEVEL_CORE::EDG_bbl_src_set (EDG x, BBL y)
 
VOID LEVEL_CORE::EDG_GarbageCollect ()
 
EDG LEVEL_CORE::EDG_Alloc ()
 
VOID LEVEL_CORE::EDG_Free (EDG edg)
 
EDG LEVEL_CORE::EDG_AllocAndLink (BBL src, BBL dst, EDG_TYPE type)
 
VOID LEVEL_CORE::EDG_PredInsertAfter (EDG edg, EDG after, BBL parent)
 
VOID LEVEL_CORE::EDG_PredPrepend (EDG edg, BBL parent)
 
VOID LEVEL_CORE::EDG_SuccInsertAfter (EDG edg, EDG after, BBL parent)
 
VOID LEVEL_CORE::EDG_SuccPrepend (EDG edg, BBL parent)
 
VOID LEVEL_CORE::EDG_Unlink (EDG edg)
 
LOCALFUN VOID LEVEL_CORE::EDG_UnlinkPred (EDG edg)
 
VOID LEVEL_CORE::EDG_UnlinkSucc (EDG edg)
 
BOOL LEVEL_CORE::BBL_CheckSuccEdgType (BBL bbl, EDG_TYPE et)
 
EDG LEVEL_CORE::BBL_SuccEdgFind (BBL src, EDG_TYPE type)
 
UINT32 LEVEL_CORE::BBL_AllowableSuccEdgCount (BBL bbl, UINT32 max)
 
LOCALFUN VOID LEVEL_CORE::EDG_UpdateBranchTargetField (EDG edg)
 
BOOL LEVEL_CORE::EDG_InterProcedural (EDG e)
 
VOID LEVEL_CORE::EDG_Link (EDG edg, BBL src, BBL dst)
 
VOID LEVEL_CORE::EDG_MoveSuccEdges (BBL a, BBL b)
 
VOID LEVEL_CORE::EDG_MovePredEdges (BBL bbl_from, BBL bbl_to)
 
string LEVEL_CORE::EDG_StringShort (EDG_TYPE type)
 
string LEVEL_CORE::str (EDG edg)
 
string LEVEL_CORE::EDG_StringShort (EDG edg)
 
BOOL LEVEL_CORE::EDG_IsFallthrough (EDG edg)
 
EDG LEVEL_CORE::BBL_PredEdgFind (BBL dst, EDG_TYPE type)
 
EDG LEVEL_CORE::BBL_SuccEdgFind (BBL src, BBL dst)
 
EDG LEVEL_CORE::BBL_SuccEdgFindWithType (BBL src, BBL dst, EDG_TYPE type)
 
EDG LEVEL_CORE::BBL_SuccEdgFindPcRelative (BBL bbl)
 
UINT32 LEVEL_CORE::BBL_NumPreds (BBL bbl)
 
UINT32 LEVEL_CORE::BBL_NumPredsInterproc (BBL bbl)
 
UINT32 LEVEL_CORE::BBL_NumPredsInterprocNonCall (BBL bbl)
 
UINT32 LEVEL_CORE::BBL_NumSuccs (BBL bbl)
 
VOID LEVEL_CORE::EDG_Check (EDG edg)
 

Detailed Description

This file contains EDG primitives