On Thu, 2020-04-23 at 16:32 +0100, Richard Sandiford wrote:
> Jeff Law via Gcc-patches <gcc-patches@gcc.gnu.org> writes:
> > On Thu, 2020-04-23 at 15:07 +0200, Richard Biener wrote:
> > > On Thu, Apr 23, 2020 at 2:52 PM Segher Boessenkool
> > > <seg...@kernel.crashing.org> wrote:
> > > > On Thu, Apr 23, 2020 at 02:25:40PM +0200, Richard Biener wrote:
> > > > > > > But being stuck with something means no progress...  I know
> > > > > > > very well it's 100 times harder to get rid of something than to
> > > > > > > add something new ontop.
> > > > > > 
> > > > > > Well, what progress do you expect to make?  After expand that is :-)
> > > > > 
> > > > > I'd like the RTL pipeline before RA to shrink significantly, no PRE,
> > > > > no CSE, ...
> > > > 
> > > > RTL CSE for example is very much required to get any good code.  It
> > > > needs to CSE stuff that wasn't there before expand.
> > > 
> > > Sure, but then we should fix that!
> > Exactly.  It's purpose largely becomes dealing with the redundancies exposed
> > by
> > expansion.  ie, address arithmetic and the like.   A lot of its path
> > following
> > code should be throttled back.
> 
> Agreed.  But things like address legitimisation and ensuring immediate
> operands are in-range could be done in gimple too, and probably be
> optimised more effectively and efficiently in SSA form than in RTL.
Yea, but once exposed we'd probably need some kind of way to prevent something
like an out-of-range immediate from being propagated back into the statement. 
Certainly do-able though.  Maybe significantly easier than resurrecting RTL-SSA.

> The ultimate question then wouldn't just be "does the target support
> this optab?" but also "are these operands already legitimate for the
> optab"?
> 
> I also wonder how difficult it would be to get recog to recognise
> gimple :-)
:-)  You know better than I...  The more structured nature of gimple probably
helps that effort. 

jeff
> 

Reply via email to