[glibc] Arm: Remove inline assembler from string-fza.h
Wilco Dijkstra via Glibc-cvs <[email protected]>
| Newsgroups | gmane.comp.lib.glibc.cvs |
|---|---|
| Message-ID | <[email protected]> |
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a3439ac139704b979719fdcaec70fe47a8c61498 commit a3439ac139704b979719fdcaec70fe47a8c61498 Author: Wilco Dijkstra <[email protected]> Date: Mon Aug 17 14:09:24 2026 +0000 Arm: Remove inline assembler from string-fza.h Use __uqsub8 since minimum GCC supports it now. Reviewed-by: Adhemerval Zanella <[email protected]> Diff: --- sysdeps/arm/armv6t2/string-fza.h | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/sysdeps/arm/armv6t2/string-fza.h b/sysdeps/arm/armv6t2/string-fza.h index 1eab43fdc3..dbc8122a6c 100644 --- a/sysdeps/arm/armv6t2/string-fza.h +++ b/sysdeps/arm/armv6t2/string-fza.h @@ -21,6 +21,7 @@ #include <string-misc.h> #include <string-optype.h> +#include <arm_acle.h> /* The functions return a byte mask. */ typedef op_t find_t; @@ -32,10 +33,7 @@ find_zero_all (op_t x) { /* Use unsigned saturated subtraction from 1 in each byte. That leaves 1 for every byte that was zero. */ - op_t ones = repeat_bytes (0x01); - op_t ret; - asm ("uqsub8 %0,%1,%2" : "=r"(ret) : "r"(ones), "r"(x)); - return ret; + return __uqsub8 (repeat_bytes (0x01), x); } /* Identify bytes that are equal between X1 and X2. */