Re: [RFA][PATCH][PR middle-end/57904][P1 regression] Improve cleanups after copyprop

2014-01-17 Thread Richard Biener
On Thu, Jan 16, 2014 at 7:30 PM, Jeff Law wrote: > On 01/16/14 04:49, Richard Biener wrote: >> >> >> Well - the issue here is that inlining / IPA-CP propagates constant >> arguments to direct uses which of course exposes constant propagation >> opportunities. Now, copyprop doesn't to "real" const

Re: [RFA][PATCH][PR middle-end/57904][P1 regression] Improve cleanups after copyprop

2014-01-16 Thread Jeff Law
On 01/16/14 04:49, Richard Biener wrote: Well - the issue here is that inlining / IPA-CP propagates constant arguments to direct uses which of course exposes constant propagation opportunities. Now, copyprop doesn't to "real" constant propagation, it just also propagates constants as if they we

Re: [RFA][PATCH][PR middle-end/57904][P1 regression] Improve cleanups after copyprop

2014-01-16 Thread Richard Biener
On Wed, Jan 15, 2014 at 10:39 PM, Jeff Law wrote: > > Our SSA copy-prop passes do a pretty pathetic job at cleaning up after > themselves when const/copy propagation exposes new trivial copies and > constant initializations. > > This can be seen in the code for pr57904 after copyprop2 for bb2 > >

Re: [RFA][PATCH][PR middle-end/57904][P1 regression] Improve cleanups after copyprop

2014-01-15 Thread Jeff Law
On 01/15/14 15:15, Marek Polacek wrote: -ENOPATCH Nuts. Patch attached. * tree-ssa-propagate.c (substitute_and_fold): Add argument for statement folded notification callbacks. Use it. * tree-ssa-propagate.h (substitute_and_fold): Update prototype. * tree-ss

Re: [RFA][PATCH][PR middle-end/57904][P1 regression] Improve cleanups after copyprop

2014-01-15 Thread Marek Polacek
-ENOPATCH

[RFA][PATCH][PR middle-end/57904][P1 regression] Improve cleanups after copyprop

2014-01-15 Thread Jeff Law
Our SSA copy-prop passes do a pretty pathetic job at cleaning up after themselves when const/copy propagation exposes new trivial copies and constant initializations. This can be seen in the code for pr57904 after copyprop2 for bb2 _2 = 344; ubound.0_3 = _2 & 7; size.1_4 = ubound.0_3 +