|
GCC Middle and Back End API Reference
|
#include <reload.h>

Data Fields | |
| struct insn_chain * | next |
| struct insn_chain * | prev |
| struct insn_chain * | next_need_reload |
| rtx | insn |
| int | block |
| unsigned int | need_reload:1 |
| unsigned int | need_operand_change:1 |
| unsigned int | need_elim:1 |
| unsigned int | is_caller_save_insn:1 |
| bitmap_head | live_throughout |
| bitmap_head | dead_or_set |
| struct reload * | rld |
| int | n_reloads |
| HARD_REG_SET | used_spill_regs |
This structure describes instructions which are relevant for reload. Apart from all regular insns, this also includes CODE_LABELs, since they must be examined for register elimination.
| int insn_chain::block |
The basic block this insn is in.
| bitmap_head insn_chain::dead_or_set |
Referenced by insert_restore(), print_insn_chains(), replace_reg_with_saved_mem(), and setup_reg_equiv().
| rtx insn_chain::insn |
The rtx of the insn.
Referenced by do_output_reload(), maybe_fix_stack_asms(), and saved_hard_reg_compare_func().
| unsigned int insn_chain::is_caller_save_insn |
Nonzero if this insn was inserted by perform_caller_saves.
| bitmap_head insn_chain::live_throughout |
Register life information: record all live hard registers, and
all live pseudos that have a hard register. This set also
contains pseudos spilled by IRA.
Referenced by save_call_clobbered_regs(), and saved_hard_reg_compare_func().
| int insn_chain::n_reloads |
Referenced by maybe_fix_stack_asms().
| unsigned int insn_chain::need_elim |
Nonzero if eliminate_regs_in_insn said it requires eliminations.
Referenced by maybe_fix_stack_asms(), and spill_hard_reg().
| unsigned int insn_chain::need_operand_change |
Nonzero if find_reloads needs to be run during reload_as_needed to
perform modifications on any operands.
Referenced by maybe_fix_stack_asms().
| unsigned int insn_chain::need_reload |
Nonzero if find_reloads said the insn requires reloading.
Referenced by maybe_fix_stack_asms().
| struct insn_chain* insn_chain::next |
Links to the neighbor instructions.
Referenced by maybe_fix_stack_asms(), and saved_hard_reg_compare_func().
| struct insn_chain* insn_chain::next_need_reload |
Link through a chains set up by calculate_needs_all_insns, containing
all insns that need reloading.
Referenced by maybe_fix_stack_asms().
| struct insn_chain * insn_chain::prev |
Referenced by maybe_fix_stack_asms().
| struct reload* insn_chain::rld |
Copies of the global variables computed by find_reloads.
| HARD_REG_SET insn_chain::used_spill_regs |
Indicates which registers have already been used for spills.
Referenced by elimination_target_reg_p().