aboutsummaryrefslogtreecommitdiff
path: root/opcodes
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2018-05-18 06:43:19 -0700
committerH.J. Lu <hjl.tools@gmail.com>2018-05-18 06:43:34 -0700
commit011b32fd4270fb7111ee1f63695ccd44562ee7df (patch)
tree110abd5acda6059b6296fa3ba26bfa65543ce9de /opcodes
parent4bba0fb1c6d391a217c25e44398a7e1c7090155f (diff)
downloadgdb-011b32fd4270fb7111ee1f63695ccd44562ee7df.zip
gdb-011b32fd4270fb7111ee1f63695ccd44562ee7df.tar.gz
gdb-011b32fd4270fb7111ee1f63695ccd44562ee7df.tar.bz2
x86: Don't set eh->local_ref to 1 for linker defined symbols
Since symbols created by HIDDEN and PROVIDE_HIDDEN assignments in linker script may be marked as defined, but not hidden, we can't set eh->local_ref to 1 in _bfd_x86_elf_link_symbol_references_local. Also R_386_GOT32X should be handled as just like R_386_GOT32 when relocating a section. The input R_386_GOT32X relocations, which can be relaxed, should have been converted to R_386_PC32, R_386_32 or R_386_GOTOFF. bfd/ PR ld/23189 * elf32-i386.c (elf_i386_relocate_section): Handle R_386_GOT32X like R_386_GOT32. * elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Don't set eh->local_ref to 1 for linker defined symbols. ld/ PR ld/23189 * testsuite/ld-i386/i386.exp: Run pr23189. * testsuite/ld-x86-64/x86-64.exp: Likewise. * testsuite/ld-i386/pr23189.d: New file. * testsuite/ld-i386/pr23189.s: Likewise. * testsuite/ld-i386/pr23189.t: Likewise. * testsuite/ld-x86-64/pr23189.d: Likewise. * testsuite/ld-x86-64/pr23189.s: Likewise. * testsuite/ld-x86-64/pr23189.t: Likewise.
Diffstat (limited to 'opcodes')
0 files changed, 0 insertions, 0 deletions