330b961e66
Upstream commit: 4ed990e5b97a61f29f929bdeb36c5b2abb547a64 - Add MADV_POPULATE_READ and MADV_POPULATE_WRITE from Linux 5.14 to bits/mman-linux.h - Update kernel version to 5.14 in tst-mman-consts.py - Update syscall lists for Linux 5.14 - Use Linux 5.14 in build-many-glibcs.py - Fix failing nss/tst-nss-files-hosts-long with local resolver - iconvconfig: Fix behaviour with --prefix [BZ #28199] - nptl: Fix race between pthread_kill and thread exit (swbz#12889, #1994068) - nptl: pthread_kill, pthread_cancel should not fail after exit (swbz#19193, #1994068) - support: Add support_wait_for_thread_exit - MIPS: Setup errno for {f,l,}xstat - x86-64: Use testl to check __x86_string_control - elf: Fix missing colon in LD_SHOW_AUXV output (swbz#28253, #1995648) - librt: add test (swbz#28213, #1994264) - CVE-2021-38604: fix NULL pointer dereference in mq_notify (swbz#28213, #1994264) - Linux: Fix fcntl, ioctl, prctl redirects for _TIME_BITS=64 (bug 28182) - iconv_charmap: Close output file when done - copy_and_spawn_sgid: Avoid double calls to close() - gaiconf_init: Avoid double-free in label and precedence lists - gconv_parseconfdir: Fix memory leak - ldconfig: avoid leak on empty paths in config file
35 lines
1.3 KiB
Diff
35 lines
1.3 KiB
Diff
commit f2413f2710d5d5cc884b413b83fcf8198e3717fa
|
|
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>
|
|
(cherry picked from commit 3c8b9879cab6d41787bc5b14c1748f62fd6d0e5f)
|
|
|
|
diff --git a/sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S b/sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S
|
|
index 9f02624375c07b26..abde8438d41f2320 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
|