blob: 82b8344279ee2c13da6406955041943479dfa08a [file] [log] [blame]
Patrick Williamsd8c66bc2016-06-20 12:57:21 -05001From 8facc29c3c56e6cf9cfef70986cf73876044a3fb Mon Sep 17 00:00:00 2001
2From: Andre McCurdy <armccurdy@gmail.com>
3Date: Tue, 19 Jan 2016 16:42:36 -0800
4Subject: [PATCH] avoid neon for targets which don't support it
5
6The sh-mem-random.c test app tries to use neon loads and stores to
7test 64-bit float copies when building for ARM. Allow it to do so if
8possible, but fallback to C when building for ARM targets which don't
9support neon.
10
Andrew Geissler78b72792022-06-14 06:47:25 -050011Upstream-Status: Submitted [https://bugs.kde.org/show_bug.cgi?id=454346]
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050012
13Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
14---
15 memcheck/tests/sh-mem-random.c | 2 +-
16 1 file changed, 1 insertion(+), 1 deletion(-)
17
18diff --git a/memcheck/tests/sh-mem-random.c b/memcheck/tests/sh-mem-random.c
19index ae82248..816e139 100644
20--- a/memcheck/tests/sh-mem-random.c
21+++ b/memcheck/tests/sh-mem-random.c
22@@ -191,7 +191,7 @@ void do_test_at ( U1* arr )
23 "emms"
24 : : "r"(arr+dst), "r"(arr+src) : "memory"
25 );
26-#elif defined(__linux__) && defined(__arm__) && !defined(__aarch64__)
27+#elif defined(__linux__) && defined(__arm__) && defined(__ARM_NEON__) && !defined(__aarch64__)
28 /* On arm32, many compilers generate a 64-bit float move
29 using two 32 bit integer registers, which completely
30 defeats this test. Hence force a 64-bit NEON load and
31--
321.9.1
33