diff options
Diffstat (limited to 'sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S')
-rw-r--r-- | sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S b/sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S index caa74be2c2..72bf7e8586 100644 --- a/sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S +++ b/sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S @@ -1,5 +1,5 @@ /* strcpy with SSE2 and unaligned load - Copyright (C) 2011-2016 Free Software Foundation, Inc. + Copyright (C) 2011-2018 Free Software Foundation, Inc. Contributed by Intel Corporation. This file is part of the GNU C Library. @@ -33,7 +33,7 @@ lea TABLE(%rip), %r11; \ movslq (%r11, INDEX, SCALE), %rcx; \ lea (%r11, %rcx), %rcx; \ - jmp *%rcx + _CET_NOTRACK jmp *%rcx # ifndef USE_AS_STRCAT @@ -99,6 +99,8 @@ L(Unalign16Both): sub %rcx, %rdi # ifdef USE_AS_STRNCPY add %rcx, %r8 + sbb %rcx, %rcx + or %rcx, %r8 # endif mov $16, %rcx movdqa (%rsi, %rcx), %xmm1 |