2 /* { dg-options "-O2 -msse2" } */
3 /* { dg-require-effective-target sse2 } */
5 #include "sse2-check.h"
11 #include <emmintrin.h>
14 __attribute__((noinline
))
15 check (__m128i x
, unsigned short *v
, int j
)
26 for (i
= 0; i
< sizeof (v
) / sizeof (v
[0]); i
++)
32 printf ("%i: 0x%x != 0x%x\n", i
, v
[i
], u
.i
[i
]);
40 printf ("%i: 0x%x != 0\n", i
, u
.i
[i
]);
47 __attribute__((noinline
))
48 test (unsigned short *v
)
52 x
= _mm_set_epi16 (0, 0, 0, 0, 0, 0, 0, v
[0]);
54 x
= _mm_set_epi16 (0, 0, 0, 0, 0, 0, v
[1], 0);
56 x
= _mm_set_epi16 (0, 0, 0, 0, 0, v
[2], 0, 0);
58 x
= _mm_set_epi16 (0, 0, 0, 0, v
[3], 0, 0, 0);
60 x
= _mm_set_epi16 (0, 0, 0, v
[4], 0, 0, 0, 0);
62 x
= _mm_set_epi16 (0, 0, v
[5], 0, 0, 0, 0, 0);
64 x
= _mm_set_epi16 (0, v
[6], 0, 0, 0, 0, 0, 0);
66 x
= _mm_set_epi16 (v
[7], 0, 0, 0, 0, 0, 0, 0);
74 = { 0x7B5B, 0x5465, 0x7374, 0x5665,
75 0x6374, 0x6F72, 0x5D53, 0x475D };