]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit - bfd/elf64-x86-64.c
x86 synthetic plt symbols
authorAlan Modra <amodra@gmail.com>
Mon, 1 Feb 2016 10:57:02 +0000 (21:27 +1030)
committerAlan Modra <amodra@gmail.com>
Mon, 1 Feb 2016 10:57:02 +0000 (21:27 +1030)
commitec1f73bb0be7482f2dffd9bbca2f93fc74eca172
tree3511f9c6fa640f08cbae69b7b0b2ebc3319dc6f7
parentd8c823c8b62b4f0fc4747eb9e4e29739add34c17
x86 synthetic plt symbols

Changing "pushq $1" in the following to "pushq $too_big" results in an
abort.  BFD shouldn't abort on (deliberately) bad user input.

 400480:       ff 25 9a 0b 20 00       jmpq   *0x200b9a(%rip)
 400486:       68 01 00 00 00          pushq  $0x1
 40048b:       e9 d0 ff ff ff          jmpq   400460 <_init+0x20>

* elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Don't abort on
an out of range reloc_index.
* elf32-i386.c (elf_i386_get_plt_sym_val): Likewise.
bfd/ChangeLog
bfd/elf32-i386.c
bfd/elf64-x86-64.c