This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

LO_SUM memrefs offsettable ?



I've noticed from perusing some of the backends that there is
confusion over whether LO_SUM memrefs are offsettable.
Can anyone categorically state what the case is?

offsettable_address_p considers that LO_SUM memrefs are offsettable
yet operand_subword calls plus_constant instead of
plus_constant_for_output.  This has the effect of generating
addresses of the form (PLUS (LO_SUM (REG) (SYMBOL_REF)) (CONST_INT)
instead of (LO_SUM (REG) (CONST (SYMBOL_REF) (CONST_INT))).

Now I can see that there is a problem when considering an offsettable
LO_SUM memref at the end of a data page, since the data page register
may require updating as well.  Is this the main stumbling block with
the use of a LO_SUM/HIGH insn pair?

Michael.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]