/* { dg-do compile } */ | |
/* { dg-options "-O2 -msse2 -mtune=k8" } */ | |
typedef short __v8hi __attribute__ ((__vector_size__ (16))); | |
typedef long long __m128i __attribute__ ((__vector_size__ (16))); | |
void sse2_test (void) | |
{ | |
union | |
{ | |
__m128i x; | |
} val1, res[8], tmp; | |
short ins[8] = { 8, 5, 9, 4, 2, 6, 1, 20 }; | |
int i; | |
for (i = 0; i < 8; i++) | |
{ | |
tmp.x = val1.x; | |
if (memcmp (&tmp, &res[i], sizeof (tmp))) | |
(__m128i) __builtin_ia32_vec_set_v8hi ((__v8hi) val1.x, ins[i], 0); | |
} | |
} |