/* PR target/110762 */ /* { dg-do compile { target { ! ia32 } } } */ /* { dg-options "-O2 -msse2 -dp" } */ typedef float v2sf __attribute__((vector_size(8))); typedef float v4sf __attribute__((vector_size(16))); v2sf test(v4sf x, v4sf y) { v2sf x2, y2; x2 = __builtin_shufflevector (x, x, 0, 1); y2 = __builtin_shufflevector (y, y, 0, 1); return x2 + y2; } /* { dg-final { scan-assembler-times "\\*vec_concatv4sf_0" 2 } } */