aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/i386/emmintrin.h
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2008-03-13 10:49:43 +0100
committerUros Bizjak <uros@gcc.gnu.org>2008-03-13 10:49:43 +0100
commit8a6c843029229e6d289b1a0f31eedbceb3f73d62 (patch)
tree00e1a4f280957573f0753c2ca1663b6b508d2af3 /gcc/config/i386/emmintrin.h
parent22aee8c5a9dabc4d5a716eaa0a6a65e71c4e0f03 (diff)
downloadgcc-8a6c843029229e6d289b1a0f31eedbceb3f73d62.zip
gcc-8a6c843029229e6d289b1a0f31eedbceb3f73d62.tar.gz
gcc-8a6c843029229e6d289b1a0f31eedbceb3f73d62.tar.bz2
re PR c++/35553 (-fkeep-inline-functions and -O errors out in SSE headers)
PR target/35553 * config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Define __SSE_USE_INLINED_FUNC__ when using -flag-keep-inline-functions together with optimization. * config/i386/xmmintrin.h: Use __SSE_USE_INLINED_FUNC__ instead of __OPTIMIZE__ to choose between inlined intrinsic SSE function having immediate arguments and its equivalent macro definition. * config/i386/bmintrin.h: Ditto. * config/i386/smmintrin.h: Ditto. * config/i386/tmmintrin.h: Ditto. * config/i386/mmintrin-common.h: Ditto. * config/i386/ammintrin.h: Ditto. * config/i386/emmintrin.h: Ditto. testsuite/ChangeLog: PR target/35553 * g++.dg/other/i386-3.C: New test. From-SVN: r133164
Diffstat (limited to 'gcc/config/i386/emmintrin.h')
-rw-r--r--gcc/config/i386/emmintrin.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/config/i386/emmintrin.h b/gcc/config/i386/emmintrin.h
index c5bbe8b..1244958 100644
--- a/gcc/config/i386/emmintrin.h
+++ b/gcc/config/i386/emmintrin.h
@@ -880,7 +880,7 @@ _mm_cvtss_sd (__m128d __A, __m128 __B)
return (__m128d)__builtin_ia32_cvtss2sd ((__v2df) __A, (__v4sf)__B);
}
-#ifdef __OPTIMIZE__
+#ifdef __SSE_USE_INLINED_FUNC__
static __inline __m128d __attribute__((__always_inline__, __artificial__))
_mm_shuffle_pd(__m128d __A, __m128d __B, const int __mask)
{
@@ -1144,7 +1144,7 @@ _mm_srai_epi32 (__m128i __A, int __B)
return (__m128i)__builtin_ia32_psradi128 ((__v4si)__A, __B);
}
-#ifdef __OPTIMIZE__
+#ifdef __SSE_USE_INLINED_FUNC__
static __inline __m128i __attribute__((__always_inline__, __artificial__))
_mm_srli_si128 (__m128i __A, const int __N)
{
@@ -1307,7 +1307,7 @@ _mm_cmpgt_epi32 (__m128i __A, __m128i __B)
return (__m128i)__builtin_ia32_pcmpgtd128 ((__v4si)__A, (__v4si)__B);
}
-#ifdef __OPTIMIZE__
+#ifdef __SSE_USE_INLINED_FUNC__
static __inline int __attribute__((__always_inline__, __artificial__))
_mm_extract_epi16 (__m128i const __A, int const __N)
{
@@ -1363,7 +1363,7 @@ _mm_mulhi_epu16 (__m128i __A, __m128i __B)
return (__m128i)__builtin_ia32_pmulhuw128 ((__v8hi)__A, (__v8hi)__B);
}
-#ifdef __OPTIMIZE__
+#ifdef __SSE_USE_INLINED_FUNC__
static __inline __m128i __attribute__((__always_inline__, __artificial__))
_mm_shufflehi_epi16 (__m128i __A, const int __mask)
{