Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Dec 2013 22:04:48 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-releng@freebsd.org
Subject:   svn commit: r259279 - releng/10.0/contrib/gcc/config/i386
Message-ID:  <201312122204.rBCM4mU7005127@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Thu Dec 12 22:04:47 2013
New Revision: 259279
URL: http://svnweb.freebsd.org/changeset/base/259279

Log:
  Merge r259216 from stable/10 (head r259111):
  
  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'
  
  Approved by:	re (glebius)

Modified:
  releng/10.0/contrib/gcc/config/i386/emmintrin.h
Directory Properties:
  releng/10.0/   (props changed)

Modified: releng/10.0/contrib/gcc/config/i386/emmintrin.h
==============================================================================
--- releng/10.0/contrib/gcc/config/i386/emmintrin.h	Thu Dec 12 22:01:42 2013	(r259278)
+++ releng/10.0/contrib/gcc/config/i386/emmintrin.h	Thu Dec 12 22:04:47 2013	(r259279)
@@ -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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201312122204.rBCM4mU7005127>