PowerPC -mcmodel related regression on power6/7

David Edelsohn dje.gcc@gmail.com
Sun Jan 30 17:54:00 GMT 2011


On Fri, Jan 28, 2011 at 10:54 PM, Alan Modra <amodra@gmail.com> wrote:

> Well it seems that combine is merging a subreg with a load from mem,
> which is OK, I think, but that's how the +4 offset happens.  For
> power6/7 we also combine to get a lfiwax insn, which can't take an
> offset.  So the address gets reloaded into a reg.  All of a sudden
> the toc-relative address is no longer in a mem, instead being in a
> largetoc_low insn.  When final.c emits the insn, print_operand is
> called rather than print_operand_address, bypassing the hack I added
> there to rearrange the addend to suit gas.
>
> Bootstrapped and regression tested powerpc64-linux.  OK to apply?
>
>        * config/rs6000/rs6000.c (print_operand): Rearrange addends in
>        toc relative expressions as we do in print_operand_address.

Okay.

Thanks, David



More information about the Gcc-patches mailing list