aboutsummaryrefslogtreecommitdiff
path: root/bfd/elf32-xtensa.c
diff options
context:
space:
mode:
Diffstat (limited to 'bfd/elf32-xtensa.c')
-rw-r--r--bfd/elf32-xtensa.c122
1 files changed, 61 insertions, 61 deletions
diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c
index f1839e6..d7bc489 100644
--- a/bfd/elf32-xtensa.c
+++ b/bfd/elf32-xtensa.c
@@ -191,10 +191,10 @@ int elf32xtensa_abi = XTHAL_ABI_UNDEFINED;
static reloc_howto_type elf_howto_table[] =
{
- HOWTO (R_XTENSA_NONE, 0, 3, 0, false, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_NONE, 0, 0, 0, false, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_NONE",
false, 0, 0, false),
- HOWTO (R_XTENSA_32, 0, 2, 32, false, 0, complain_overflow_bitfield,
+ HOWTO (R_XTENSA_32, 0, 4, 32, false, 0, complain_overflow_bitfield,
bfd_elf_xtensa_reloc, "R_XTENSA_32",
true, 0xffffffff, 0xffffffff, false),
@@ -203,161 +203,161 @@ static reloc_howto_type elf_howto_table[] =
special: 1 means to substitute a pointer to the runtime linker's
dynamic resolver function; 2 means to substitute the link map for
the shared object. */
- HOWTO (R_XTENSA_RTLD, 0, 2, 32, false, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_RTLD, 0, 4, 32, false, 0, complain_overflow_dont,
NULL, "R_XTENSA_RTLD", false, 0, 0, false),
- HOWTO (R_XTENSA_GLOB_DAT, 0, 2, 32, false, 0, complain_overflow_bitfield,
+ HOWTO (R_XTENSA_GLOB_DAT, 0, 4, 32, false, 0, complain_overflow_bitfield,
bfd_elf_generic_reloc, "R_XTENSA_GLOB_DAT",
false, 0, 0xffffffff, false),
- HOWTO (R_XTENSA_JMP_SLOT, 0, 2, 32, false, 0, complain_overflow_bitfield,
+ HOWTO (R_XTENSA_JMP_SLOT, 0, 4, 32, false, 0, complain_overflow_bitfield,
bfd_elf_generic_reloc, "R_XTENSA_JMP_SLOT",
false, 0, 0xffffffff, false),
- HOWTO (R_XTENSA_RELATIVE, 0, 2, 32, false, 0, complain_overflow_bitfield,
+ HOWTO (R_XTENSA_RELATIVE, 0, 4, 32, false, 0, complain_overflow_bitfield,
bfd_elf_generic_reloc, "R_XTENSA_RELATIVE",
false, 0, 0xffffffff, false),
- HOWTO (R_XTENSA_PLT, 0, 2, 32, false, 0, complain_overflow_bitfield,
+ HOWTO (R_XTENSA_PLT, 0, 4, 32, false, 0, complain_overflow_bitfield,
bfd_elf_xtensa_reloc, "R_XTENSA_PLT",
false, 0, 0xffffffff, false),
EMPTY_HOWTO (7),
/* Old relocations for backward compatibility. */
- HOWTO (R_XTENSA_OP0, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_OP0, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_OP0", false, 0, 0, true),
- HOWTO (R_XTENSA_OP1, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_OP1, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_OP1", false, 0, 0, true),
- HOWTO (R_XTENSA_OP2, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_OP2, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_OP2", false, 0, 0, true),
/* Assembly auto-expansion. */
- HOWTO (R_XTENSA_ASM_EXPAND, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_ASM_EXPAND, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_ASM_EXPAND", false, 0, 0, true),
/* Relax assembly auto-expansion. */
- HOWTO (R_XTENSA_ASM_SIMPLIFY, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_ASM_SIMPLIFY, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_ASM_SIMPLIFY", false, 0, 0, true),
EMPTY_HOWTO (13),
- HOWTO (R_XTENSA_32_PCREL, 0, 2, 32, true, 0, complain_overflow_bitfield,
+ HOWTO (R_XTENSA_32_PCREL, 0, 4, 32, true, 0, complain_overflow_bitfield,
bfd_elf_xtensa_reloc, "R_XTENSA_32_PCREL",
false, 0, 0xffffffff, true),
/* GNU extension to record C++ vtable hierarchy. */
- HOWTO (R_XTENSA_GNU_VTINHERIT, 0, 2, 0, false, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_GNU_VTINHERIT, 0, 4, 0, false, 0, complain_overflow_dont,
NULL, "R_XTENSA_GNU_VTINHERIT",
false, 0, 0, false),
/* GNU extension to record C++ vtable member usage. */
- HOWTO (R_XTENSA_GNU_VTENTRY, 0, 2, 0, false, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_GNU_VTENTRY, 0, 4, 0, false, 0, complain_overflow_dont,
_bfd_elf_rel_vtable_reloc_fn, "R_XTENSA_GNU_VTENTRY",
false, 0, 0, false),
/* Relocations for supporting difference of symbols. */
- HOWTO (R_XTENSA_DIFF8, 0, 0, 8, false, 0, complain_overflow_signed,
+ HOWTO (R_XTENSA_DIFF8, 0, 1, 8, false, 0, complain_overflow_signed,
bfd_elf_xtensa_reloc, "R_XTENSA_DIFF8", false, 0, 0xff, false),
- HOWTO (R_XTENSA_DIFF16, 0, 1, 16, false, 0, complain_overflow_signed,
+ HOWTO (R_XTENSA_DIFF16, 0, 2, 16, false, 0, complain_overflow_signed,
bfd_elf_xtensa_reloc, "R_XTENSA_DIFF16", false, 0, 0xffff, false),
- HOWTO (R_XTENSA_DIFF32, 0, 2, 32, false, 0, complain_overflow_signed,
+ HOWTO (R_XTENSA_DIFF32, 0, 4, 32, false, 0, complain_overflow_signed,
bfd_elf_xtensa_reloc, "R_XTENSA_DIFF32", false, 0, 0xffffffff, false),
/* General immediate operand relocations. */
- HOWTO (R_XTENSA_SLOT0_OP, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT0_OP, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT0_OP", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT1_OP, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT1_OP, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT1_OP", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT2_OP, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT2_OP, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT2_OP", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT3_OP, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT3_OP, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT3_OP", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT4_OP, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT4_OP, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT4_OP", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT5_OP, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT5_OP, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT5_OP", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT6_OP, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT6_OP, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT6_OP", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT7_OP, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT7_OP, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT7_OP", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT8_OP, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT8_OP, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT8_OP", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT9_OP, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT9_OP, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT9_OP", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT10_OP, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT10_OP, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT10_OP", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT11_OP, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT11_OP, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT11_OP", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT12_OP, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT12_OP, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT12_OP", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT13_OP, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT13_OP, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT13_OP", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT14_OP, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT14_OP, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT14_OP", false, 0, 0, true),
/* "Alternate" relocations. The meaning of these is opcode-specific. */
- HOWTO (R_XTENSA_SLOT0_ALT, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT0_ALT, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT0_ALT", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT1_ALT, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT1_ALT, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT1_ALT", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT2_ALT, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT2_ALT, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT2_ALT", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT3_ALT, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT3_ALT, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT3_ALT", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT4_ALT, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT4_ALT, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT4_ALT", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT5_ALT, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT5_ALT, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT5_ALT", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT6_ALT, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT6_ALT, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT6_ALT", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT7_ALT, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT7_ALT, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT7_ALT", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT8_ALT, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT8_ALT, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT8_ALT", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT9_ALT, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT9_ALT, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT9_ALT", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT10_ALT, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT10_ALT, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT10_ALT", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT11_ALT, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT11_ALT, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT11_ALT", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT12_ALT, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT12_ALT, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT12_ALT", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT13_ALT, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT13_ALT, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT13_ALT", false, 0, 0, true),
- HOWTO (R_XTENSA_SLOT14_ALT, 0, 0, 0, true, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_SLOT14_ALT, 0, 1, 0, true, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_SLOT14_ALT", false, 0, 0, true),
/* TLS relocations. */
- HOWTO (R_XTENSA_TLSDESC_FN, 0, 2, 32, false, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_TLSDESC_FN, 0, 4, 32, false, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_TLSDESC_FN",
false, 0, 0xffffffff, false),
- HOWTO (R_XTENSA_TLSDESC_ARG, 0, 2, 32, false, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_TLSDESC_ARG, 0, 4, 32, false, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_TLSDESC_ARG",
false, 0, 0xffffffff, false),
- HOWTO (R_XTENSA_TLS_DTPOFF, 0, 2, 32, false, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_TLS_DTPOFF, 0, 4, 32, false, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_TLS_DTPOFF",
false, 0, 0xffffffff, false),
- HOWTO (R_XTENSA_TLS_TPOFF, 0, 2, 32, false, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_TLS_TPOFF, 0, 4, 32, false, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_TLS_TPOFF",
false, 0, 0xffffffff, false),
- HOWTO (R_XTENSA_TLS_FUNC, 0, 0, 0, false, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_TLS_FUNC, 0, 1, 0, false, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_TLS_FUNC",
false, 0, 0, false),
- HOWTO (R_XTENSA_TLS_ARG, 0, 0, 0, false, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_TLS_ARG, 0, 1, 0, false, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_TLS_ARG",
false, 0, 0, false),
- HOWTO (R_XTENSA_TLS_CALL, 0, 0, 0, false, 0, complain_overflow_dont,
+ HOWTO (R_XTENSA_TLS_CALL, 0, 1, 0, false, 0, complain_overflow_dont,
bfd_elf_xtensa_reloc, "R_XTENSA_TLS_CALL",
false, 0, 0, false),
- HOWTO (R_XTENSA_PDIFF8, 0, 0, 8, false, 0, complain_overflow_bitfield,
+ HOWTO (R_XTENSA_PDIFF8, 0, 1, 8, false, 0, complain_overflow_bitfield,
bfd_elf_xtensa_reloc, "R_XTENSA_PDIFF8", false, 0, 0xff, false),
- HOWTO (R_XTENSA_PDIFF16, 0, 1, 16, false, 0, complain_overflow_bitfield,
+ HOWTO (R_XTENSA_PDIFF16, 0, 2, 16, false, 0, complain_overflow_bitfield,
bfd_elf_xtensa_reloc, "R_XTENSA_PDIFF16", false, 0, 0xffff, false),
- HOWTO (R_XTENSA_PDIFF32, 0, 2, 32, false, 0, complain_overflow_bitfield,
+ HOWTO (R_XTENSA_PDIFF32, 0, 4, 32, false, 0, complain_overflow_bitfield,
bfd_elf_xtensa_reloc, "R_XTENSA_PDIFF32", false, 0, 0xffffffff, false),
- HOWTO (R_XTENSA_NDIFF8, 0, 0, 8, false, 0, complain_overflow_bitfield,
+ HOWTO (R_XTENSA_NDIFF8, 0, 1, 8, false, 0, complain_overflow_bitfield,
bfd_elf_xtensa_reloc, "R_XTENSA_NDIFF8", false, 0, 0xff, false),
- HOWTO (R_XTENSA_NDIFF16, 0, 1, 16, false, 0, complain_overflow_bitfield,
+ HOWTO (R_XTENSA_NDIFF16, 0, 2, 16, false, 0, complain_overflow_bitfield,
bfd_elf_xtensa_reloc, "R_XTENSA_NDIFF16", false, 0, 0xffff, false),
- HOWTO (R_XTENSA_NDIFF32, 0, 2, 32, false, 0, complain_overflow_bitfield,
+ HOWTO (R_XTENSA_NDIFF32, 0, 4, 32, false, 0, complain_overflow_bitfield,
bfd_elf_xtensa_reloc, "R_XTENSA_NDIFF32", false, 0, 0xffffffff, false),
};