Re: Question about "instruction merge" pass when optimizing for size

2015-08-20 Thread Jeff Law
On 08/20/2015 01:07 AM, sa...@hederstierna.com wrote: From: Jeff Law More important is to determine *why* we're getting these patterns. In the IRA/LRA world, they should be a lot less common. Yes I agree this phenomena seems more common after introdu

Re: Question about "instruction merge" pass when optimizing for size

2015-08-20 Thread sa...@hederstierna.com
> > From: Jeff Law > More important is to determine *why* we're getting these patterns. In > the IRA/LRA world, they should be a lot less common. Yes I agree this phenomena seems more common after introducing LRA. Though I was thinking that such a pass

RE: Question about "instruction merge" pass when optimizing for size

2015-08-19 Thread Robert Suchanek
(It appears I accidentally dropped the mailing list) Hi, > On 08/19/2015 02:38 PM, DJ Delorie wrote: > > I've seen this on other targets too, sometimes so bad I write a quick > > target-specific "stupid move optimizer" pass to clean it up. > > > > A generic pass would be much harder, but very use

Re: Question about "instruction merge" pass when optimizing for size

2015-08-19 Thread Jeff Law
On 08/19/2015 02:38 PM, DJ Delorie wrote: I've seen this on other targets too, sometimes so bad I write a quick target-specific "stupid move optimizer" pass to clean it up. A generic pass would be much harder, but very useful. More important is to determine *why* we're getting these patterns. I

RE: Question about "instruction merge" pass when optimizing for size

2015-08-19 Thread Matthew Fortune
DJ Delorie writes: > I've seen this on other targets too, sometimes so bad I write a quick > target-specific "stupid move optimizer" pass to clean it up. > > A generic pass would be much harder, but very useful. Robert (on cc) is currently attempting some improvements to the regrename pass to tr

Re: Question about "instruction merge" pass when optimizing for size

2015-08-19 Thread DJ Delorie
I've seen this on other targets too, sometimes so bad I write a quick target-specific "stupid move optimizer" pass to clean it up. A generic pass would be much harder, but very useful.