osprey/be/cg/cg_sched_est.cxx File Reference

#include <stdint.h>
#include <alloca.h>
#include "defs.h"
#include "tracing.h"
#include "cgir.h"
#include "cg_loop.h"
#include "cg_flags.h"
#include "cg_sched_est.h"
#include "cxx_memory.h"
#include "hb_sched.h"

Include dependency graph for cg_sched_est.cxx:

Go to the source code of this file.

Defines

#define __STDC_LIMIT_MACROS
#define LATENCY_NOT_COMPUTED   ((UINT32)-1)
#define LATENCY_IGNORE   ((UINT32)-2)

Functions/Subroutines

BOOL tracing (void)
static UINT32 Get_Latency_To (CG_SCHED_EST *se, OP *op)
static void Set_Latency_To (CG_SCHED_EST *se, OP *op, UINT32 latency)
static OPFind_Reaching_Def (CG_SCHED_EST *se, OP *op, UINT8 i)
static UINT32 Calc_Latency_To (CG_SCHED_EST *se, OP *op)
static UINT32 Latency_Thru (CG_SCHED_EST *se, OP *op, INT32 latency)
static UINT32 Critical_Path_Len (CG_SCHED_EST *se)
static UINT32 Resource_Min_Cycles (CG_SCHED_EST *se)
void CG_SCHED_EST_Print (FILE *fp, CG_SCHED_EST *se)
CG_SCHED_ESTCG_SCHED_EST_Create_Empty (MEM_POOL *pool, SCHED_EST_TYPE type)
CG_SCHED_ESTCG_SCHED_EST_Path_Create (BB_SET *path, BB_MAP bb_ests, MEM_POOL *pool, SCHED_EST_TYPE type)
CG_SCHED_ESTCG_SCHED_EST_Create (BB *bb, MEM_POOL *pool, SCHED_EST_TYPE type)
void CG_SCHED_EST_Delete (CG_SCHED_EST *se)
static void Clone_Mappings (CG_SCHED_EST *to, CG_SCHED_EST *from, MEM_POOL *pool)
CG_SCHED_ESTCG_SCHED_EST_Clone (CG_SCHED_EST *se, MEM_POOL *pool)
BB_MAP BB_MAPfloat_Create (void)
float BB_MAPfloat_Get (BB_MAP map, BB *bb)
void BB_MAPfloat_Set (BB_MAP map, BB *bb, float val)
static BOOL Is_Region (BB_SET *bbs, BB *entry, BOOL recursive)
BOOL CG_SCHED_EST_Is_Region (BB_SET *region, BB *entry)
static float Avg_Cost_Path (BB_SET *region, BB *entry, BB_MAP ests, SCHED_EST_TYPE type)
float CG_SCHED_EST_Avg_Cycles_Thru (BB_SET *region, BB *entry, BB_MAP ests, SCHED_EST_TYPE type)
void CG_SCHED_EST_Ignore_Op (CG_SCHED_EST *se, OP *op)
UINT32 CG_SCHED_EST_Resource_Cycles (CG_SCHED_EST *se)
UINT32 CG_SCHED_EST_Critical_Length (CG_SCHED_EST *se)
UINT32 CG_SCHED_EST_Cycles (CG_SCHED_EST *se)
UINT32 CG_SCHED_EST_BB_Cycles (BB *bb, SCHED_EST_TYPE type)
static void Append_Mappings (CG_SCHED_EST *to, CG_SCHED_EST *from)
void CG_SCHED_EST_Append_Scheds (CG_SCHED_EST *se, CG_SCHED_EST *other_se)
float CG_SCHED_EST_Region_Cycles (BB_SET *region, BB *entry, BOOL merged, SCHED_EST_TYPE type)

Variables

BOOL CG_SCHED_EST_calc_dep_graph = FALSE
BOOL CG_SCHED_EST_use_locs = FALSE
INT32 CG_SCHED_EST_call_cost = 100


Define Documentation

#define __STDC_LIMIT_MACROS

Definition at line 41 of file cg_sched_est.cxx.

#define LATENCY_IGNORE   ((UINT32)-2)

#define LATENCY_NOT_COMPUTED   ((UINT32)-1)

Definition at line 59 of file cg_sched_est.cxx.

Referenced by Critical_Path_Len(), and Latency_Thru().


Function Documentation

static void Append_Mappings ( CG_SCHED_EST to,
CG_SCHED_EST from 
) [static]

static float Avg_Cost_Path ( BB_SET *  region,
BB entry,
BB_MAP  ests,
SCHED_EST_TYPE  type 
) [static]

