GCC Middle and Back End API Reference
common_sched_info_def Struct Reference

#include <sched-int.h>

Data Fields

void(* fix_recovery_cfg )(int, int, int)
void(* add_block )(basic_block, basic_block)
int(* estimate_number_of_insns )(basic_block)
int(* luid_for_non_insn )(rtx)
enum sched_pass_id_t sched_pass_id

Detailed Description

   Hooks that are common to all the schedulers.  

Field Documentation

void(* common_sched_info_def::add_block)(basic_block, basic_block)
     Called to notify frontend, that new basic block is being added.
     The first parameter - new basic block.
     The second parameter - block, after which new basic block is being added,
     or EXIT_BLOCK_PTR, if recovery block is being added,
     or NULL, if standalone block is being added.  
int(* common_sched_info_def::estimate_number_of_insns)(basic_block)
     Estimate number of insns in the basic block.  
void(* common_sched_info_def::fix_recovery_cfg)(int, int, int)
     Called after blocks were rearranged due to movement of jump instruction.
     The first parameter - index of basic block, in which jump currently is.
     The second parameter - index of basic block, in which jump used
     to be.
     The third parameter - index of basic block, that follows the second

Referenced by create_check_block_twin().

int(* common_sched_info_def::luid_for_non_insn)(rtx)
     Given a non-insn (!INSN_P (x)) return
     -1 - if this rtx don't need a luid.
     0 - if it should have the same luid as the previous insn.
     1 - if it needs a separate luid.  
enum sched_pass_id_t common_sched_info_def::sched_pass_id
     Scheduler pass identifier.  It is preferably used in assertions.  

Referenced by dump_insn_location().

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