This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Don't combine across likely spilled hard reg setters (PR rtl-optimization/59477)
- From: Eric Botcazou <ebotcazou at adacore dot com>
- To: Richard Biener <rguenther at suse dot de>
- Cc: gcc-patches at gcc dot gnu dot org, Jakub Jelinek <jakub at redhat dot com>, Joern Rennecke <joern dot rennecke at embecosm dot com>, Jeff Law <law at redhat dot com>, vmakarov at redhat dot com
- Date: Mon, 20 Jan 2014 10:12:59 +0100
- Subject: Re: [PATCH] Don't combine across likely spilled hard reg setters (PR rtl-optimization/59477)
- Authentication-results: sourceware.org; auth=none
- References: <20140115215503 dot GG892 at tucnak dot redhat dot com> <alpine dot LSU dot 2 dot 11 dot 1401160952310 dot 4623 at zhemvz dot fhfr dot qr>
> I think the problem is still either a missed feature in LRA/reload
> (split live-ranges), a problem in how we represent calls & argument
> setup (magic hard-reg uses), or a backend problem (should spill
> itself if necessary, via a post-reload splitter or always spill
> and undo via a peephole2).
>
> Of course papering over in combine might be the best at this
> stage. So the above was just observations from the less experienced
> people in this area.
Yes, this is ultimately a RA issue, but an ancient and hard one as far as I
understand so papering over it makes sense I think. That being said, while
Joern's machinery was IMO acceptable because relatively simple and localized,
Jakub's looks more complicated and far-reaching (that's why I suggested to try
to extend the existing machinery if possible) so I think that we ought to try
something simpler first.
--
Eric Botcazou