GCC Middle and Back End API Reference
reg_equivs_s Struct Reference

#include <reload.h>

Collaboration diagram for reg_equivs_s:

Data Fields

rtx constant
rtx invariant
rtx memory_loc
rtx address
rtx mem
rtx alt_mem_list
rtx init

Detailed Description

   Register equivalences.  Indexed by register number.  

Field Documentation

rtx reg_equivs_s::address
     The address of stack slot to which pseudo reg N is equivalent.
     This is used when the address is not valid as a memory address
     (because its displacement is too big for the machine.)  
rtx reg_equivs_s::alt_mem_list
     An EXPR_LIST of REG_EQUIVs containing MEMs with
     alternate representations of the location of pseudo reg N.  
rtx reg_equivs_s::constant
     The constant value to which pseudo reg N is equivalent,
     or zero if pseudo reg N is not equivalent to a constant.
     find_reloads looks at this in order to replace pseudo reg N
     with the constant it stands for.  
rtx reg_equivs_s::init
     The list of insns that initialized reg N from its equivalent
     constant or memory slot.  
rtx reg_equivs_s::invariant
     An invariant value to which pseudo reg N is equivalent.
     eliminate_regs_in_insn uses this to replace pseudos in particular
     contexts.  
rtx reg_equivs_s::mem
     The memory slot to which pseudo reg N is equivalent,
     or zero if pseudo reg N is not equivalent to a memory slot.  
rtx reg_equivs_s::memory_loc
     A memory location to which pseudo reg N is equivalent,
     prior to any register elimination (such as frame pointer to stack
     pointer).  Depending on whether or not it is a valid address, this value
     is transferred to either equiv_address or equiv_mem.  

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