1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */ /* { dg-options "-O0 -msse" } */ typedef float __vr __attribute__ ((vector_size (16))); struct vector { union { __vr v; float f[4]; }; }; void doit () { float f[4]; struct vector v; f[0] = 0; f[1] = 1; f[2] = 2; f[3] = 3; v.v = __builtin_ia32_loadups (f); }