BB_MAP BB_MAPfloat_Create ( void   )  [inline]

Definition at line 448 of file cg_sched_est.cxx.

References BB_MAP32_Create.

float BB_MAPfloat_Get ( BB_MAP  map,
BB bb 
) [inline]

Definition at line 451 of file cg_sched_est.cxx.

References BB_MAP32_Get(), and INT32.

void BB_MAPfloat_Set ( BB_MAP  map,
BB bb,
float  val 
) [inline]

Definition at line 458 of file cg_sched_est.cxx.

References BB_MAP32_Set(), and INT32.

static UINT32 Calc_Latency_To ( CG_SCHED_EST se,
OP op 
) [static]

void CG_SCHED_EST_Append_Scheds ( CG_SCHED_EST se,
CG_SCHED_EST other_se 
)

float CG_SCHED_EST_Avg_Cycles_Thru ( BB_SET *  region,
BB entry,
BB_MAP  ests,
SCHED_EST_TYPE  type 
)

Definition at line 598 of file cg_sched_est.cxx.

References Avg_Cost_Path().

Referenced by CG_SCHED_EST_Region_Cycles(), and LOOP_DESCR_Estimate_Cycles().

UINT32 CG_SCHED_EST_BB_Cycles ( BB bb,
SCHED_EST_TYPE  type 
)

CG_SCHED_EST* CG_SCHED_EST_Clone ( CG_SCHED_EST se,
MEM_POOL pool 
)

CG_SCHED_EST* CG_SCHED_EST_Create ( BB bb,
MEM_POOL pool,
SCHED_EST_TYPE  type 
)

CG_SCHED_EST* CG_SCHED_EST_Create_Empty ( MEM_POOL pool,
SCHED_EST_TYPE  type 
)

UINT32 CG_SCHED_EST_Critical_Length ( CG_SCHED_EST se  ) 

Definition at line 641 of file cg_sched_est.cxx.

References cg_sched_est::cached_crit_path_len, and Critical_Path_Len().

Referenced by Avg_Cost_Path().

UINT32 CG_SCHED_EST_Cycles ( CG_SCHED_EST se  ) 

void CG_SCHED_EST_Delete ( CG_SCHED_EST se  ) 

void CG_SCHED_EST_Ignore_Op ( CG_SCHED_EST se,
OP op 
)

Definition at line 608 of file cg_sched_est.cxx.

Referenced by Cloned_Gain(), and Create_Sched_Est().

BOOL CG_SCHED_EST_Is_Region ( BB_SET *  region,
BB entry 
)

Definition at line 537 of file cg_sched_est.cxx.

References FALSE, and Is_Region().

CG_SCHED_EST* CG_SCHED_EST_Path_Create ( BB_SET *  path,
BB_MAP  bb_ests,
MEM_POOL pool,
SCHED_EST_TYPE  type 
)

void CG_SCHED_EST_Print ( FILE fp,
CG_SCHED_EST se 
)

float CG_SCHED_EST_Region_Cycles ( BB_SET *  region,
BB entry,
BOOL  merged,
SCHED_EST_TYPE  type 
)

UINT32 CG_SCHED_EST_Resource_Cycles ( CG_SCHED_EST se  ) 

static void Clone_Mappings ( CG_SCHED_EST to,
CG_SCHED_EST from,
MEM_POOL pool 
) [static]

static UINT32 Critical_Path_Len ( CG_SCHED_EST se  )  [static]

static OP* Find_Reaching_Def ( CG_SCHED_EST se,
OP op,
UINT8  i 
) [static]

static UINT32 Get_Latency_To ( CG_SCHED_EST se,
OP op 
) [inline, static]

static BOOL Is_Region ( BB_SET *  bbs,
BB entry,
BOOL  recursive 
) [static]

static UINT32 Latency_Thru ( CG_SCHED_EST se,
OP op,
INT32  latency 
) [inline, static]

static UINT32 Resource_Min_Cycles ( CG_SCHED_EST se  )  [static]

static void Set_Latency_To ( CG_SCHED_EST se,
OP op,
UINT32  latency 
) [inline, static]

BOOL tracing ( void   )  [inline]

Definition at line 57 of file cg_sched_est.cxx.

References Get_Trace(), and TP_SCHED.


Variable Documentation

Definition at line 53 of file cg_sched_est.cxx.

Referenced by Calc_Latency_To(), and Critical_Path_Len().

Definition at line 55 of file cg_sched_est.cxx.

Referenced by Latency_Thru().


Generated on Wed Apr 8 14:25:32 2009 for Open64 by  doxygen 1.5.6