[PATCH] x86_64: fix static build of __mempcpy_chk for compilers defaulting to PIC/PIE

Mike Frysinger vapier@gentoo.org
Wed Mar 15 21:32:00 GMT 2017


On 12 Mar 2017 15:23, Mike Frysinger wrote:
> 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.
> 
> --- a/sysdeps/x86_64/mempcpy_chk.S
> +++ b/sysdeps/x86_64/mempcpy_chk.S
> @@ -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

ping ... should be pretty easy :)
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: Digital signature
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20170315/5d126de6/attachment.sig>


More information about the Libc-alpha mailing list