diff options
Diffstat (limited to 'bfd/elf64-x86-64.c')
-rw-r--r-- | bfd/elf64-x86-64.c | 132 |
1 files changed, 65 insertions, 67 deletions
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c index 83a749e..d0c994e 100644 --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -45,133 +45,131 @@ static reloc_howto_type x86_64_elf_howto_table[] = { HOWTO(R_X86_64_NONE, 0, 3, 0, false, 0, complain_overflow_dont, - bfd_elf_generic_reloc, "R_X86_64_NONE", false, 0x00000000, 0x00000000, + bfd_elf_generic_reloc, "R_X86_64_NONE", false, 0, 0x00000000, false), HOWTO(R_X86_64_64, 0, 4, 64, false, 0, complain_overflow_dont, - bfd_elf_generic_reloc, "R_X86_64_64", false, MINUS_ONE, MINUS_ONE, + bfd_elf_generic_reloc, "R_X86_64_64", false, 0, MINUS_ONE, false), HOWTO(R_X86_64_PC32, 0, 2, 32, true, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_PC32", false, 0xffffffff, 0xffffffff, + bfd_elf_generic_reloc, "R_X86_64_PC32", false, 0, 0xffffffff, true), HOWTO(R_X86_64_GOT32, 0, 2, 32, false, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_GOT32", false, 0xffffffff, 0xffffffff, + bfd_elf_generic_reloc, "R_X86_64_GOT32", false, 0, 0xffffffff, false), HOWTO(R_X86_64_PLT32, 0, 2, 32, true, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_PLT32", false, 0xffffffff, 0xffffffff, + bfd_elf_generic_reloc, "R_X86_64_PLT32", false, 0, 0xffffffff, true), HOWTO(R_X86_64_COPY, 0, 2, 32, false, 0, complain_overflow_bitfield, - bfd_elf_generic_reloc, "R_X86_64_COPY", false, 0xffffffff, 0xffffffff, + bfd_elf_generic_reloc, "R_X86_64_COPY", false, 0, 0xffffffff, false), HOWTO(R_X86_64_GLOB_DAT, 0, 4, 64, false, 0, complain_overflow_dont, - bfd_elf_generic_reloc, "R_X86_64_GLOB_DAT", false, MINUS_ONE, - MINUS_ONE, false), + bfd_elf_generic_reloc, "R_X86_64_GLOB_DAT", false, 0, MINUS_ONE, + false), HOWTO(R_X86_64_JUMP_SLOT, 0, 4, 64, false, 0, complain_overflow_dont, - bfd_elf_generic_reloc, "R_X86_64_JUMP_SLOT", false, MINUS_ONE, - MINUS_ONE, false), + bfd_elf_generic_reloc, "R_X86_64_JUMP_SLOT", false, 0, MINUS_ONE, + false), HOWTO(R_X86_64_RELATIVE, 0, 4, 64, false, 0, complain_overflow_dont, - bfd_elf_generic_reloc, "R_X86_64_RELATIVE", false, MINUS_ONE, - MINUS_ONE, false), + bfd_elf_generic_reloc, "R_X86_64_RELATIVE", false, 0, MINUS_ONE, + false), HOWTO(R_X86_64_GOTPCREL, 0, 2, 32, true, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_GOTPCREL", false, 0xffffffff, - 0xffffffff, true), + bfd_elf_generic_reloc, "R_X86_64_GOTPCREL", false, 0, 0xffffffff, + true), HOWTO(R_X86_64_32, 0, 2, 32, false, 0, complain_overflow_unsigned, - bfd_elf_generic_reloc, "R_X86_64_32", false, 0xffffffff, 0xffffffff, + bfd_elf_generic_reloc, "R_X86_64_32", false, 0, 0xffffffff, false), HOWTO(R_X86_64_32S, 0, 2, 32, false, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_32S", false, 0xffffffff, 0xffffffff, + bfd_elf_generic_reloc, "R_X86_64_32S", false, 0, 0xffffffff, false), HOWTO(R_X86_64_16, 0, 1, 16, false, 0, complain_overflow_bitfield, - bfd_elf_generic_reloc, "R_X86_64_16", false, 0xffff, 0xffff, false), + bfd_elf_generic_reloc, "R_X86_64_16", false, 0, 0xffff, false), HOWTO(R_X86_64_PC16, 0, 1, 16, true, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_PC16", false, 0xffff, 0xffff, true), + bfd_elf_generic_reloc, "R_X86_64_PC16", false, 0, 0xffff, true), HOWTO(R_X86_64_8, 0, 0, 8, false, 0, complain_overflow_bitfield, - bfd_elf_generic_reloc, "R_X86_64_8", false, 0xff, 0xff, false), + bfd_elf_generic_reloc, "R_X86_64_8", false, 0, 0xff, false), HOWTO(R_X86_64_PC8, 0, 0, 8, true, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_PC8", false, 0xff, 0xff, true), + bfd_elf_generic_reloc, "R_X86_64_PC8", false, 0, 0xff, true), HOWTO(R_X86_64_DTPMOD64, 0, 4, 64, false, 0, complain_overflow_dont, - bfd_elf_generic_reloc, "R_X86_64_DTPMOD64", false, MINUS_ONE, - MINUS_ONE, false), + bfd_elf_generic_reloc, "R_X86_64_DTPMOD64", false, 0, MINUS_ONE, + false), HOWTO(R_X86_64_DTPOFF64, 0, 4, 64, false, 0, complain_overflow_dont, - bfd_elf_generic_reloc, "R_X86_64_DTPOFF64", false, MINUS_ONE, - MINUS_ONE, false), + bfd_elf_generic_reloc, "R_X86_64_DTPOFF64", false, 0, MINUS_ONE, + false), HOWTO(R_X86_64_TPOFF64, 0, 4, 64, false, 0, complain_overflow_dont, - bfd_elf_generic_reloc, "R_X86_64_TPOFF64", false, MINUS_ONE, - MINUS_ONE, false), + bfd_elf_generic_reloc, "R_X86_64_TPOFF64", false, 0, MINUS_ONE, + false), HOWTO(R_X86_64_TLSGD, 0, 2, 32, true, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_TLSGD", false, 0xffffffff, - 0xffffffff, true), + bfd_elf_generic_reloc, "R_X86_64_TLSGD", false, 0, 0xffffffff, + true), HOWTO(R_X86_64_TLSLD, 0, 2, 32, true, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_TLSLD", false, 0xffffffff, - 0xffffffff, true), + bfd_elf_generic_reloc, "R_X86_64_TLSLD", false, 0, 0xffffffff, + true), HOWTO(R_X86_64_DTPOFF32, 0, 2, 32, false, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_DTPOFF32", false, 0xffffffff, - 0xffffffff, false), + bfd_elf_generic_reloc, "R_X86_64_DTPOFF32", false, 0, 0xffffffff, + false), HOWTO(R_X86_64_GOTTPOFF, 0, 2, 32, true, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_GOTTPOFF", false, 0xffffffff, - 0xffffffff, true), + bfd_elf_generic_reloc, "R_X86_64_GOTTPOFF", false, 0, 0xffffffff, + true), HOWTO(R_X86_64_TPOFF32, 0, 2, 32, false, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_TPOFF32", false, 0xffffffff, - 0xffffffff, false), + bfd_elf_generic_reloc, "R_X86_64_TPOFF32", false, 0, 0xffffffff, + false), HOWTO(R_X86_64_PC64, 0, 4, 64, true, 0, complain_overflow_dont, - bfd_elf_generic_reloc, "R_X86_64_PC64", false, MINUS_ONE, MINUS_ONE, + bfd_elf_generic_reloc, "R_X86_64_PC64", false, 0, MINUS_ONE, true), HOWTO(R_X86_64_GOTOFF64, 0, 4, 64, false, 0, complain_overflow_dont, - bfd_elf_generic_reloc, "R_X86_64_GOTOFF64", - false, MINUS_ONE, MINUS_ONE, false), + bfd_elf_generic_reloc, "R_X86_64_GOTOFF64", false, 0, MINUS_ONE, + false), HOWTO(R_X86_64_GOTPC32, 0, 2, 32, true, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_GOTPC32", - false, 0xffffffff, 0xffffffff, true), + bfd_elf_generic_reloc, "R_X86_64_GOTPC32", false, 0, 0xffffffff, + true), HOWTO(R_X86_64_GOT64, 0, 4, 64, false, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_GOT64", false, MINUS_ONE, MINUS_ONE, + bfd_elf_generic_reloc, "R_X86_64_GOT64", false, 0, MINUS_ONE, false), HOWTO(R_X86_64_GOTPCREL64, 0, 4, 64, true, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_GOTPCREL64", false, MINUS_ONE, - MINUS_ONE, true), + bfd_elf_generic_reloc, "R_X86_64_GOTPCREL64", false, 0, MINUS_ONE, + true), HOWTO(R_X86_64_GOTPC64, 0, 4, 64, true, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_GOTPC64", - false, MINUS_ONE, MINUS_ONE, true), + bfd_elf_generic_reloc, "R_X86_64_GOTPC64", false, 0, MINUS_ONE, + true), HOWTO(R_X86_64_GOTPLT64, 0, 4, 64, false, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_GOTPLT64", false, MINUS_ONE, - MINUS_ONE, false), + bfd_elf_generic_reloc, "R_X86_64_GOTPLT64", false, 0, MINUS_ONE, + false), HOWTO(R_X86_64_PLTOFF64, 0, 4, 64, false, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_PLTOFF64", false, MINUS_ONE, - MINUS_ONE, false), + bfd_elf_generic_reloc, "R_X86_64_PLTOFF64", false, 0, MINUS_ONE, + false), HOWTO(R_X86_64_SIZE32, 0, 2, 32, false, 0, complain_overflow_unsigned, - bfd_elf_generic_reloc, "R_X86_64_SIZE32", false, 0xffffffff, 0xffffffff, + bfd_elf_generic_reloc, "R_X86_64_SIZE32", false, 0, 0xffffffff, false), HOWTO(R_X86_64_SIZE64, 0, 4, 64, false, 0, complain_overflow_dont, - bfd_elf_generic_reloc, "R_X86_64_SIZE64", false, MINUS_ONE, MINUS_ONE, + bfd_elf_generic_reloc, "R_X86_64_SIZE64", false, 0, MINUS_ONE, false), HOWTO(R_X86_64_GOTPC32_TLSDESC, 0, 2, 32, true, 0, complain_overflow_bitfield, bfd_elf_generic_reloc, - "R_X86_64_GOTPC32_TLSDESC", - false, 0xffffffff, 0xffffffff, true), + "R_X86_64_GOTPC32_TLSDESC", false, 0, 0xffffffff, true), HOWTO(R_X86_64_TLSDESC_CALL, 0, 3, 0, false, 0, complain_overflow_dont, bfd_elf_generic_reloc, "R_X86_64_TLSDESC_CALL", false, 0, 0, false), HOWTO(R_X86_64_TLSDESC, 0, 4, 64, false, 0, complain_overflow_dont, bfd_elf_generic_reloc, - "R_X86_64_TLSDESC", - false, MINUS_ONE, MINUS_ONE, false), + "R_X86_64_TLSDESC", false, 0, MINUS_ONE, false), HOWTO(R_X86_64_IRELATIVE, 0, 4, 64, false, 0, complain_overflow_dont, - bfd_elf_generic_reloc, "R_X86_64_IRELATIVE", false, MINUS_ONE, - MINUS_ONE, false), + bfd_elf_generic_reloc, "R_X86_64_IRELATIVE", false, 0, MINUS_ONE, + false), HOWTO(R_X86_64_RELATIVE64, 0, 4, 64, false, 0, complain_overflow_dont, - bfd_elf_generic_reloc, "R_X86_64_RELATIVE64", false, MINUS_ONE, - MINUS_ONE, false), + bfd_elf_generic_reloc, "R_X86_64_RELATIVE64", false, 0, MINUS_ONE, + false), HOWTO(R_X86_64_PC32_BND, 0, 2, 32, true, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_PC32_BND", false, 0xffffffff, 0xffffffff, + bfd_elf_generic_reloc, "R_X86_64_PC32_BND", false, 0, 0xffffffff, true), HOWTO(R_X86_64_PLT32_BND, 0, 2, 32, true, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_PLT32_BND", false, 0xffffffff, 0xffffffff, + bfd_elf_generic_reloc, "R_X86_64_PLT32_BND", false, 0, 0xffffffff, true), HOWTO(R_X86_64_GOTPCRELX, 0, 2, 32, true, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_GOTPCRELX", false, 0xffffffff, - 0xffffffff, true), + bfd_elf_generic_reloc, "R_X86_64_GOTPCRELX", false, 0, 0xffffffff, + true), HOWTO(R_X86_64_REX_GOTPCRELX, 0, 2, 32, true, 0, complain_overflow_signed, - bfd_elf_generic_reloc, "R_X86_64_REX_GOTPCRELX", false, 0xffffffff, - 0xffffffff, true), + bfd_elf_generic_reloc, "R_X86_64_REX_GOTPCRELX", false, 0, 0xffffffff, + true), /* We have a gap in the reloc numbers here. R_X86_64_standard counts the number up to this point, and @@ -191,7 +189,7 @@ static reloc_howto_type x86_64_elf_howto_table[] = /* Use complain_overflow_bitfield on R_X86_64_32 for x32. */ HOWTO(R_X86_64_32, 0, 2, 32, false, 0, complain_overflow_bitfield, - bfd_elf_generic_reloc, "R_X86_64_32", false, 0xffffffff, 0xffffffff, + bfd_elf_generic_reloc, "R_X86_64_32", false, 0, 0xffffffff, false) }; |