GCC Middle and Back End API Reference
haifa_sched_info Struct Reference

#include <sched-int.h>

Collaboration diagram for haifa_sched_info:

Data Fields

void(* init_ready_list )(void)
int(* can_schedule_ready_p )(rtx)
int(* schedule_more_p )(void)
ds_t(* new_ready )(rtx, ds_t)
int(* rank )(rtx, rtx)
const char *(* print_insn )(const_rtx, int)
int(* contributes_to_priority )(rtx, rtx)
bool(* insn_finishes_block_p )(rtx)
rtx prev_head
rtx next_tail
rtx head
rtx tail
unsigned int queue_must_finish_empty:1
int sched_max_insns_priority
void(* add_remove_insn )(rtx, int)
void(* begin_schedule_ready )(rtx insn)
void(* begin_move_insn )(rtx insn, rtx last)
basic_block(* advance_target_bb )(basic_block, rtx)
void *(* save_state )(void)
void(* restore_state )(void *)
unsigned int flags

Detailed Description

This structure holds some state of the current scheduling pass, and
   contains some function pointers that abstract out some of the non-generic
   functionality from functions such as schedule_block or schedule_insn.
   There is one global variable, current_sched_info, which points to the
   sched_info structure currently in use.   

Field Documentation

void(* haifa_sched_info::add_remove_insn)(rtx, int)
basic_block(* haifa_sched_info::advance_target_bb)(basic_block, rtx)

Referenced by commit_schedule().

void(* haifa_sched_info::begin_move_insn)(rtx insn, rtx last)

Referenced by commit_schedule().

void(* haifa_sched_info::begin_schedule_ready)(rtx insn)

Referenced by sched_emit_insn(), and schedule_block().

int(* haifa_sched_info::can_schedule_ready_p)(rtx)

Referenced by schedule_block().

int(* haifa_sched_info::contributes_to_priority)(rtx, rtx)
void(* haifa_sched_info::init_ready_list)(void)

Referenced by schedule_block().

bool(* haifa_sched_info::insn_finishes_block_p)(rtx)

Referenced by insn_finishes_cycle_p().

ds_t(* haifa_sched_info::new_ready)(rtx, ds_t)

Referenced by try_ready().

unsigned int haifa_sched_info::queue_must_finish_empty

Referenced by schedule_block(), and schedule_region().

int(* haifa_sched_info::rank)(rtx, rtx)

Referenced by rank_for_schedule().

void(* haifa_sched_info::restore_state)(void *)
void*(* haifa_sched_info::save_state)(void)

Referenced by save_backtrack_point().

int haifa_sched_info::sched_max_insns_priority
int(* haifa_sched_info::schedule_more_p)(void)

Referenced by schedule_block().


The documentation for this struct was generated from the following file: