This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: RFA: patch solving one IRA problem reported in PR37243
- From: "Andrew Pinski" <pinskia at gmail dot com>
- To: "Jeff Law" <law at redhat dot com>
- Cc: "Vladimir Makarov" <vmakarov at redhat dot com>, gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 29 Aug 2008 15:04:55 -0700
- Subject: Re: RFA: patch solving one IRA problem reported in PR37243
- References: <48B81CF9.5060706@redhat.com> <48B8710D.3040108@redhat.com>
On Fri, Aug 29, 2008 at 2:58 PM, Jeff Law <law@redhat.com> wrote:
> This got me thinking about a long standing poor code problem on the H8 (and
> likely other processors). Can IRA "tie" a dying source operand to a
> destination operand when the source & destination operands have different
> modes?
>
> This comes up with the zero/sign extension patterns on some targets. The
> source & destination are required to match, but they have different modes.
> This case was never handled well by the old allocator resulting in some
> obviously bad register allocations.
The same thing is true for RS6000 and conversions from float to double
precision.
See PR 17381 for a good example.
Thanks,
Andrew Pinski