diff options
author | Christophe Lyon <christophe.lyon@st.com> | 2016-08-24 18:02:41 +0200 |
---|---|---|
committer | Christophe Lyon <christophe.lyon@linaro.org> | 2016-08-24 18:18:10 +0200 |
commit | d98beba6c8fa7b38fb62cb799c9c7de355937cf3 (patch) | |
tree | 55ed738873e970ac1f115e87fb151fb50399f300 /ref_vreinterpret.c | |
parent | c1cc7826d74587e0dc1c855810633a219b161ab3 (diff) | |
download | platform_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_vreinterpret.c')
-rw-r--r-- | ref_vreinterpret.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/ref_vreinterpret.c b/ref_vreinterpret.c index 02b3e82..1b3241c 100644 --- a/ref_vreinterpret.c +++ b/ref_vreinterpret.c @@ -59,7 +59,7 @@ void exec_vreinterpret (void) VECT_VAR(vector_res, T1, W, N)); \ DUMP_FP(TEST_MSG, T1, W, N, PRIx##W); -#if defined(__ARM_FP16_FORMAT_IEEE) +#if defined(__ARM_FP16_FORMAT_IEEE) && ( ((__ARM_FP & 0x2) != 0) || ((__ARM_NEON_FP16_INTRINSICS & 1) != 0) ) #define TEST_VREINTERPRET_FP16(Q, T1, T2, W, N, TS1, TS2, WS, NS) \ VECT_VAR(vector_res, T1, W, N) = \ vreinterpret##Q##_##T2##W##_##TS2##WS(VECT_VAR(vector, TS1, WS, NS)); \ @@ -72,7 +72,7 @@ void exec_vreinterpret (void) statement */ DECL_VARIABLE_ALL_VARIANTS(vector); DECL_VARIABLE_ALL_VARIANTS(vector_res); -#if defined(__ARM_FP16_FORMAT_IEEE) +#if defined(__ARM_FP16_FORMAT_IEEE) && ( ((__ARM_FP & 0x2) != 0) || ((__ARM_NEON_FP16_INTRINSICS & 1) != 0) ) DECL_VARIABLE(vector, float, 16, 4); DECL_VARIABLE(vector_res, float, 16, 4); DECL_VARIABLE(vector, float, 16, 8); @@ -86,7 +86,7 @@ void exec_vreinterpret (void) TEST_MACRO_ALL_VARIANTS_2_5(VLOAD, vector, buffer); VLOAD(vector, buffer, , float, f, 32, 2); VLOAD(vector, 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(vector, buffer, , float, f, 16, 4); VLOAD(vector, buffer, q, float, f, 16, 8); #endif @@ -342,7 +342,7 @@ void exec_vreinterpret (void) TEST_VREINTERPRET_POLY(q, poly, p, 8, 16, float, f, 32, 4); TEST_VREINTERPRET_POLY(q, poly, p, 16, 8, 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) ) /* vreinterpret_f16_xx */ TEST_VREINTERPRET_FP16(, float, f, 16, 4, int, s, 8, 8); TEST_VREINTERPRET_FP16(, float, f, 16, 4, int, s, 16, 4); |