diff options
author | Evangelos Foutras <evangelos@foutrelis.com> | 2015-02-10 03:22:58 +0000 |
---|---|---|
committer | Allan McRae <allan@archlinux.org> | 2015-02-10 21:43:02 +1000 |
commit | 75adf430d2d7ee16eaf3166680de83b498444720 (patch) | |
tree | 8f612a555b0f4e1410b9c1b3501de49fdd3f13ed | |
parent | c66e8b9e58603e92171cd87f9ad3759304f25255 (diff) | |
download | glibc-75adf430d2d7ee16eaf3166680de83b498444720.tar.gz glibc-75adf430d2d7ee16eaf3166680de83b498444720.tar.xz glibc-75adf430d2d7ee16eaf3166680de83b498444720.zip |
Fix __memcpy_chk on non-SSE2 CPUs
In commit 8b4416d, the 1: jump label in __mempcpy_chk was accidentally moved. This resulted in failures of mempcpy on CPU without SSE2. (cherry picked from commit 132a1328eccd20621b77f7810eebbeec0a1af187)
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | NEWS | 6 | ||||
-rw-r--r-- | sysdeps/i386/i686/multiarch/mempcpy_chk.S | 4 |
3 files changed, 14 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog index af405a0481..45579dea40 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2015-02-10 Evangelos Foutras <evangelos@foutrelis.com> + + [BZ #17949] + * sysdeps/i386/i686/multiarch/mempcpy_chk.S: Fix position of + jump label. + 2015-02-06 Carlos O'Donell <carlos@systemhalted.org> * version.h (RELEASE): Set to "stable". diff --git a/NEWS b/NEWS index 4b07474326..ff79f0d1b5 100644 --- a/NEWS +++ b/NEWS @@ -5,6 +5,12 @@ See the end for copying conditions. Please send GNU C library bug reports via <http://sourceware.org/bugzilla/> using `glibc' in the "product" field. +Version 2.21.1 + +* The following bugs are resolved with this release: + + 17949. + Version 2.21 * The following bugs are resolved with this release: diff --git a/sysdeps/i386/i686/multiarch/mempcpy_chk.S b/sysdeps/i386/i686/multiarch/mempcpy_chk.S index 207b648c82..b6fa202833 100644 --- a/sysdeps/i386/i686/multiarch/mempcpy_chk.S +++ b/sysdeps/i386/i686/multiarch/mempcpy_chk.S @@ -36,8 +36,8 @@ ENTRY(__mempcpy_chk) cmpl $0, KIND_OFFSET+__cpu_features@GOTOFF(%ebx) jne 1f call __init_cpu_features - leal __mempcpy_chk_ia32@GOTOFF(%ebx), %eax -1: testl $bit_SSE2, CPUID_OFFSET+index_SSE2+__cpu_features@GOTOFF(%ebx) +1: leal __mempcpy_chk_ia32@GOTOFF(%ebx), %eax + testl $bit_SSE2, CPUID_OFFSET+index_SSE2+__cpu_features@GOTOFF(%ebx) jz 2f leal __mempcpy_chk_sse2_unaligned@GOTOFF(%ebx), %eax testl $bit_Fast_Unaligned_Load, FEATURE_OFFSET+index_Fast_Unaligned_Load+__cpu_features@GOTOFF(%ebx) |