x86_64: fix static build of __memcpy_chk for compilers defaulting to PIC/PIE

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 for SHARED
	instead of PIC.
This commit is contained in:
Aurelien Jarno 2016-11-24 12:10:13 +01:00
parent f3b904d963
commit 380ec16d62
2 changed files with 6 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2016-11-24 Aurelien Jarno <aurelien@aurel32.net>
* sysdeps/x86_64/memcpy_chk.S (__memcpy_chk): Check for SHARED
instead of PIC.
2016-11-23 Joseph Myers <joseph@codesourcery.com> 2016-11-23 Joseph Myers <joseph@codesourcery.com>
[BZ #20859] [BZ #20859]

View File

@ -19,7 +19,7 @@
#include <sysdep.h> #include <sysdep.h>
#include "asm-syntax.h" #include "asm-syntax.h"
#ifndef PIC #ifndef SHARED
/* For libc.so this is defined in memcpy.S. /* For libc.so this is defined in memcpy.S.
For libc.a, this is a separate source to avoid For libc.a, this is a separate source to avoid
memcpy bringing in __chk_fail and all routines memcpy bringing in __chk_fail and all routines