diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | sysdeps/aarch64/strncmp.S | 6 |
2 files changed, 9 insertions, 2 deletions
@@ -1,3 +1,8 @@ +2018-03-14 Siddhesh Poyarekar <siddhesh@sourceware.org> + + * sysdeps/aarch64/strncmp.S (strncmp): Use a separate shift + instruction to unbreak builds with binutils 2.26 and older. + 2018-03-13 Siddhesh Poyarekar <siddhesh@sourceware.org> * sysdeps/aarch64/strncmp.S (count): New macro. diff --git a/sysdeps/aarch64/strncmp.S b/sysdeps/aarch64/strncmp.S index 20c7ec8..1dc8b79 100644 --- a/sysdeps/aarch64/strncmp.S +++ b/sysdeps/aarch64/strncmp.S @@ -208,13 +208,15 @@ 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 #3 + mov limit_wd, limit + lsr limit_wd, limit_wd, #3 cbz count, L(do_misaligned) neg count, count and count, count, #7 sub limit, limit, count - mov limit_wd, limit, lsr #3 + mov limit_wd, limit + lsr limit_wd, limit_wd, #3 L(page_end_loop): ldrb data1w, [src1], #1 |