[RS6000] Tests that use int128_t and -m32
[official-gcc.git] / gcc / testsuite / gcc.target / powerpc / sse-movhps-2.c
blob29dde687ba999b159608d4f8f6c506f60598adff
1 /* { dg-do run } */
2 /* { dg-options "-O3 -mpower8-vector" } */
3 /* { dg-require-effective-target p8vector_hw } */
5 #define NO_WARN_X86_INTRINSICS 1
7 #ifndef CHECK_H
8 #define CHECK_H "sse-check.h"
9 #endif
11 #include CHECK_H
13 #ifndef TEST
14 #define TEST sse_test_movhps_2
15 #endif
17 #include <xmmintrin.h>
19 static void
20 __attribute__((noinline, unused))
21 test (__m64 *p, __m128 a)
23 __asm("" : "+v"(a));
24 return _mm_storeh_pi (p, a);
27 static void
28 TEST (void)
30 union128 s1;
31 float e[2];
32 float d[2];
34 s1.x = _mm_set_ps (5.13, 6.12, 7.11, 8.9);
36 test ((__m64 *)d, s1.x);
38 e[0] = s1.a[2];
39 e[1] = s1.a[3];
41 if (checkVf (d, e, 2))
42 abort ();