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: [GCC RFC]A new and simple pass merging paired load store instructions


On May 15, 2014, at 10:13 AM, Jeff Law <law@redhat.com> wrote:
> I've poked at the scheduler several times to do similar stuff, but was never really satisfied with the results and never tried to polish those prototypes into something worth submitting.

What was lacking?  The cleanliness of the patch or the, it didn’t win me more than 0.01% code improvement so I never submitted it?

> One example I've poked at was discovery of stores which then feed into a load from the same location.

Trivial to do with my patch, just change the sort key to arrange that to happen, however, if you want multiple support and this, then, you need to recognize store_m / load from a part of that, which would be kinda annoying.

> Anyway, if you want to move forward with the idea, I'd certainly support doing so.

I’d be happy to clean up my patch as necessary and contribute it, however, people would have to tell me what they would like to see done to it.  In my mind, the arm, more, nds32, rs6000 and s390 ports would be the biggest in tree winners.

To be the most useful, my patch would benefit from an optimization person writing MI code to coalesce adjacent memory operations into either larger mode load and stores or into gen_load_multiple, gen_store_multiplethen, then all the port work (mine is around 16*n*n lines) would be zero.

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