Commit 972fcc76 by Stuart Hastings Committed by Stuart Hastings

mmintrin.h: Mark vector intrinsics always_inline.

2005-06-29  Stuart Hastings  <stuart@apple.com>

        * gcc/config/i386/mmintrin.h: Mark vector intrinsics always_inline.
        * gcc/config/i386/emmintrin.h: Likewise.
        * gcc/config/i386/pmmintrin.h: Likewise.
        * gcc/config/i386/xmmintrin.h: Likewise.

From-SVN: r101425
parent e972ccce
2005-06-29 Stuart Hastings <stuart@apple.com>
* gcc/config/i386/mmintrin.h: Mark vector intrinsics always_inline.
* gcc/config/i386/emmintrin.h: Likewise.
* gcc/config/i386/pmmintrin.h: Likewise.
* gcc/config/i386/xmmintrin.h: Likewise.
2005-06-29 Steve Ellcey <sje@cup.hp.com> 2005-06-29 Steve Ellcey <sje@cup.hp.com>
PR middle-end/21969 PR middle-end/21969
......
...@@ -44,80 +44,80 @@ ...@@ -44,80 +44,80 @@
#define _MM_GET_DENORMALS_ZERO_MODE() \ #define _MM_GET_DENORMALS_ZERO_MODE() \
(_mm_getcsr() & _MM_DENORMALS_ZERO_MASK) (_mm_getcsr() & _MM_DENORMALS_ZERO_MASK)
static __inline __m128 static __inline __m128 __attribute__((__always_inline__))
_mm_addsub_ps (__m128 __X, __m128 __Y) _mm_addsub_ps (__m128 __X, __m128 __Y)
{ {
return (__m128) __builtin_ia32_addsubps ((__v4sf)__X, (__v4sf)__Y); return (__m128) __builtin_ia32_addsubps ((__v4sf)__X, (__v4sf)__Y);
} }
static __inline __m128 static __inline __m128 __attribute__((__always_inline__))
_mm_hadd_ps (__m128 __X, __m128 __Y) _mm_hadd_ps (__m128 __X, __m128 __Y)
{ {
return (__m128) __builtin_ia32_haddps ((__v4sf)__X, (__v4sf)__Y); return (__m128) __builtin_ia32_haddps ((__v4sf)__X, (__v4sf)__Y);
} }
static __inline __m128 static __inline __m128 __attribute__((__always_inline__))
_mm_hsub_ps (__m128 __X, __m128 __Y) _mm_hsub_ps (__m128 __X, __m128 __Y)
{ {
return (__m128) __builtin_ia32_hsubps ((__v4sf)__X, (__v4sf)__Y); return (__m128) __builtin_ia32_hsubps ((__v4sf)__X, (__v4sf)__Y);
} }
static __inline __m128 static __inline __m128 __attribute__((__always_inline__))
_mm_movehdup_ps (__m128 __X) _mm_movehdup_ps (__m128 __X)
{ {
return (__m128) __builtin_ia32_movshdup ((__v4sf)__X); return (__m128) __builtin_ia32_movshdup ((__v4sf)__X);
} }
static __inline __m128 static __inline __m128 __attribute__((__always_inline__))
_mm_moveldup_ps (__m128 __X) _mm_moveldup_ps (__m128 __X)
{ {
return (__m128) __builtin_ia32_movsldup ((__v4sf)__X); return (__m128) __builtin_ia32_movsldup ((__v4sf)__X);
} }
static __inline __m128d static __inline __m128d __attribute__((__always_inline__))
_mm_addsub_pd (__m128d __X, __m128d __Y) _mm_addsub_pd (__m128d __X, __m128d __Y)
{ {
return (__m128d) __builtin_ia32_addsubpd ((__v2df)__X, (__v2df)__Y); return (__m128d) __builtin_ia32_addsubpd ((__v2df)__X, (__v2df)__Y);
} }
static __inline __m128d static __inline __m128d __attribute__((__always_inline__))
_mm_hadd_pd (__m128d __X, __m128d __Y) _mm_hadd_pd (__m128d __X, __m128d __Y)
{ {
return (__m128d) __builtin_ia32_haddpd ((__v2df)__X, (__v2df)__Y); return (__m128d) __builtin_ia32_haddpd ((__v2df)__X, (__v2df)__Y);
} }
static __inline __m128d static __inline __m128d __attribute__((__always_inline__))
_mm_hsub_pd (__m128d __X, __m128d __Y) _mm_hsub_pd (__m128d __X, __m128d __Y)
{ {
return (__m128d) __builtin_ia32_hsubpd ((__v2df)__X, (__v2df)__Y); return (__m128d) __builtin_ia32_hsubpd ((__v2df)__X, (__v2df)__Y);
} }
static __inline __m128d static __inline __m128d __attribute__((__always_inline__))
_mm_loaddup_pd (double const *__P) _mm_loaddup_pd (double const *__P)
{ {
return _mm_load1_pd (__P); return _mm_load1_pd (__P);
} }
static __inline __m128d static __inline __m128d __attribute__((__always_inline__))
_mm_movedup_pd (__m128d __X) _mm_movedup_pd (__m128d __X)
{ {
return _mm_shuffle_pd (__X, __X, _MM_SHUFFLE2 (0,0)); return _mm_shuffle_pd (__X, __X, _MM_SHUFFLE2 (0,0));
} }
static __inline __m128i static __inline __m128i __attribute__((__always_inline__))
_mm_lddqu_si128 (__m128i const *__P) _mm_lddqu_si128 (__m128i const *__P)
{ {
return (__m128i) __builtin_ia32_lddqu ((char const *)__P); return (__m128i) __builtin_ia32_lddqu ((char const *)__P);
} }
#if 0 #if 0
static __inline void static __inline void __attribute__((__always_inline__))
_mm_monitor (void const * __P, unsigned int __E, unsigned int __H) _mm_monitor (void const * __P, unsigned int __E, unsigned int __H)
{ {
__builtin_ia32_monitor (__P, __E, __H); __builtin_ia32_monitor (__P, __E, __H);
} }
static __inline void static __inline void __attribute__((__always_inline__))
_mm_mwait (unsigned int __E, unsigned int __H) _mm_mwait (unsigned int __E, unsigned int __H)
{ {
__builtin_ia32_mwait (__E, __H); __builtin_ia32_mwait (__E, __H);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment