From da6adc43542616701a406bf767608ea2de929019 Mon Sep 17 00:00:00 2001 From: Bruno Cardoso Lopes Date: Thu, 5 Aug 2010 23:04:58 +0000 Subject: [PATCH] Fix AVX 256-bit intrinsics headers by using the right cast type while dealing with logical ops git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110389 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Headers/avxintrin.h | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lib/Headers/avxintrin.h b/lib/Headers/avxintrin.h index ce7418997b..95deed4b91 100644 --- a/lib/Headers/avxintrin.h +++ b/lib/Headers/avxintrin.h @@ -169,49 +169,49 @@ _mm256_round_ps(__m256 v, const int m) static __inline __m256d __attribute__((__always_inline__, __nodebug__)) _mm256_and_pd(__m256d a, __m256d b) { - return (__m256d)((__v4df)a & (__v4df)b); + return (__m256d)((__v4di)a & (__v4di)b); } static __inline __m256 __attribute__((__always_inline__, __nodebug__)) _mm256_and_ps(__m256 a, __m256 b) { - return (__m256)((__v8sf)a & (__v8sf)b); + return (__m256)((__v8si)a & (__v8si)b); } static __inline __m256d __attribute__((__always_inline__, __nodebug__)) _mm256_andnot_pd(__m256d a, __m256d b) { - return (__m256d)(~(__v4df)a & (__v4df)b); + return (__m256d)(~(__v4di)a & (__v4di)b); } static __inline __m256 __attribute__((__always_inline__, __nodebug__)) _mm256_andnot_ps(__m256 a, __m256 b) { - return (__m256)(~(__v8sf)a & (__v8sf)b); + return (__m256)(~(__v8si)a & (__v8si)b); } static __inline __m256d __attribute__((__always_inline__, __nodebug__)) _mm256_or_pd(__m256d a, __m256d b) { - return (__m256d)((__v4df)a | (__v4df)b); + return (__m256d)((__v4di)a | (__v4di)b); } static __inline __m256 __attribute__((__always_inline__, __nodebug__)) _mm256_or_ps(__m256 a, __m256 b) { - return (__m256)((__v8sf)a | (__v8sf)b); + return (__m256)((__v8si)a | (__v8si)b); } static __inline __m256d __attribute__((__always_inline__, __nodebug__)) _mm256_xor_pd(__m256d a, __m256d b) { - return (__m256d)((__v4df)a ^ (__v4df)b); + return (__m256d)((__v4di)a ^ (__v4di)b); } static __inline __m256 __attribute__((__always_inline__, __nodebug__)) _mm256_xor_ps(__m256 a, __m256 b) { - return (__m256)((__v8sf)a ^ (__v8sf)b); + return (__m256)((__v8si)a ^ (__v8si)b); } /* Horizontal arithmetic */ -- 2.40.0