This is the mail archive of the gcc-patches@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]
Other format: [Raw text]

Re: [RFA] fix PR/26778 by reapplying a reverted patch


On Thu, 7 Sep 2006, Paolo Bonzini wrote:
> PR/26778 is about a bad choice of registers made by regclass, which uses
> a SSE register to "spill" a value even though the move will need to go
> through memory.
>
> 2005-08-08  Paolo Bonzini  <bonzini@gnu.org>
>           Dale Johannesen  <dalej@apple.com>
>
>	PR target/26778
>	* regclass.c (struct reg_pref): Update documentation.
>	(regclass): Set prefclass to NO_REGS if memory is the best option.
>	(record_reg_classes): Cope with a prefclass set to NO_REGS.

Could you also add a test to the testsuite?  Perhaps the one from the
PR by scanning for SSE registers on x86 which I believe shouldn't appear
anywhere in the assembler after this patch.

Unless Ulrich has an objection, this is OK for mainline.  Given the
historical problems I think its best to let it bake for at least
a week or two on mainlaine before considering backporting it (and any
necessary AIX, x86 and SH changes) to the 4.0/4.1 branches to resolve
this PR.  It might be that the total patch set is too intrusive and
we may need to close this as WONTFIX for 4.0 and maybe even 4.1.

Thanks to both you and Richard G for testing on five backends, it
helps improve confidence that this is a reasonable fix in stage 3.
Thanks to you and Dale for fixing this; conceptually I like this
reload change a lot.

Roger
--


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