> On 06/02/14 14:27, Jan Hubicka wrote: > >>On 06/02/14 12:07, Jan Hubicka wrote: > >>> > >>>It is one of reasions why I think it would be cool to do jump threading in > >>>early opts, too, at least in a lightweidt form. > >>Conceptually it's pretty easy to do during the into-ssa step. Not > >>sure it it'd catch the cases you care about though. > > > >Yep, it may be an option, too. I always had in mind Muchnick style cheap > >DOM pass run during into-SSA or as very first cleanup to get rid of > >unnecesary > >code quickly and cheaply. Our DOM is bit different beast though :). > >Very basic jump threading may fit here - never really tought about that. > We had all this about 10 years ago ;-) DOM actually started its > life a Morgan-esque bolt onto the renamer.
Yep, I know :)) But being one of first SSA passes, it envoled to be bit too smart for what I want. I used to have some numbers on running dom or VRP early. I suppose I can re-test them and see how much benefits that makes. This things are bit hard to get - strenghtening early opts always makes inliner to increase its activity making a mess of code size comparsions. > > > > >You probably know better than me how many of threading oppurtunities are > >"obvious" and how many are the difficult ones solved by VRP&DOM. My gut > >feeling > >is that doing the obvious ones may be good enough. But I do not know. > A huge number of them are trivially derivable by just looking at the > PHI nodes in the current block and I've pondered many times having a > simpler jump threading pass that runs early in the gimple pipeline. Yep, I think it would make sense indeed even though we currently have 3 threading passes and I am responsible for one of them already :) Honza > > Jeff