|
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 |
Referenced by build_insn_chain(), insert_one_insn(), and save_call_clobbered_regs().
| bitmap_head insn_chain::dead_or_set |
| rtx insn_chain::insn |
Referenced by build_insn_chain(), calculate_elim_costs_all_insns(), calculate_needs_all_insns(), choose_reload_regs(), delete_caller_save_insns(), delete_output_reload(), do_input_reload(), do_output_reload(), emit_input_reload_insns(), emit_insn_if_valid_for_reload(), emit_output_reload_insns(), emit_reload_insns(), find_moveable_pseudos(), find_reg(), find_reload_regs(), gen_reload(), gen_reload_chain_without_interm_reg_p(), insert_one_insn(), maybe_fix_stack_asms(), print_insn_chain(), reload(), reload_as_needed(), save_call_clobbered_regs(), setup_save_areas(), and skip_consecutive_labels().
| unsigned int insn_chain::is_caller_save_insn |
Referenced by delete_caller_save_insns(), insert_one_insn(), new_insn_chain(), and save_call_clobbered_regs().
| bitmap_head insn_chain::live_throughout |
| int insn_chain::n_reloads |
Referenced by calculate_needs_all_insns(), choose_reload_regs(), copy_reloads(), and find_reload_regs().
| unsigned int insn_chain::need_elim |
Referenced by calculate_needs_all_insns(), new_insn_chain(), and reload_as_needed().
| unsigned int insn_chain::need_operand_change |
Referenced by calculate_needs_all_insns(), new_insn_chain(), and reload_as_needed().
| unsigned int insn_chain::need_reload |
Referenced by calculate_needs_all_insns(), finish_spills(), new_insn_chain(), and reload_as_needed().
| struct insn_chain* insn_chain::next |
Referenced by build_insn_chain(), calculate_needs_all_insns(), delete_address_reloads(), delete_caller_save_insns(), emit_output_reload_insns(), finish_spills(), insert_one_insn(), maybe_fix_stack_asms(), new_insn_chain(), print_insn_chains(), reload_as_needed(), save_call_clobbered_regs(), and setup_save_areas().
| struct insn_chain* insn_chain::next_need_reload |
Referenced by calculate_needs_all_insns(), finish_spills(), and select_reload_regs().
| struct insn_chain * insn_chain::prev |
| struct reload* insn_chain::rld |
Referenced by choose_reload_regs(), copy_reloads(), and find_reload_regs().
| HARD_REG_SET insn_chain::used_spill_regs |
Referenced by choose_reload_regs_init(), find_reload_regs(), and finish_spills().