[RFC PATCH, i386]: Allow zero_extended addresses (+ problems with reload and offsetable address, "o" constraint)
Ulrich Weigand
uweigand@de.ibm.com
Mon Aug 8 15:30:00 GMT 2011
Uros Bizjak wrote:
> Although, it would be nice for reload to subsequently fix CSE'd
> non-offsetable memory by copying address to temporary reg (*as said in
> the documentation*), we could simply require an XMM temporary for
> TImode reloads to/from integer registers, and this fixes ICE for x32.
Moves are special as far as reload is concerned. If there is already
a move instruction present *before* reload, it will get fixed up
according to its constraints as any other instruction.
However, reload will *introduce* new moves as part of its operation,
and those will *not* themselves get reloaded. Instead, reload simply
assumes that every plain move will just succeed without requiring
any reload; if this is not true, the target *must* provide a
secondary reload for this move.
(Note that the secondary reload could also work by reloading the
target address into a temporary; that's up to the target to
implement.)
Bye,
Ulrich
--
Dr. Ulrich Weigand
GNU Toolchain for Linux on System z and Cell BE
Ulrich.Weigand@de.ibm.com
More information about the Gcc
mailing list