CVSROOT:        /cvs
Module name:    src
Changes by:     guent...@cvs.openbsd.org        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@

Reply via email to