提交 8c70c1b0 编写于 作者: R Richard Henderson 提交者: Paolo Bonzini

cutils: Remove SPLAT macro

This is unused and complicates the vector interface.
Signed-off-by: NRichard Henderson <rth@twiddle.net>
Message-Id: <1472496380-19706-3-git-send-email-rth@twiddle.net>
Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
上级 88ca8e80
...@@ -37,7 +37,6 @@ ...@@ -37,7 +37,6 @@
#undef pixel #undef pixel
#undef bool #undef bool
#define VECTYPE __vector unsigned char #define VECTYPE __vector unsigned char
#define SPLAT(p) vec_splat(vec_ld(0, p), 0)
#define ALL_EQ(v1, v2) vec_all_eq(v1, v2) #define ALL_EQ(v1, v2) vec_all_eq(v1, v2)
#define VEC_OR(v1, v2) ((v1) | (v2)) #define VEC_OR(v1, v2) ((v1) | (v2))
/* altivec.h may redefine the bool macro as vector type. /* altivec.h may redefine the bool macro as vector type.
...@@ -46,7 +45,6 @@ ...@@ -46,7 +45,6 @@
#elif defined __SSE2__ #elif defined __SSE2__
#include <emmintrin.h> #include <emmintrin.h>
#define VECTYPE __m128i #define VECTYPE __m128i
#define SPLAT(p) _mm_set1_epi8(*(p))
#define ALL_EQ(v1, v2) (_mm_movemask_epi8(_mm_cmpeq_epi8(v1, v2)) == 0xFFFF) #define ALL_EQ(v1, v2) (_mm_movemask_epi8(_mm_cmpeq_epi8(v1, v2)) == 0xFFFF)
#define VEC_OR(v1, v2) (_mm_or_si128(v1, v2)) #define VEC_OR(v1, v2) (_mm_or_si128(v1, v2))
#elif defined(__aarch64__) #elif defined(__aarch64__)
...@@ -58,7 +56,6 @@ ...@@ -58,7 +56,6 @@
#define VEC_OR(v1, v2) ((v1) | (v2)) #define VEC_OR(v1, v2) ((v1) | (v2))
#else #else
#define VECTYPE unsigned long #define VECTYPE unsigned long
#define SPLAT(p) (*(p) * (~0UL / 255))
#define ALL_EQ(v1, v2) ((v1) == (v2)) #define ALL_EQ(v1, v2) ((v1) == (v2))
#define VEC_OR(v1, v2) ((v1) | (v2)) #define VEC_OR(v1, v2) ((v1) | (v2))
#endif #endif
...@@ -135,7 +132,6 @@ static size_t buffer_find_nonzero_offset_inner(const void *buf, size_t len) ...@@ -135,7 +132,6 @@ static size_t buffer_find_nonzero_offset_inner(const void *buf, size_t len)
#include <immintrin.h> #include <immintrin.h>
#define AVX2_VECTYPE __m256i #define AVX2_VECTYPE __m256i
#define AVX2_SPLAT(p) _mm256_set1_epi8(*(p))
#define AVX2_ALL_EQ(v1, v2) \ #define AVX2_ALL_EQ(v1, v2) \
(_mm256_movemask_epi8(_mm256_cmpeq_epi8(v1, v2)) == 0xFFFFFFFF) (_mm256_movemask_epi8(_mm256_cmpeq_epi8(v1, v2)) == 0xFFFFFFFF)
#define AVX2_VEC_OR(v1, v2) (_mm256_or_si256(v1, v2)) #define AVX2_VEC_OR(v1, v2) (_mm256_or_si256(v1, v2))
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册