[prev in list] [next in list] [prev in thread] [next in thread]
List: glibc-cvs
Subject: [glibc] x86-64: Use testl to check __x86_string_control
From: "H.J. Lu via Glibc-cvs" <glibc-cvs () sourceware ! org>
Date: 2021-08-30 17:40:31
Message-ID: 20210830174031.C6D71385AC21 () sourceware ! org
[Download RAW message or body]
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=3c8b9879cab6d41787bc5b14c1748f62fd6d0e5f
commit 3c8b9879cab6d41787bc5b14c1748f62fd6d0e5f
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat Aug 28 06:10:38 2021 -0700
x86-64: Use testl to check __x86_string_control
Use testl, instead of andl, to check __x86_string_control to avoid
updating __x86_string_control.
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Diff:
---
sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S \
b/sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S index 9f02624375..abde8438d4 \
100644
--- a/sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S
+++ b/sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S
@@ -325,7 +325,7 @@ L(movsb):
/* Avoid slow backward REP MOVSB. */
jb L(more_8x_vec_backward)
# if AVOID_SHORT_DISTANCE_REP_MOVSB
- andl $X86_STRING_CONTROL_AVOID_SHORT_DISTANCE_REP_MOVSB, __x86_string_control(%rip)
+ testl $X86_STRING_CONTROL_AVOID_SHORT_DISTANCE_REP_MOVSB, \
__x86_string_control(%rip) jz 3f
movq %rdi, %rcx
subq %rsi, %rcx
@@ -333,7 +333,7 @@ L(movsb):
# endif
1:
# if AVOID_SHORT_DISTANCE_REP_MOVSB
- andl $X86_STRING_CONTROL_AVOID_SHORT_DISTANCE_REP_MOVSB, __x86_string_control(%rip)
+ testl $X86_STRING_CONTROL_AVOID_SHORT_DISTANCE_REP_MOVSB, \
__x86_string_control(%rip) jz 3f
movq %rsi, %rcx
subq %rdi, %rcx
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic