[Bug rtl-optimization/87871] [9 Regression] testcases fail after r265398 on arm
bergner at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Apr 12 15:26:00 GMT 2019
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87871
--- Comment #18 from Peter Bergner <bergner at gcc dot gnu.org> ---
(In reply to Segher Boessenkool from comment #15)
> Popping a5(r116,l0) -- assign reg 3
> Popping a3(r112,l0) -- assign reg 4
> Popping a2(r114,l0) -- assign reg 3
> Popping a0(r111,l0) -- assign reg 0
> Popping a4(r117,l0) -- assign reg 0
> Popping a1(r113,l0) -- assign reg 2
> Assigning 4 to a5r116
> Disposition:
> 0:r111 l0 0 3:r112 l0 4 1:r113 l0 2 2:r114 l0 3
> 5:r116 l0 4 4:r117 l0 0
>
>
> r116 does not conflict with *any* other pseudo. It is alive in the first
> two insns of the function, which are
So we initially assign r3 to r116 presumably because it has the same cost as
the other gprs and it occurs first in REG_ALLOC_ORDER. Then
improve_allocation() decides that r4 is a better hard reg and switches the
assignment to that. I'm not sure why it wouldn't choose r0 there instead.
More information about the Gcc-bugs
mailing list