aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSiddhesh Poyarekar <siddhesh@sourceware.org>2018-03-15 08:06:21 +0530
committerSiddhesh Poyarekar <siddhesh@sourceware.org>2018-03-15 08:06:21 +0530
commitb47c3e7637efb77818cbef55dcd0ed1f0ea0ddf1 (patch)
tree5a61f11d288c646a5bb1952d8f50f3af3aee0ad6
parent807fee29d2c967e24e3fe05e2182ba53e96e9178 (diff)
downloadglibc-b47c3e7637efb77818cbef55dcd0ed1f0ea0ddf1.tar
glibc-b47c3e7637efb77818cbef55dcd0ed1f0ea0ddf1.tar.gz
glibc-b47c3e7637efb77818cbef55dcd0ed1f0ea0ddf1.tar.bz2
glibc-b47c3e7637efb77818cbef55dcd0ed1f0ea0ddf1.zip
aarch64/strncmp: Use lsr instead of mov+lsr
A lsr can do what the mov and lsr did.
-rw-r--r--ChangeLog5
-rw-r--r--sysdeps/aarch64/strncmp.S6
2 files changed, 7 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 88566d020b..38154c20ab 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2018-03-15 Siddhesh Poyarekar <siddhesh@sourceware.org>
+
+ * sysdeps/aarch64/strncmp.S (strncmp): Use lsr instead of
+ mov + lsr.
+
2018-03-15 Rafal Luzynski <digitalfreak@lingonborough.com>
[BZ #22963]
diff --git a/sysdeps/aarch64/strncmp.S b/sysdeps/aarch64/strncmp.S
index 1dc8b79a22..759c752fc2 100644
--- a/sysdeps/aarch64/strncmp.S
+++ b/sysdeps/aarch64/strncmp.S
@@ -208,15 +208,13 @@ L(done):
/* Align the SRC1 to a dword by doing a bytewise compare and then do
the dword loop. */
L(try_misaligned_words):
- mov limit_wd, limit
- lsr limit_wd, limit_wd, #3
+ lsr limit_wd, limit, #3
cbz count, L(do_misaligned)
neg count, count
and count, count, #7
sub limit, limit, count
- mov limit_wd, limit
- lsr limit_wd, limit_wd, #3
+ lsr limit_wd, limit, #3
L(page_end_loop):
ldrb data1w, [src1], #1