| Index: third_party/asan/asan_clang_Linux/lib/clang/3.1/include/xmmintrin.h
|
| ===================================================================
|
| --- third_party/asan/asan_clang_Linux/lib/clang/3.1/include/xmmintrin.h (revision 110893)
|
| +++ third_party/asan/asan_clang_Linux/lib/clang/3.1/include/xmmintrin.h (working copy)
|
| @@ -735,8 +735,9 @@
|
| return (__m64)__builtin_ia32_pmulhuw((__v4hi)a, (__v4hi)b);
|
| }
|
|
|
| -#define _mm_shuffle_pi16(a, n) \
|
| - ((__m64)__builtin_ia32_pshufw(a, n))
|
| +#define _mm_shuffle_pi16(a, n) __extension__ ({ \
|
| + __m64 __a = (a); \
|
| + (__m64)__builtin_ia32_pshufw((__v4hi)__a, (n)); })
|
|
|
| static __inline__ void __attribute__((__always_inline__, __nodebug__))
|
| _mm_maskmove_si64(__m64 d, __m64 n, char *p)
|
| @@ -774,11 +775,13 @@
|
| __builtin_ia32_ldmxcsr(i);
|
| }
|
|
|
| -#define _mm_shuffle_ps(a, b, mask) \
|
| - (__builtin_shufflevector((__v4sf)(a), (__v4sf)(b), \
|
| - (mask) & 0x3, ((mask) & 0xc) >> 2, \
|
| - (((mask) & 0x30) >> 4) + 4, \
|
| - (((mask) & 0xc0) >> 6) + 4))
|
| +#define _mm_shuffle_ps(a, b, mask) __extension__ ({ \
|
| + __m128 __a = (a); \
|
| + __m128 __b = (b); \
|
| + (__m128)__builtin_shufflevector((__v4sf)__a, (__v4sf)__b, \
|
| + (mask) & 0x3, ((mask) & 0xc) >> 2, \
|
| + (((mask) & 0x30) >> 4) + 4, \
|
| + (((mask) & 0xc0) >> 6) + 4); })
|
|
|
| static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
|
| _mm_unpackhi_ps(__m128 a, __m128 b)
|
|
|