http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39423

--- Comment #15 from Oleg Endo <olegendo at gcc dot gnu.org> 2012-07-06 
22:04:15 UTC ---
Created attachment 27754
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27754
combine pass based patch

A possible combine pass based solution for the problem.
It fixes the case mentioned in the original description.

I've also briefly checked some CSiBE code size results with this
patch applied to rev 189338 for '-m4-single -ml -O2 -mpretend-cmove'.
It hits only a few spots, but if those are buried inside loops, it might
be a win.

I'm not sure what's the best thing to do if the mov.l displacement
goes out of range...

Chris, I know it's been a while but any old memories? :)

Reply via email to