2015-07-29 18:57:54 +00:00
|
|
|
# See scripts/check-localplt.awk for how this file is processed.
|
|
|
|
# PLT use is required for the malloc family and for matherr because
|
|
|
|
# users can define their own functions and have library internals call them.
|
|
|
|
# Linker in binutils 2.26 and newer consolidates R_X86_64_JUMP_SLOT
|
|
|
|
# relocation with R_X86_64_GLOB_DAT relocation against the same symbol.
|
2015-10-14 12:59:50 +00:00
|
|
|
libc.so: calloc + RELA R_X86_64_GLOB_DAT
|
2015-07-29 18:57:54 +00:00
|
|
|
libc.so: free + RELA R_X86_64_GLOB_DAT
|
|
|
|
libc.so: malloc + RELA R_X86_64_GLOB_DAT
|
2015-10-14 12:59:50 +00:00
|
|
|
libc.so: memalign + RELA R_X86_64_GLOB_DAT
|
|
|
|
libc.so: realloc + RELA R_X86_64_GLOB_DAT
|
2015-07-29 18:57:54 +00:00
|
|
|
libm.so: matherr
|
|
|
|
# The dynamic loader uses __libc_memalign internally to allocate aligned
|
|
|
|
# TLS storage. The other malloc family of functions are expected to allow
|
|
|
|
# user symbol interposition.
|
2015-10-14 12:59:50 +00:00
|
|
|
ld.so: __libc_memalign + RELA R_X86_64_GLOB_DAT
|
|
|
|
ld.so: malloc + RELA R_X86_64_GLOB_DAT
|
|
|
|
ld.so: calloc + RELA R_X86_64_GLOB_DAT
|
|
|
|
ld.so: realloc + RELA R_X86_64_GLOB_DAT
|
2015-07-29 18:57:54 +00:00
|
|
|
ld.so: free + RELA R_X86_64_GLOB_DAT
|
2016-11-30 14:59:57 +00:00
|
|
|
# The TLS-enabled version of these functions is interposed from libc.so.
|
|
|
|
ld.so: _dl_signal_error + RELA R_X86_64_GLOB_DAT
|
|
|
|
ld.so: _dl_catch_error + RELA R_X86_64_GLOB_DAT
|