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 l...@redhat.com 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

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 l...@redhat.com 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

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

[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 +

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

2014-01-15 Thread Marek Polacek
-ENOPATCH

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. *