| /* { dg-do run { target i?86-*-* x86_64-*-* } } */ | |
| /* { dg-options "-msse2" } */ | |
| /* { dg-require-effective-target sse2_runtime } */ | |
| #include <xmmintrin.h> | |
| static void | |
| sse2_test (void) | |
| { | |
| float a = 1.0f; | |
| float b = 2.0f; | |
| float c = 3.0f; | |
| float r; | |
| __m128 v = _mm_set_ps(a, b, c, 0); | |
| v = (__m128)_mm_srli_si128((__m128i)v, 4); | |
| _mm_store_ss(&r, v); | |
| if (r != 3.0f) | |
| abort (); | |
| } | |
| int | |
| main () | |
| { | |
| sse2_test (); | |
| return 0; | |
| } |