This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
On Sun, Feb 6, 2011 at 10:28 AM, Mike Frysinger <vapier@gentoo.org> wrote:
> Building static apps on x86_64 systems which use memmove such as:
> ? ? ? ?#include <string.h>
> ? ? ? ?char buf[8192];
> ? ? ? ?main(int argc, char **argv) { memmove(buf, buf + argc, argc % 4); }
You need to compile it with " -D_FORTIFY_SOURCE=1 -O" to see the
error.
> Result in linking errors along the lines of:
> ? ? ? ?.../libc.a(memmove_chk.o): In function `__memmove_chk':
> ? ? ? ?(.text+0x1b4): undefined reference to `__memmove_chk_ssse3_back'
> ? ? ? ?.../libc.a(memmove_chk.o): In function `__memmove_chk':
> ? ? ? ?(.text+0x1b9): undefined reference to `__memmove_chk_ssse3'
> ? ? ? ?collect2: ld returned 1 exit status
>
> This is due to the new ssse3 funcs only enabling their chk symbols when
> being compiled into shared code.
>
> URL: https://bugs.gentoo.org/353816
> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
>
> 2011-02-06 ?Mike Frysinger ?<vapier@gentoo.org>
>
> ? ? ? ?* sysdeps/x86_64/multiarch/memcpy-ssse3.S: Delete SHARED ifdef check
> ? ? ? ?around MEMCPY_CHK symbol.
> ? ? ? ?* sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: Likewise.
I don't think it is correct. Please try this.
--
H.J.
---
2011-02-06 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/x86_64/multiarch/memcpy-ssse3-back.S (MEMCPY_CHK): Check
SHARED, USE_AS_MEMMOVE and USE_MULTIARCH.
* sysdeps/x86_64/multiarch/memcpy-ssse3.S (MEMCPY_CHK): Likewise.
Attachment:
libc-memmove_chk-1.patch
Description: Text document
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |