http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56933
--- Comment #8 from Richard Biener <rguenth at gcc dot gnu.org> --- (In reply to Bernd Edlinger from comment #7) > Created attachment 30712 [details] > fixed test case > > Looking deeper into the matter it seems like this an example > where vectorisation is not supposed to happen. > But this is still vectorized and causes the crash here: > > for (i = 0; i < 2*1024; i++) > d[i] = 1.; That loop is initialization only and can be vectorized. I have committed a fix (hopefully), so you may want to check again. > > So this is my proposed fix for the test case: > - added check_vect() to prevent invalid instruction as Jakub suggested > - addeded scan-tree-dump to detect the READ_WRITE depencency > to make sure that the vectorization in foo() did not happen > for the right reason.