1 /* { dg-do run } */
2 /* { dg-options "-O2 -msse2" } */
3 /* { dg-require-effective-target sse2 } */
4 
5 #include "sse2-check.h"
6 
7 #include <emmintrin.h>
8 
9 __m128d reg = { 2.0, 4.0 };
10 
11 void
12 __attribute__((noinline))
set_lower(double b)13 set_lower (double b)
14 {
15   double v[2];
16   _mm_store_pd(v, reg);
17   v[0] = b;
18   reg = _mm_load_pd(v);
19 }
20 
21 static void
sse2_test(void)22 sse2_test (void)
23 {
24   set_lower (6.0);
25 
26   if (reg[1] != 4.0)
27     __builtin_abort ();
28 }
29