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

--- Comment #18 from Oleg Endo <olegendo at gcc dot gnu.org> 2012-07-11 
15:09:02 UTC ---
(In reply to comment #17)
> Created attachment 27775 [details]
> plus add combine
> 
> Here is the patch that I've been running since some time, it also use the same
> combine pattern matcher, but the goal of this patch was originally to fix up
> chains of multiple mult-add instructions.
> Optimizing the cst+reg addressing mode appears as a nice effects. Out of range
> indexes seems to be handled as afar as I can see.
> 
> This brings a EEMBC telecom speedup of 10%.FFMPEG code size reduced to 30% on 
> a
> few objects. 
> Validated on whole linux distribution, with only improvements (few regression
> only bellow noise).

Interesting.  
BTW, do you happen to have any (runtime) numbers for GCC 4.7.x vs current GCC
4.8?

> This patch is only for comments/illustration. Need a few polishing before
> proposing. I'm having a look at your implementation to see how they compare 
> and
> possibly combined together. Both approaches look interesting.

I guess folding the mul-add sequences like you did should be more useful than
just
handling one mem:SI pattern.  In any case, if you find my impl useful please
let me know,
because then I'd also pop in patterns for mem:QI and mem:HI patterns.

Reply via email to