[Bug tree-optimization/60276] [4.7/4.8/4.9 Regression] -O3 autovectorizer breaks on a particular loop

2014-02-21 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60276 --- Comment #10 from Richard Biener rguenth at gcc dot gnu.org --- Author: rguenth Date: Fri Feb 21 13:18:54 2014 New Revision: 207992 URL: http://gcc.gnu.org/viewcvs?rev=207992root=gccview=rev Log: 2014-02-21 Richard Biener rguent...@suse.de

[Bug tree-optimization/60276] [4.7/4.8/4.9 Regression] -O3 autovectorizer breaks on a particular loop

2014-02-20 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60276 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Status|NEW |ASSIGNED

[Bug tree-optimization/60276] [4.7/4.8/4.9 Regression] -O3 autovectorizer breaks on a particular loop

2014-02-20 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60276 --- Comment #4 from Richard Biener rguenth at gcc dot gnu.org --- extern void abort (void); static void foo (short *out, const short *lp, const short *hp, unsigned samples) { int x, target; for (x = 0, target = 0; x (int)samples; x += 2,

[Bug tree-optimization/60276] [4.7/4.8/4.9 Regression] -O3 autovectorizer breaks on a particular loop

2014-02-20 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60276 --- Comment #5 from Richard Biener rguenth at gcc dot gnu.org --- And with less convoluted vectorized code but still broken (avoids integer promotions): extern void abort (void); static void foo (int *out, const int *lp, const int *hp, unsigned

[Bug tree-optimization/60276] [4.7/4.8/4.9 Regression] -O3 autovectorizer breaks on a particular loop

2014-02-20 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60276 --- Comment #6 from Richard Biener rguenth at gcc dot gnu.org --- But you can clearly see that this isn't valid vectorization because of the read-after-write dependence of out[x].

[Bug tree-optimization/60276] [4.7/4.8/4.9 Regression] -O3 autovectorizer breaks on a particular loop

2014-02-20 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60276 --- Comment #7 from Richard Biener rguenth at gcc dot gnu.org --- (In reply to Richard Biener from comment #6) But you can clearly see that this isn't valid vectorization because of the read-after-write dependence of out[x]. Well, only after

[Bug tree-optimization/60276] [4.7/4.8/4.9 Regression] -O3 autovectorizer breaks on a particular loop

2014-02-20 Thread mpolacek at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60276 --- Comment #8 from Marek Polacek mpolacek at gcc dot gnu.org --- Note that in r196871 this was broken, but r196872 is fine.

[Bug tree-optimization/60276] [4.7/4.8/4.9 Regression] -O3 autovectorizer breaks on a particular loop

2014-02-20 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60276 --- Comment #9 from Richard Biener rguenth at gcc dot gnu.org --- Created attachment 32183 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=32183action=edit patch Patch I am testing.