http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53366
Bug #: 53366 Summary: wrong code generation by tree vectorizer using AVX Classification: Unclassified Product: gcc Version: 4.7.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassig...@gcc.gnu.org ReportedBy: mar...@mpa-garching.mpg.de Created attachment 27410 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27410 Testcase demonstrating the problem The attached code is the reduction of a numerical library. It should print "2.816937e+08" if executed correctly. Using the current head of the 4.7 branch and trunk, and compiling on an Intel Core i3-2120 using gcc testcase.c -std=c99 -g -O3 -march=native -fno-tree-vectorize everything works as expected. When omitting the "-fno-tree-vectorize", random results are printed, and a different number is generated for every run. The testcase is the result of several hours' reduction. Currently I don't have time to reduce it further.