mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-23 05:20:06 +00:00
9637d8a253
On x86, linker in binutils 2.26 and newer consolidates R_*_JUMP_SLOT with R_*_GLOB_DAT relocation against the same symbol. This patch extends local PLT reference check to support alternate relocations. [BZ #18078] * scripts/check-localplt.awk: Support alternate relocations. * scripts/localplt.awk: Also check relocations in DT_RELA/DT_REL sections. * sysdeps/unix/sysv/linux/i386/localplt.data: Mark free and malloc entries with + REL R_386_GLOB_DAT. * sysdeps/x86_64/localplt.data: New file.
20 lines
777 B
Plaintext
20 lines
777 B
Plaintext
# 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.
|
|
libc.so: calloc
|
|
libc.so: free + RELA R_X86_64_GLOB_DAT
|
|
libc.so: malloc + RELA R_X86_64_GLOB_DAT
|
|
libc.so: memalign
|
|
libc.so: realloc
|
|
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.
|
|
ld.so: __libc_memalign
|
|
ld.so: malloc
|
|
ld.so: calloc
|
|
ld.so: realloc
|
|
ld.so: free + RELA R_X86_64_GLOB_DAT
|