[PATCH] Fix PR69274, 435.gromacs performance regression due to RA

Bernd Schmidt bschmidt@redhat.com
Fri Feb 5 12:32:00 GMT 2016


On 02/05/2016 01:10 PM, Richard Biener wrote:
> It fails
>
> FAIL: gcc.target/i386/addr-sel-1.c scan-assembler b\\\\+1
>
> on i?86 (or x86_64 -m32) though, generating
>
> f:
> .LFB0:
>          .cfi_startproc
>          movl    4(%esp), %eax
>          leal    1(%eax), %edx
>          movsbl  a+1(%eax), %eax
>          movsbl  b(%edx), %edx
>          addl    %edx, %eax
>          ret

Well, it looks like the first movsbl load clobbers the potentially 
better base register, so trivial propagation doesn't work.

It might be another case where allowing 2->2 in combine would help. Or 
enabling -frename-registers and rerunning reload_combine afterwards.


Bernd



More information about the Gcc-patches mailing list