URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc3/] [gcc/] [testsuite/] [gcc.target/] [i386/] [pr23575.c] - Rev 516
Compare with Previous | Blame | View Log
/* { dg-do compile } */ /* { dg-options "-msse2 -O2" } */ /* { dg-require-effective-target sse2 } */ /* We used to ICE because of a bogous pattern. */ typedef double __v2df __attribute__ ((__vector_size__ (16))); typedef __v2df __m128d; static __inline __m128d __attribute__((__always_inline__)) _mm_set1_pd (double __F) { return __extension__ (__m128d){__F, __F}; } static __inline __m128d __attribute__((__always_inline__)) _mm_move_sd (__m128d __A, __m128d __B) { return (__m128d) __builtin_ia32_movsd ((__v2df)__A, (__v2df)__B); } void g(__m128d b); __m128d cross(__m128d tmp9) { __m128d t1 = _mm_set1_pd(1.0); __m128d tmp10 = _mm_move_sd(t1, tmp9); return tmp10; }