Hi, On Fri, 27 May 2011, Jakub Jelinek wrote:
> On Fri, May 27, 2011 at 03:59:47PM +0200, Michael Matz wrote: > > On Thu, 26 May 2011, Steven Bosscher wrote: > > > > on IRC we discussed about this, here's the RFC patch. It bootstraps > > > > and causes some minor regressions most probably due to some missing > > > > sprinkled checks for the special clobber insns and sometimes due to > > > > having to adjust some regexps. > > > > > > Just for reference... I am guessing this also supposed to help fix > > > PR39604? > > > > Yep. > > And PR49103 etc. Which it nicely fixes already. It will pack together only the non-overlapping dt_parms in one slot and the parm.x into a different one. But I have a hard time coming up with a testcase that is broken with RTL transformations (39604 doesn't fail since alias-improvement branch), scheduling was prone to do that as the write-conflict oracle of old aggressively looked at the decls first, and only then on the RTL addresses. Meanwhile there is code in place for the RTL disambiguator that correctly handles several cases of different decls being in the same slot. As of yet I can't convince myself that it handles all cases correctly, but if so we wouldn't need to transfer the death markers to RTL. A testcase that breaks due to RTL movements on current trunk would be highly appreciated. Ciao, Michael.