GCC Middle and Back End API Reference
_sel_insn_data Struct Reference

#include <sel-sched-ir.h>

Collaboration diagram for _sel_insn_data:

Data Fields

expr_def expr
int ws_level
int seqno
regset live
bitmap analyzed_deps
bitmap found_deps
bitmap originators
htab_t transformed_insns
struct deps_desc deps_context
insn_t sched_next
int sched_cycle
int ready_cycle
ds_t spec_checked_ds
BOOL_BITFIELD live_valid_p: 1
BOOL_BITFIELD asm_p: 1
BOOL_BITFIELD after_stall_p: 1

Detailed Description

   Indexed by INSN_LUID, the collection of all data associated with
   a single instruction that is in the stream.  

Field Documentation

BOOL_BITFIELD _sel_insn_data::after_stall_p
     True when an insn is scheduled after we've determined that a stall is
     required.
     This is used when emulating the Haifa scheduler for bundling.  
bitmap _sel_insn_data::analyzed_deps
     An INSN_UID bit is set when deps analysis result is already known.  
BOOL_BITFIELD _sel_insn_data::asm_p
     Insn is an ASM.  
struct deps_desc _sel_insn_data::deps_context
     A context incapsulating this insn.  
expr_def _sel_insn_data::expr
     The expression that contains vinsn for this insn and some
     flow-sensitive data like priority.  
bitmap _sel_insn_data::found_deps
     An INSN_UID bit is set when a hard dep was found, not set when
     no dependence is found.  This is meaningful only when the analyzed_deps
     bitmap has its bit set.  
regset _sel_insn_data::live
     A liveness data computed above this insn.  
BOOL_BITFIELD _sel_insn_data::live_valid_p
     Whether the live set valid or not.  
bitmap _sel_insn_data::originators
     An INSN_UID bit is set when this is a bookkeeping insn generated from
     a parent with this uid.  If a parent is a bookkeeping copy, all its
     originators are transitively included in this set.  
int _sel_insn_data::ready_cycle
     Cycle at which insn's data will be fully ready.  
int _sel_insn_data::sched_cycle
     Cycle at which insn was scheduled.  It is greater than zero if insn was
     scheduled.  This is used for bundling.  
insn_t _sel_insn_data::sched_next
     This field is initialized at the beginning of scheduling and is used
     to handle sched group instructions.  If it is non-null, then it points
     to the instruction, which should be forced to schedule next.  Such
     instructions are unique.  
int _sel_insn_data::seqno
     A number that helps in defining a traversing order for a region.  
ds_t _sel_insn_data::spec_checked_ds
     Speculations that are being checked by this insn.  
htab_t _sel_insn_data::transformed_insns
     A hashtable caching the result of insn transformations through this one.  
int _sel_insn_data::ws_level
     If (WS_LEVEL == GLOBAL_LEVEL) then AV is empty.  

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