/* PR debug/44136 */ /* { dg-do compile } */ /* { dg-options "-w -O2 -g" } */ /* { dg-options "-w -Wno-psabi -O2 -g -mno-sse" { target { { i?86-*-* x86_64-*-* } && ia32 } } } */ #define vector __attribute((vector_size(16))) vector float a; float foo (float b) { vector float c = { 0, 0, 0, 0 }; vector float d = { 0, 0, 0, 0 }; d += c; return ((float *)&c)[2]; } float bar (vector float a, int b, vector float c) { vector float e = c * a; a = (vector float) { 0, 0, 0, 0 }; c = (vector float) { 0, 0, 0, 0 }; float d = ((float *)&a)[0]; float f = ((float *)&c)[0]; return d * f; }