1  /* { dg-do run } */
       2  /* { dg-options "-O3 -mpower8-vector -Wno-psabi" } */
       3  /* { dg-require-effective-target p8vector_hw } */
       4  
       5  #ifndef CHECK_H
       6  #define CHECK_H "sse2-check.h"
       7  #endif
       8  
       9  #include CHECK_H
      10  
      11  #ifndef TEST
      12  #define TEST sse2_test_cvtsi2sd_2
      13  #endif
      14  
      15  #include <emmintrin.h>
      16  
      17  static __m128d 
      18  __attribute__((noinline, unused))
      19  test (__m128d p, long long b)
      20  {
      21    __asm("" : "+v"(p), "+r"(b));
      22    return _mm_cvtsi64_sd (p, b); 
      23  }
      24  
      25  static void
      26  TEST (void)
      27  {
      28    union128d u, s;
      29    long long b = 42949672951333LL;
      30    double e[2];
      31  
      32    s.x = _mm_set_pd (123.321, 456.987);
      33  
      34    u.x = test (s.x, b);
      35    e[0] = (double)b;
      36    e[1] = s.a[1];
      37  
      38    if (check_union128d (u, e))
      39      abort ();
      40  }