12345678910111213141516171819 |
- /* Some compiler optimizations may transform loops into memset/memmove
- calls and without proper declaration it may generate PLT calls. */
- #if !defined __ASSEMBLER__ && IS_IN (libc) && defined SHARED
- asm ("memmove = __GI_memmove");
- asm ("memset = __GI_memset");
- asm ("memcpy = __GI_memcpy");
- /* Some targets do not use __stack_chk_fail_local. In libc.so,
- redirect __stack_chk_fail to a hidden reference
- __stack_chk_fail_local, to avoid the PLT reference.
- __stack_chk_fail itself is a global symbol, exported from libc.so,
- and cannot be made hidden. */
- # if IS_IN (libc) && defined SHARED && \
- defined STACK_PROTECTOR_LEVEL && STACK_PROTECTOR_LEVEL > 0
- asm (".hidden __stack_chk_fail_local\n"
- "__stack_chk_fail = __stack_chk_fail_local");
- # endif
- #endif
|