1/* { dg-do compile } */
2/* { dg-options "-O1 -msse2" } */
3
4#include <x86intrin.h>
5
6void
7f (double *r, __m128d x, __m128d y, __m128d z)
8{
9  __m128d t=_mm_move_sd(x,y);
10  __m128d u=_mm_move_sd(t,z);
11  *r = u[0];
12}
13
14__m128d
15g(__m128d x, __m128d y, __m128d z)
16{
17  __m128d t=_mm_move_sd(x,y);
18  __m128d u=_mm_move_sd(t,z);
19  return u;
20}
21
22/* { dg-final { scan-assembler-times "movsd" 1 } } */
23