From patchwork Thu Nov 24 11:24:21 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aurelien Jarno X-Patchwork-Id: 17824 Received: (qmail 30737 invoked by alias); 24 Nov 2016 11:24:39 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 30639 invoked by uid 89); 24 Nov 2016 11:24:38 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.9 required=5.0 tests=BAYES_00, KAM_LAZY_DOMAIN_SECURITY, RP_MATCHES_RCVD, URIBL_RED autolearn=ham version=3.3.2 spammy=Hx-languages-length:1273, bringing, 2016-11-24 X-HELO: hall.aurel32.net From: Aurelien Jarno To: libc-alpha@sourceware.org Cc: Aurelien Jarno Subject: [PATCH] x86_64: fix static build of __memcpy_chk for compilers defaulting to PIC/PIE Date: Thu, 24 Nov 2016 12:24:21 +0100 Message-Id: <20161124112421.4430-1-aurelien@aurel32.net> When glibc is compiled with gcc 6.2 that has been configured with to default to PIC/PIE, the static version of __memcpy_chk is not built, as the test is done on PIC instead of SHARED. Fix the test to check for SHARED, like it is done for similar functions like memmove_chk. Changelog * sysdeps/x86_64/memcpy_chk.S (__memcpy_chk): Check SHARED instead of PIC. --- ChangeLog | 5 +++++ sysdeps/x86_64/memcpy_chk.S | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index b6fc831..db1fb2a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2016-11-24 Aurelien Jarno + + * sysdeps/x86_64/memcpy_chk.S (__memcpy_chk): Check SHARED + instead of PIC. + 2016-11-23 Joseph Myers [BZ #20859] diff --git a/sysdeps/x86_64/memcpy_chk.S b/sysdeps/x86_64/memcpy_chk.S index 2296b55..a95b3ad 100644 --- a/sysdeps/x86_64/memcpy_chk.S +++ b/sysdeps/x86_64/memcpy_chk.S @@ -19,7 +19,7 @@ #include #include "asm-syntax.h" -#ifndef PIC +#ifndef SHARED /* For libc.so this is defined in memcpy.S. For libc.a, this is a separate source to avoid memcpy bringing in __chk_fail and all routines