1117395Skan/* { dg-do run } */ 2117395Skan/* { dg-options "-O2 -msse2" } */ 3117395Skan/* { dg-require-effective-target sse2 } */ 4117395Skan 5117395Skan#ifndef CHECK_H 6117395Skan#define CHECK_H "sse2-check.h" 7117395Skan#endif 8117395Skan 9117395Skan#ifndef TEST 10117395Skan#define TEST sse2_test 11117395Skan#endif 12117395Skan 13117395Skan#include CHECK_H 14117395Skan 15117395Skan#include <emmintrin.h> 16117395Skan 17117395Skanstatic __m128i 18117395Skan__attribute__((noinline, unused)) 19117395Skantest (__m128i b) 20117395Skan{ 21117395Skan return _mm_move_epi64 (b); 22117395Skan} 23117395Skan 24117395Skanstatic void 25117395SkanTEST (void) 26117395Skan{ 27117395Skan union128i_q u, s1; 28117395Skan long long e[2] = {0}; 29117395Skan 30117395Skan s1.x = _mm_set_epi64x(12876, 3376590); 31117395Skan u.x = test (s1.x); 32117395Skan e[0] = s1.a[0]; 33117395Skan 34117395Skan if (check_union128i_q (u, e)) 35117395Skan abort (); 36117395Skan} 37117395Skan