aboutsummaryrefslogtreecommitdiffstats
path: root/ref_vget_low.c
diff options
context:
space:
mode:
authorChristophe Lyon <christophe.lyon@st.com>2016-08-24 18:02:41 +0200
committerChristophe Lyon <christophe.lyon@linaro.org>2016-08-24 18:18:10 +0200
commitd98beba6c8fa7b38fb62cb799c9c7de355937cf3 (patch)
tree55ed738873e970ac1f115e87fb151fb50399f300 /ref_vget_low.c
parentc1cc7826d74587e0dc1c855810633a219b161ab3 (diff)
downloadplatform_external_arm-neon-tests-d98beba6c8fa7b38fb62cb799c9c7de355937cf3.tar.gz
platform_external_arm-neon-tests-d98beba6c8fa7b38fb62cb799c9c7de355937cf3.tar.bz2
platform_external_arm-neon-tests-d98beba6c8fa7b38fb62cb799c9c7de355937cf3.zip
Make sure FP16 tests are enabled only if the target actually supports them.
This implies checking __ARM_FP or __ARM_NEON_FP16_INTRINSICS to account for different compilers.
Diffstat (limited to 'ref_vget_low.c')
-rw-r--r--ref_vget_low.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/ref_vget_low.c b/ref_vget_low.c
index c724fcb..1ed87c9 100644
--- a/ref_vget_low.c
+++ b/ref_vget_low.c
@@ -44,14 +44,14 @@ void exec_vget_low (void)
statement */
DECL_VARIABLE_64BITS_VARIANTS(vector64);
DECL_VARIABLE_128BITS_VARIANTS(vector128);
-#if defined(__ARM_FP16_FORMAT_IEEE)
+#if defined(__ARM_FP16_FORMAT_IEEE) && ( ((__ARM_FP & 0x2) != 0) || ((__ARM_NEON_FP16_INTRINSICS & 1) != 0) )
DECL_VARIABLE(vector64, float, 16, 4);
DECL_VARIABLE(vector128, float, 16, 8);
#endif
TEST_MACRO_128BITS_VARIANTS_2_5(VLOAD, vector128, buffer);
VLOAD(vector128, buffer, q, float, f, 32, 4);
-#if defined(__ARM_FP16_FORMAT_IEEE)
+#if defined(__ARM_FP16_FORMAT_IEEE) && ( ((__ARM_FP & 0x2) != 0) || ((__ARM_NEON_FP16_INTRINSICS & 1) != 0) )
VLOAD(vector128, buffer, q, float, f, 16, 8);
#endif
@@ -68,7 +68,7 @@ void exec_vget_low (void)
TEST_VGET_LOW(poly, p, 8, 8, 16);
TEST_VGET_LOW(poly, p, 16, 4, 8);
TEST_VGET_LOW(float, f, 32, 2, 4);
-#if defined(__ARM_FP16_FORMAT_IEEE)
+#if defined(__ARM_FP16_FORMAT_IEEE) && ( ((__ARM_FP & 0x2) != 0) || ((__ARM_NEON_FP16_INTRINSICS & 1) != 0) )
TEST_VGET_LOW(float, f, 16, 4, 8);
#endif