From 75adf430d2d7ee16eaf3166680de83b498444720 Mon Sep 17 00:00:00 2001 From: Evangelos Foutras Date: Tue, 10 Feb 2015 03:22:58 +0000 Subject: 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) --- ChangeLog | 6 ++++++ NEWS | 6 ++++++ 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 + + [BZ #17949] + * sysdeps/i386/i686/multiarch/mempcpy_chk.S: Fix position of + jump label. + 2015-02-06 Carlos O'Donell * 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 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) -- cgit 1.4.1