]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
x86_64: fix static build of __mempcpy_chk for compilers defaulting to PIC/PIE
authorMike Frysinger <vapier@gentoo.org>
Sun, 12 Mar 2017 22:12:21 +0000 (15:12 -0700)
committerMike Frysinger <vapier@gentoo.org>
Wed, 15 Mar 2017 23:13:02 +0000 (16:13 -0700)
When glibc is compiled with gcc 6.2 that has been configured with
to default to PIC/PIE, the static version of __mempcpy_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 __memcpy_chk.

2017-03-12  Mike Frysinger  <vapier@gentoo.org>

* sysdeps/x86_64/mempcpy_chk.S (__mempcpy_chk): Check for SHARED
instead of PIC.

(cherry picked from commit fbe355fbd1973d6e29561084b3eaeb4bfe9d515a)
(cherry picked from commit 0889003c67f9c2f520a37281c4b5c3b8a9861f46)

sysdeps/x86_64/mempcpy_chk.S

index f8a9260e6ea892f2084bef8d9983759725ba53a4..f9122915769067bc32f96f9db16a98385bd5c84a 100644 (file)
@@ -19,7 +19,7 @@
 #include <sysdep.h>
 #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
           mempcpy bringing in __chk_fail and all routines