svn commit: r259111 - head/contrib/gcc/config/i386
Dimitry Andric
dim at FreeBSD.org
Sun Dec 8 23:24:32 UTC 2013
Author: dim
Date: Sun Dec 8 23:24:32 2013
New Revision: 259111
URL: http://svnweb.freebsd.org/changeset/base/259111
Log:
Use correct casts in gcc's emmintrin.h for the first arguments of the
following builtin functions:
* __builtin_ia32_pslldi128() takes __v4si instead of __v8hi
* __builtin_ia32_psllqi128() takes __v2di instead of __v8hi
* __builtin_ia32_psradi128() takes __v4si instead of __v8hi
This should fix the following errors when building the LINT kernel with
gcc:
sys/crypto/aesni/aesni_wrap.c:191: error: incompatible type for argument 1 of
'__builtin_ia32_psradi128'
sys/crypto/aesni/aesni_wrap.c:195: error: incompatible type for argument 1 of
'__builtin_ia32_pslldi128'
MFC after: 3 days
Modified:
head/contrib/gcc/config/i386/emmintrin.h
Modified: head/contrib/gcc/config/i386/emmintrin.h
==============================================================================
--- head/contrib/gcc/config/i386/emmintrin.h Sun Dec 8 22:49:12 2013 (r259110)
+++ head/contrib/gcc/config/i386/emmintrin.h Sun Dec 8 23:24:32 2013 (r259111)
@@ -1126,9 +1126,9 @@ _mm_slli_epi64 (__m128i __A, int __B)
#define _mm_slli_epi16(__A, __B) \
((__m128i)__builtin_ia32_psllwi128 ((__v8hi)(__A), __B))
#define _mm_slli_epi32(__A, __B) \
- ((__m128i)__builtin_ia32_pslldi128 ((__v8hi)(__A), __B))
+ ((__m128i)__builtin_ia32_pslldi128 ((__v4si)(__A), __B))
#define _mm_slli_epi64(__A, __B) \
- ((__m128i)__builtin_ia32_psllqi128 ((__v8hi)(__A), __B))
+ ((__m128i)__builtin_ia32_psllqi128 ((__v2di)(__A), __B))
#endif
#if 0
@@ -1147,7 +1147,7 @@ _mm_srai_epi32 (__m128i __A, int __B)
#define _mm_srai_epi16(__A, __B) \
((__m128i)__builtin_ia32_psrawi128 ((__v8hi)(__A), __B))
#define _mm_srai_epi32(__A, __B) \
- ((__m128i)__builtin_ia32_psradi128 ((__v8hi)(__A), __B))
+ ((__m128i)__builtin_ia32_psradi128 ((__v4si)(__A), __B))
#endif
#if 0
More information about the svn-src-head
mailing list