aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGil Pitney <gil.pitney@linaro.org>2015-01-26 23:17:32 +0000
committerGil Pitney <gil.pitney@linaro.org>2015-01-26 23:17:32 +0000
commit591bb48b44e9f722fe343aebc7228a0459cd8b34 (patch)
tree6c74959ae85bf670165f1938cf5526334154692b
parent5bed289bf5964ab52b81bbac8e2ad80aa066148f (diff)
LLVM 3.6: Enable __builtin_shufflevector only for x86
This macro seems to require MMX extension. This can be revisited later for ARM once Image support added. The macro will stil work for ARM, but will call the C implementation rather than the clang builtin. Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
-rw-r--r--src/core/cpu/sampler.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/core/cpu/sampler.cpp b/src/core/cpu/sampler.cpp
index 893e66e..2e16b62 100644
--- a/src/core/cpu/sampler.cpp
+++ b/src/core/cpu/sampler.cpp
@@ -328,7 +328,7 @@ void CPUKernelWorkGroup::linear2D(T *result, float a, float b, float c, int i0,
vec4_add(result, accum);
}
-#if __has_builtin(__builtin_shufflevector)
+#if __has_builtin(__builtin_shufflevector) && defined ( __x86_64__ )
#define shuffle4(rs, a, b, x, y, z, w) \
*(__v4sf *)rs = __builtin_shufflevector(*(__v4sf *)a, *(__v4sf *)b, \
x, y, z, w)