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: Repost: RFA [4.1]: improvement to if-conversion and cross-jumping (PR20070)


> Jan Hubicka wrote:
> 
> > 
> >
> >I experimented with enabling crossjuping before reload in the past and
> >it didn't work well enought to pay back (ie usually didn't get across
> >the different pseudos problem anyway)
> >
> Well, with my patch, the different pseudos problem can be expected to be 
> solved,
> as long as there are not too many registers involved (in which case this 
> wouldn't
> work well as a local optimization anyway).

Could you try how it behaves pre-reload then?  (if you can send me
patch, I can give it a SPEC run too) I saw pretty common case where code
duplication prevented ifconvert, so it might be interesting to see how
things are affected by this.
> 
> >and there are better algorithms to
> >do that.
> > 
> >
> Which ones do you have in mind?

I tend to believe that most of the savings should come from code
unification pretty much like one we have in gcse.c.  The gcse
implementation don't work very well since it can't handle chained
unifications, but at least on tree-ssa this should be resonably easy.
I am not sure how much duplicates comes out from RTL lowering that are
important to be caught on RTL level, I must say.

Honza
> 


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