about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2022-08-09 17:22:58 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2024-04-17 16:12:40 -0300
commit0f9ceb0c3e2b52081cf2ac3deb236dad9aa545b1 (patch)
treeb19b0a3832becdc33a58956eb407a0824a250470
parentefb33ce84a2cf0909f5fbaacdf4b455d26531aba (diff)
downloadglibc-0f9ceb0c3e2b52081cf2ac3deb236dad9aa545b1.tar.gz
glibc-0f9ceb0c3e2b52081cf2ac3deb236dad9aa545b1.tar.xz
glibc-0f9ceb0c3e2b52081cf2ac3deb236dad9aa545b1.zip
arm: Use vmov.i32 instead of vmov on neon memchr
clang fails with:

  error: invalid instruction
-rw-r--r--sysdeps/arm/armv7/multiarch/memchr_neon.S4
1 files changed, 2 insertions, 2 deletions
diff --git a/sysdeps/arm/armv7/multiarch/memchr_neon.S b/sysdeps/arm/armv7/multiarch/memchr_neon.S
index 3f593f4268..f61e73faed 100644
--- a/sysdeps/arm/armv7/multiarch/memchr_neon.S
+++ b/sysdeps/arm/armv7/multiarch/memchr_neon.S
@@ -120,7 +120,7 @@ ENTRY(memchr)
 	vpadd.i8	vdata1_0, vdata1_0, vdata1_1
 	vpadd.i8	vdata0_0, vdata0_0, vdata1_0
 	vpadd.i8	vdata0_0, vdata0_0, vdata0_0
-	vmov		synd, vdata0_0[0]
+	vmov.i32	synd, vdata0_0[0]
 
 	/* Clear the soff lower bits */
 	lsr		synd, synd, soff
@@ -166,7 +166,7 @@ ENTRY(memchr)
 	vpadd.i8	vdata1_0, vdata1_0, vdata1_1
 	vpadd.i8	vdata0_0, vdata0_0, vdata1_0
 	vpadd.i8	vdata0_0, vdata0_0, vdata0_0
-	vmov		synd, vdata0_0[0]
+	vmov.i32	synd, vdata0_0[0]
 	cbz		synd, .Lnotfound
 	bhi		.Ltail	/* Uses the condition code from
 				   subs cntin, cntin, #32 above.  */