osprey/be/cg/x8664/cg_sched.cxx File Reference

#include "cgir.h"
#include "glob.h"
#include "tn_map.h"
#include "cgtarget.h"
#include "cg_vector.h"
#include "gra_live.h"
#include "freq.h"
#include "ti_res.h"
#include "register.h"
#include "tracing.h"
#include "config_asm.h"
#include "note.h"
#include "cgexp.h"
#include "lra.h"
#include "wn_util.h"
#include "hb_hazards.h"
#include "reg_live.h"
#include <unistd.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <math.h>
#include "cg_sched.h"

Include dependency graph for cg_sched.cxx:

Go to the source code of this file.

Data Types

type  OPR
module  MRT
type  MRT::Resource_Table_Entry

Defines

#define ASSERT(c)   FmtAssert( c, ("KEY_SCH error") );
#define Get_OPR(op)   (&opr_array[OP_map_idx(op)])
#define OPR_release_time(o)   ((o)->release_time)
#define OPR_deadline(o)   ((o)->deadline)
#define OPR_issue_time(o)   ((o)->issue_time)
#define OPR_is_scheduled(o)   ((o)->is_scheduled == true)
#define Set_OPR_is_scheduled(o)   ((o)->is_scheduled = true)
#define OPR_num_preds(o)   ((o)->num_preds)
#define OPR_num_succs(o)   ((o)->num_succs)
#define OPR_sched_order(o)   ((o)->sched_order)
#define OPR_pred_order(o)   ((o)->pred_order)
#define OPR_mem_base(o)   ((o)->mem_base)
#define OPR_mem_index(o)   ((o)->mem_index)
#define OPR_mem_ofst(o)   ((o)->mem_ofst)
#define OPR_mem_sym(o)   ((o)->mem_sym)
#define OPR_uses(o)   ((o)->uses)
#define OPR_latency(o)   ((o)->latency)

Enumerations

enum  ICU {
  NONE = 0, ALU, AGU, FADD,
  FMUL, FMISC
}

Functions/Subroutines

static void Print_Register_Set (const char *name, REGISTER_SET reg_set, ISA_REGISTER_CLASS cl)
void CG_Sched (MEM_POOL *pool, BOOL trace)

Variables

static unsigned int BBs_Processed = 0
static ICU TOP_2_Res [TOP_count]
static uint16_t sched_order = 0
static OPRopr_array = NULL
static const int num_fu []
static MRT mrt


Define Documentation

#define ASSERT ( c   )     FmtAssert( c, ("KEY_SCH error") );

#define Get_OPR ( op   )     (&opr_array[OP_map_idx(op)])

#define OPR_deadline ( o   )     ((o)->deadline)

#define OPR_is_scheduled ( o   )     ((o)->is_scheduled == true)

Definition at line 89 of file cg_sched.cxx.

#define OPR_issue_time ( o   )     ((o)->issue_time)

#define OPR_latency ( o   )     ((o)->latency)

Definition at line 100 of file cg_sched.cxx.

Referenced by KEY_SCH::Build_OPR(), and KEY_SCH::Winner().

#define OPR_mem_base ( o   )     ((o)->mem_base)

Definition at line 95 of file cg_sched.cxx.

Referenced by KEY_SCH::Addr_Generation(), KEY_SCH::Build_OPR(), and KEY_SCH::Winner().

#define OPR_mem_index ( o   )     ((o)->mem_index)

Definition at line 96 of file cg_sched.cxx.

Referenced by KEY_SCH::Addr_Generation(), KEY_SCH::Build_OPR(), and KEY_SCH::Winner().

#define OPR_mem_ofst ( o   )     ((o)->mem_ofst)

Definition at line 97 of file cg_sched.cxx.

Referenced by KEY_SCH::Build_OPR(), and KEY_SCH::Winner().

#define OPR_mem_sym ( o   )     ((o)->mem_sym)

Definition at line 98 of file cg_sched.cxx.

Referenced by KEY_SCH::Build_OPR(), and KEY_SCH::Winner().

#define OPR_num_preds ( o   )     ((o)->num_preds)

#define OPR_num_succs ( o   )     ((o)->num_succs)

Definition at line 92 of file cg_sched.cxx.

Referenced by KEY_SCH::Build_OPR().

#define OPR_pred_order ( o   )     ((o)->pred_order)

Definition at line 94 of file cg_sched.cxx.

Referenced by KEY_SCH::Build_OPR(), KEY_SCH::Schedule_BB(), and KEY_SCH::Winner().

#define OPR_release_time ( o   )     ((o)->release_time)

#define OPR_sched_order ( o   )     ((o)->sched_order)

Definition at line 93 of file cg_sched.cxx.

Referenced by KEY_SCH::Addr_Generation(), KEY_SCH::Build_OPR(), and KEY_SCH::Schedule_BB().

#define OPR_uses ( o   )     ((o)->uses)

Definition at line 99 of file cg_sched.cxx.

Referenced by KEY_SCH::Build_OPR(), and KEY_SCH::Winner().

#define Set_OPR_is_scheduled ( o   )     ((o)->is_scheduled = true)

Definition at line 90 of file cg_sched.cxx.

Referenced by KEY_SCH::Schedule_BB().


Enumeration Type Documentation

enum ICU

Enumerator:
NONE 
ALU 
AGU 
FADD 
FMUL 
FMISC 

Definition at line 52 of file cg_sched.cxx.


Function Documentation

void CG_Sched ( MEM_POOL pool,
BOOL  trace 
)

static void Print_Register_Set ( const char *  name,
REGISTER_SET  reg_set,
ISA_REGISTER_CLASS  cl 
) [static]


Variable Documentation

unsigned int BBs_Processed = 0 [static]

Definition at line 54 of file cg_sched.cxx.

MRT mrt [static]

Definition at line 186 of file cg_sched.cxx.

Referenced by Modulo_Schedule().

const int num_fu[] [static]

Initial value:

 {
  0,   
  3,   
  3,   
  1,   
  1,   
  1,   
}

Definition at line 102 of file cg_sched.cxx.

Referenced by MRT::Init_Table_Entry(), and MRT::Probe_Resources().

OPR* opr_array = NULL [static]

Definition at line 81 of file cg_sched.cxx.

uint16_t sched_order = 0 [static]

Definition at line 58 of file cg_sched.cxx.

Referenced by KEY_SCH::Addr_Generation(), and KEY_SCH::Schedule_BB().

ICU TOP_2_Res[TOP_count] [static]


Generated on Wed Apr 8 14:30:03 2009 for Open64 by  doxygen 1.5.6