CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2017/11/28 22:13:57
Modified files:
lib/libc/hidden: string.h
lib/libc/include: namespace.h
lib/libc/string: memcpy.c memmove.c memset.c
lib/libc/arch/amd64: DEFS.h
lib/libc/arch/amd64/string: memmove.S memset.S
lib/libc/arch/arm: DEFS.h
lib/libc/arch/arm/string: memcpy.S memmove.S memset.S
lib/libc/arch/i386: DEFS.h SYS.h
lib/libc/arch/i386/gen: flt_rounds.S
lib/libc/arch/i386/stdlib: abs.S div.S labs.S ldiv.S
lib/libc/arch/i386/string: bcmp.S bzero.S ffs.S memchr.S
memcmp.S memmove.S memset.S strchr.S
strcmp.S strncmp.S strrchr.S
lib/libc/sys : stack_protector.c
Log message:
clang doesn't propagate attributes like "asm labels" and "visibility(hidden)"
to builtins like mem{set,cpy,move} and __stack_smash_handler. So, when
building with clang, instead mark those as protected visibility to get rid
of the PLT relocations. We can't take the address of them then, but that's
ok: it's a build-time error not a run-time error.
ok kettenis@