public inbox for binutils-cvs@sourceware.org
help / color / mirror / Atom feed
* [binutils-gdb] HOWTO size encoding
@ 2022-06-08 12:03 Alan Modra
0 siblings, 0 replies; only message in thread
From: Alan Modra @ 2022-06-08 12:03 UTC (permalink / raw)
To: bfd-cvs
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=c94cb026628b831ef63e3455a66328749ff8a415
commit c94cb026628b831ef63e3455a66328749ff8a415
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jun 7 22:43:20 2022 +0930
HOWTO size encoding
This changes the HOWTO macro to encode the howto.size field from a
value given in bytes. This of course requires editing all target
uses of HOWTO, a major pain, but makes it a little nicer to specify
new target HOWTOs. Object files before/after this patch are
unchanged in .data and .rodata.
bfd/
* reloc.c (HOWTO_RSIZE): Encode size in bytes.
(EMPTY_HOWTO): Adjust to keep it all zero.
* aout-ns32k.c, * aoutx.h, * coff-alpha.c, * coff-arm.c,
* coff-i386.c, * coff-mcore.c, * coff-mips.c, * coff-rs6000.c,
* coff-sh.c, * coff-tic30.c, * coff-tic4x.c, * coff-tic54x.c,
* coff-x86_64.c, * coff-z80.c, * coff-z8k.c, * coff64-rs6000.c,
* elf-hppa.h, * elf-m10200.c, * elf-m10300.c, * elf32-arc.c,
* elf32-arm.c, * elf32-avr.c, * elf32-bfin.c, * elf32-cr16.c,
* elf32-cris.c, * elf32-crx.c, * elf32-csky.c, * elf32-d10v.c,
* elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
* elf32-fr30.c, * elf32-frv.c, * elf32-ft32.c, * elf32-gen.c,
* elf32-h8300.c, * elf32-i386.c, * elf32-ip2k.c, * elf32-iq2000.c,
* elf32-lm32.c, * elf32-m32c.c, * elf32-m32r.c, * elf32-m68hc11.c,
* elf32-m68hc12.c, * elf32-m68k.c, * elf32-mcore.c, * elf32-mep.c,
* elf32-metag.c, * elf32-microblaze.c, * elf32-mips.c,
* elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c,
* elf32-nios2.c, * elf32-or1k.c, * elf32-pj.c, * elf32-ppc.c,
* elf32-pru.c, * elf32-rl78.c, * elf32-rx.c, * elf32-s12z.c,
* elf32-s390.c, * elf32-score.c, * elf32-score7.c,
* elf32-sh-relocs.h, * elf32-spu.c, * elf32-tic6x.c,
* elf32-tilepro.c, * elf32-v850.c, * elf32-vax.c,
* elf32-visium.c, * elf32-wasm32.c, * elf32-xc16x.c,
* elf32-xgate.c, * elf32-xstormy16.c, * elf32-xtensa.c,
* elf32-z80.c, * elf64-alpha.c, * elf64-bpf.c, * elf64-gen.c,
* elf64-mips.c, * elf64-mmix.c, * elf64-nfp.c, * elf64-ppc.c,
* elf64-s390.c, * elf64-x86-64.c, * elfn32-mips.c,
* elfnn-aarch64.c, * elfxx-ia64.c, * elfxx-loongarch.c,
* elfxx-mips.c, * elfxx-riscv.c, * elfxx-sparc.c,
* elfxx-tilegx.c, * mach-o-aarch64.c, * mach-o-arm.c,
* mach-o-i386.c, * mach-o-x86-64.c, * pdp11.c, * reloc.c,
* som.c, * vms-alpha.c: Adjust all uses of HOWTO.
* bfd-in2.h: Regenerate.
include/
* elf/arc-reloc.def: Adjust all uses of HOWTO.
Diff:
---
bfd/aout-ns32k.c | 36 ++--
bfd/aoutx.h | 82 ++++----
bfd/bfd-in2.h | 4 +-
bfd/coff-alpha.c | 34 ++--
bfd/coff-arm.c | 44 ++---
bfd/coff-i386.c | 20 +-
bfd/coff-mcore.c | 16 +-
bfd/coff-mips.c | 18 +-
bfd/coff-rs6000.c | 66 +++----
bfd/coff-sh.c | 34 ++--
bfd/coff-tic30.c | 10 +-
bfd/coff-tic4x.c | 28 +--
bfd/coff-tic54x.c | 28 +--
bfd/coff-x86_64.c | 36 ++--
bfd/coff-z80.c | 26 +--
bfd/coff-z8k.c | 16 +-
bfd/coff64-rs6000.c | 70 +++----
bfd/elf-hppa.h | 492 +++++++++++++++++++++++-----------------------
bfd/elf-m10200.c | 16 +-
bfd/elf-m10300.c | 70 +++----
bfd/elf32-arc.c | 4 +-
bfd/elf32-arm.c | 262 ++++++++++++------------
bfd/elf32-avr.c | 74 +++----
bfd/elf32-bfin.c | 76 +++----
bfd/elf32-cr16.c | 64 +++---
bfd/elf32-cris.c | 44 ++---
bfd/elf32-crx.c | 42 ++--
bfd/elf32-csky.c | 130 ++++++------
bfd/elf32-d10v.c | 18 +-
bfd/elf32-d30v.c | 26 +--
bfd/elf32-dlx.c | 20 +-
bfd/elf32-epiphany.c | 30 +--
bfd/elf32-fr30.c | 26 +--
bfd/elf32-frv.c | 96 ++++-----
bfd/elf32-ft32.c | 27 ++-
bfd/elf32-gen.c | 2 +-
bfd/elf32-h8300.c | 24 +--
bfd/elf32-i386.c | 70 +++----
bfd/elf32-ip2k.c | 30 +--
bfd/elf32-iq2000.c | 26 +--
bfd/elf32-lm32.c | 36 ++--
bfd/elf32-m32c.c | 26 +--
bfd/elf32-m32r.c | 86 ++++----
bfd/elf32-m68hc11.c | 32 +--
bfd/elf32-m68hc12.c | 42 ++--
bfd/elf32-m68k.c | 86 ++++----
bfd/elf32-mcore.c | 20 +-
bfd/elf32-mep.c | 44 ++---
bfd/elf32-metag.c | 76 +++----
bfd/elf32-microblaze.c | 64 +++---
bfd/elf32-mips.c | 198 +++++++++----------
bfd/elf32-moxie.c | 6 +-
bfd/elf32-msp430.c | 72 +++----
bfd/elf32-mt.c | 14 +-
bfd/elf32-nds32.c | 362 +++++++++++++++++++---------------
bfd/elf32-nios2.c | 210 ++++++++++----------
bfd/elf32-or1k.c | 112 +++++------
bfd/elf32-pj.c | 18 +-
bfd/elf32-ppc.c | 214 ++++++++++----------
bfd/elf32-pru.c | 32 +--
bfd/elf32-rl78.c | 112 +++++------
bfd/elf32-rx.c | 150 +++++++-------
bfd/elf32-s12z.c | 16 +-
bfd/elf32-s390.c | 110 +++++------
bfd/elf32-score.c | 44 ++---
bfd/elf32-score7.c | 40 ++--
bfd/elf32-sh-relocs.h | 122 ++++++------
bfd/elf32-spu.c | 36 ++--
bfd/elf32-tic6x.c | 122 ++++++------
bfd/elf32-tilepro.c | 116 +++++------
bfd/elf32-v850.c | 264 ++++++++++++-------------
bfd/elf32-vax.c | 30 +--
bfd/elf32-visium.c | 32 +--
bfd/elf32-wasm32.c | 4 +-
bfd/elf32-xc16x.c | 18 +-
bfd/elf32-xgate.c | 40 ++--
bfd/elf32-xstormy16.c | 30 +--
bfd/elf32-xtensa.c | 122 ++++++------
bfd/elf32-z80.c | 28 +--
bfd/elf64-alpha.c | 68 +++----
bfd/elf64-bpf.c | 28 +--
bfd/elf64-gen.c | 2 +-
bfd/elf64-mips.c | 392 ++++++++++++++++++------------------
bfd/elf64-mmix.c | 74 +++----
bfd/elf64-nfp.c | 147 +++-----------
bfd/elf64-ppc.c | 324 +++++++++++++++---------------
bfd/elf64-s390.c | 124 ++++++------
bfd/elf64-x86-64.c | 92 ++++-----
bfd/elfn32-mips.c | 392 ++++++++++++++++++------------------
bfd/elfnn-aarch64.c | 230 +++++++++++-----------
bfd/elfxx-ia64.c | 192 +++++++++---------
bfd/elfxx-loongarch.c | 76 +++----
bfd/elfxx-mips.c | 2 +-
bfd/elfxx-riscv.c | 110 +++++------
bfd/elfxx-sparc.c | 188 +++++++++---------
bfd/elfxx-tilegx.c | 120 +++++------
bfd/mach-o-aarch64.c | 32 +--
bfd/mach-o-arm.c | 34 ++--
bfd/mach-o-i386.c | 22 +--
bfd/mach-o-x86-64.c | 26 +--
bfd/pdp11.c | 6 +-
bfd/reloc.c | 8 +-
bfd/som.c | 2 +-
bfd/vms-alpha.c | 36 ++--
include/elf/arc-reloc.def | 138 ++++++-------
105 files changed, 4127 insertions(+), 4161 deletions(-)
diff --git a/bfd/aout-ns32k.c b/bfd/aout-ns32k.c
index d9804819b2e..1dce7644652 100644
--- a/bfd/aout-ns32k.c
+++ b/bfd/aout-ns32k.c
@@ -79,57 +79,57 @@ void bfd_ns32k_arch (void);
reloc_howto_type MY (howto_table)[] =
{
/* ns32k immediate operands. */
- HOWTO (BFD_RELOC_NS32K_IMM_8, 0, 0, 8, false, 0, complain_overflow_signed,
+ HOWTO (BFD_RELOC_NS32K_IMM_8, 0, 1, 8, false, 0, complain_overflow_signed,
_bfd_ns32k_reloc_imm, "NS32K_IMM_8",
true, 0x000000ff,0x000000ff, false),
- HOWTO (BFD_RELOC_NS32K_IMM_16, 0, 1, 16, false, 0, complain_overflow_signed,
+ HOWTO (BFD_RELOC_NS32K_IMM_16, 0, 2, 16, false, 0, complain_overflow_signed,
_bfd_ns32k_reloc_imm, "NS32K_IMM_16",
true, 0x0000ffff,0x0000ffff, false),
- HOWTO (BFD_RELOC_NS32K_IMM_32, 0, 2, 32, false, 0, complain_overflow_signed,
+ HOWTO (BFD_RELOC_NS32K_IMM_32, 0, 4, 32, false, 0, complain_overflow_signed,
_bfd_ns32k_reloc_imm, "NS32K_IMM_32",
true, 0xffffffff,0xffffffff, false),
- HOWTO (BFD_RELOC_NS32K_IMM_8_PCREL, 0, 0, 8, true, 0, complain_overflow_signed,
+ HOWTO (BFD_RELOC_NS32K_IMM_8_PCREL, 0, 1, 8, true, 0, complain_overflow_signed,
_bfd_ns32k_reloc_imm, "PCREL_NS32K_IMM_8",
true, 0x000000ff, 0x000000ff, false),
- HOWTO (BFD_RELOC_NS32K_IMM_16_PCREL, 0, 1, 16, true, 0, complain_overflow_signed,
+ HOWTO (BFD_RELOC_NS32K_IMM_16_PCREL, 0, 2, 16, true, 0, complain_overflow_signed,
_bfd_ns32k_reloc_imm, "PCREL_NS32K_IMM_16",
true, 0x0000ffff,0x0000ffff, false),
- HOWTO (BFD_RELOC_NS32K_IMM_32_PCREL, 0, 2, 32, true, 0, complain_overflow_signed,
+ HOWTO (BFD_RELOC_NS32K_IMM_32_PCREL, 0, 4, 32, true, 0, complain_overflow_signed,
_bfd_ns32k_reloc_imm, "PCREL_NS32K_IMM_32",
true, 0xffffffff,0xffffffff, false),
/* ns32k displacements. */
- HOWTO (BFD_RELOC_NS32K_DISP_8, 0, 0, 7, false, 0, complain_overflow_signed,
+ HOWTO (BFD_RELOC_NS32K_DISP_8, 0, 1, 7, false, 0, complain_overflow_signed,
_bfd_ns32k_reloc_disp, "NS32K_DISP_8",
true, 0x000000ff,0x000000ff, false),
- HOWTO (BFD_RELOC_NS32K_DISP_16, 0, 1, 14, false, 0, complain_overflow_signed,
+ HOWTO (BFD_RELOC_NS32K_DISP_16, 0, 2, 14, false, 0, complain_overflow_signed,
_bfd_ns32k_reloc_disp, "NS32K_DISP_16",
true, 0x0000ffff, 0x0000ffff, false),
- HOWTO (BFD_RELOC_NS32K_DISP_32, 0, 2, 30, false, 0, complain_overflow_signed,
+ HOWTO (BFD_RELOC_NS32K_DISP_32, 0, 4, 30, false, 0, complain_overflow_signed,
_bfd_ns32k_reloc_disp, "NS32K_DISP_32",
true, 0xffffffff, 0xffffffff, false),
- HOWTO (BFD_RELOC_NS32K_DISP_8_PCREL, 0, 0, 7, true, 0, complain_overflow_signed,
+ HOWTO (BFD_RELOC_NS32K_DISP_8_PCREL, 0, 1, 7, true, 0, complain_overflow_signed,
_bfd_ns32k_reloc_disp, "PCREL_NS32K_DISP_8",
true, 0x000000ff,0x000000ff, false),
- HOWTO (BFD_RELOC_NS32K_DISP_16_PCREL, 0, 1, 14, true, 0, complain_overflow_signed,
+ HOWTO (BFD_RELOC_NS32K_DISP_16_PCREL, 0, 2, 14, true, 0, complain_overflow_signed,
_bfd_ns32k_reloc_disp, "PCREL_NS32K_DISP_16",
true, 0x0000ffff,0x0000ffff, false),
- HOWTO (BFD_RELOC_NS32K_DISP_32_PCREL, 0, 2, 30, true, 0, complain_overflow_signed,
+ HOWTO (BFD_RELOC_NS32K_DISP_32_PCREL, 0, 4, 30, true, 0, complain_overflow_signed,
_bfd_ns32k_reloc_disp, "PCREL_NS32K_DISP_32",
true, 0xffffffff,0xffffffff, false),
/* Normal 2's complement. */
- HOWTO (BFD_RELOC_8, 0, 0, 8, false, 0, complain_overflow_bitfield,0,
+ HOWTO (BFD_RELOC_8, 0, 1, 8, false, 0, complain_overflow_bitfield,0,
"8", true, 0x000000ff,0x000000ff, false),
- HOWTO (BFD_RELOC_16, 0, 1, 16, false, 0, complain_overflow_bitfield,0,
+ HOWTO (BFD_RELOC_16, 0, 2, 16, false, 0, complain_overflow_bitfield,0,
"16", true, 0x0000ffff,0x0000ffff, false),
- HOWTO (BFD_RELOC_32, 0, 2, 32, false, 0, complain_overflow_bitfield,0,
+ HOWTO (BFD_RELOC_32, 0, 4, 32, false, 0, complain_overflow_bitfield,0,
"32", true, 0xffffffff,0xffffffff, false),
- HOWTO (BFD_RELOC_8_PCREL, 0, 0, 8, true, 0, complain_overflow_signed, 0,
+ HOWTO (BFD_RELOC_8_PCREL, 0, 1, 8, true, 0, complain_overflow_signed, 0,
"PCREL_8", true, 0x000000ff,0x000000ff, false),
- HOWTO (BFD_RELOC_16_PCREL, 0, 1, 16, true, 0, complain_overflow_signed, 0,
+ HOWTO (BFD_RELOC_16_PCREL, 0, 2, 16, true, 0, complain_overflow_signed, 0,
"PCREL_16", true, 0x0000ffff,0x0000ffff, false),
- HOWTO (BFD_RELOC_32_PCREL, 0, 2, 32, true, 0, complain_overflow_signed, 0,
+ HOWTO (BFD_RELOC_32_PCREL, 0, 4, 32, true, 0, complain_overflow_signed, 0,
"PCREL_32", true, 0xffffffff,0xffffffff, false),
};
diff --git a/bfd/aoutx.h b/bfd/aoutx.h
index b828b1b29b1..2bff7a8d8b2 100644
--- a/bfd/aoutx.h
+++ b/bfd/aoutx.h
@@ -190,34 +190,34 @@ DESCRIPTION
reloc_howto_type howto_table_ext[] =
{
/* Type rs size bsz pcrel bitpos ovrf sf name part_inpl readmask setmask pcdone. */
- HOWTO (RELOC_8, 0, 0, 8, false, 0, complain_overflow_bitfield, 0, "8", false, 0, 0x000000ff, false),
- HOWTO (RELOC_16, 0, 1, 16, false, 0, complain_overflow_bitfield, 0, "16", false, 0, 0x0000ffff, false),
- HOWTO (RELOC_32, 0, 2, 32, false, 0, complain_overflow_bitfield, 0, "32", false, 0, 0xffffffff, false),
- HOWTO (RELOC_DISP8, 0, 0, 8, true, 0, complain_overflow_signed, 0, "DISP8", false, 0, 0x000000ff, false),
- HOWTO (RELOC_DISP16, 0, 1, 16, true, 0, complain_overflow_signed, 0, "DISP16", false, 0, 0x0000ffff, false),
- HOWTO (RELOC_DISP32, 0, 2, 32, true, 0, complain_overflow_signed, 0, "DISP32", false, 0, 0xffffffff, false),
- HOWTO (RELOC_WDISP30, 2, 2, 30, true, 0, complain_overflow_signed, 0, "WDISP30", false, 0, 0x3fffffff, false),
- HOWTO (RELOC_WDISP22, 2, 2, 22, true, 0, complain_overflow_signed, 0, "WDISP22", false, 0, 0x003fffff, false),
- HOWTO (RELOC_HI22, 10, 2, 22, false, 0, complain_overflow_bitfield, 0, "HI22", false, 0, 0x003fffff, false),
- HOWTO (RELOC_22, 0, 2, 22, false, 0, complain_overflow_bitfield, 0, "22", false, 0, 0x003fffff, false),
- HOWTO (RELOC_13, 0, 2, 13, false, 0, complain_overflow_bitfield, 0, "13", false, 0, 0x00001fff, false),
- HOWTO (RELOC_LO10, 0, 2, 10, false, 0, complain_overflow_dont, 0, "LO10", false, 0, 0x000003ff, false),
- HOWTO (RELOC_SFA_BASE,0, 2, 32, false, 0, complain_overflow_bitfield, 0, "SFA_BASE", false, 0, 0xffffffff, false),
- HOWTO (RELOC_SFA_OFF13,0, 2, 32, false, 0, complain_overflow_bitfield, 0, "SFA_OFF13", false, 0, 0xffffffff, false),
- HOWTO (RELOC_BASE10, 0, 2, 10, false, 0, complain_overflow_dont, 0, "BASE10", false, 0, 0x000003ff, false),
- HOWTO (RELOC_BASE13, 0, 2, 13, false, 0, complain_overflow_signed, 0, "BASE13", false, 0, 0x00001fff, false),
- HOWTO (RELOC_BASE22, 10, 2, 22, false, 0, complain_overflow_bitfield, 0, "BASE22", false, 0, 0x003fffff, false),
- HOWTO (RELOC_PC10, 0, 2, 10, true, 0, complain_overflow_dont, 0, "PC10", false, 0, 0x000003ff, true),
- HOWTO (RELOC_PC22, 10, 2, 22, true, 0, complain_overflow_signed, 0, "PC22", false, 0, 0x003fffff, true),
- HOWTO (RELOC_JMP_TBL, 2, 2, 30, true, 0, complain_overflow_signed, 0, "JMP_TBL", false, 0, 0x3fffffff, false),
- HOWTO (RELOC_SEGOFF16,0, 2, 0, false, 0, complain_overflow_bitfield, 0, "SEGOFF16", false, 0, 0x00000000, false),
- HOWTO (RELOC_GLOB_DAT,0, 2, 0, false, 0, complain_overflow_bitfield, 0, "GLOB_DAT", false, 0, 0x00000000, false),
- HOWTO (RELOC_JMP_SLOT,0, 2, 0, false, 0, complain_overflow_bitfield, 0, "JMP_SLOT", false, 0, 0x00000000, false),
- HOWTO (RELOC_RELATIVE,0, 2, 0, false, 0, complain_overflow_bitfield, 0, "RELATIVE", false, 0, 0x00000000, false),
- HOWTO (0, 0, 3, 0, false, 0, complain_overflow_dont, 0, "R_SPARC_NONE",false, 0, 0x00000000, true),
- HOWTO (0, 0, 3, 0, false, 0, complain_overflow_dont, 0, "R_SPARC_NONE",false, 0, 0x00000000, true),
+ HOWTO (RELOC_8, 0, 1, 8, false, 0, complain_overflow_bitfield, 0, "8", false, 0, 0x000000ff, false),
+ HOWTO (RELOC_16, 0, 2, 16, false, 0, complain_overflow_bitfield, 0, "16", false, 0, 0x0000ffff, false),
+ HOWTO (RELOC_32, 0, 4, 32, false, 0, complain_overflow_bitfield, 0, "32", false, 0, 0xffffffff, false),
+ HOWTO (RELOC_DISP8, 0, 1, 8, true, 0, complain_overflow_signed, 0, "DISP8", false, 0, 0x000000ff, false),
+ HOWTO (RELOC_DISP16, 0, 2, 16, true, 0, complain_overflow_signed, 0, "DISP16", false, 0, 0x0000ffff, false),
+ HOWTO (RELOC_DISP32, 0, 4, 32, true, 0, complain_overflow_signed, 0, "DISP32", false, 0, 0xffffffff, false),
+ HOWTO (RELOC_WDISP30, 2, 4, 30, true, 0, complain_overflow_signed, 0, "WDISP30", false, 0, 0x3fffffff, false),
+ HOWTO (RELOC_WDISP22, 2, 4, 22, true, 0, complain_overflow_signed, 0, "WDISP22", false, 0, 0x003fffff, false),
+ HOWTO (RELOC_HI22, 10, 4, 22, false, 0, complain_overflow_bitfield, 0, "HI22", false, 0, 0x003fffff, false),
+ HOWTO (RELOC_22, 0, 4, 22, false, 0, complain_overflow_bitfield, 0, "22", false, 0, 0x003fffff, false),
+ HOWTO (RELOC_13, 0, 4, 13, false, 0, complain_overflow_bitfield, 0, "13", false, 0, 0x00001fff, false),
+ HOWTO (RELOC_LO10, 0, 4, 10, false, 0, complain_overflow_dont, 0, "LO10", false, 0, 0x000003ff, false),
+ HOWTO (RELOC_SFA_BASE,0, 4, 32, false, 0, complain_overflow_bitfield, 0, "SFA_BASE", false, 0, 0xffffffff, false),
+ HOWTO (RELOC_SFA_OFF13,0, 4, 32, false, 0, complain_overflow_bitfield, 0, "SFA_OFF13", false, 0, 0xffffffff, false),
+ HOWTO (RELOC_BASE10, 0, 4, 10, false, 0, complain_overflow_dont, 0, "BASE10", false, 0, 0x000003ff, false),
+ HOWTO (RELOC_BASE13, 0, 4, 13, false, 0, complain_overflow_signed, 0, "BASE13", false, 0, 0x00001fff, false),
+ HOWTO (RELOC_BASE22, 10, 4, 22, false, 0, complain_overflow_bitfield, 0, "BASE22", false, 0, 0x003fffff, false),
+ HOWTO (RELOC_PC10, 0, 4, 10, true, 0, complain_overflow_dont, 0, "PC10", false, 0, 0x000003ff, true),
+ HOWTO (RELOC_PC22, 10, 4, 22, true, 0, complain_overflow_signed, 0, "PC22", false, 0, 0x003fffff, true),
+ HOWTO (RELOC_JMP_TBL, 2, 4, 30, true, 0, complain_overflow_signed, 0, "JMP_TBL", false, 0, 0x3fffffff, false),
+ HOWTO (RELOC_SEGOFF16,0, 4, 0, false, 0, complain_overflow_bitfield, 0, "SEGOFF16", false, 0, 0x00000000, false),
+ HOWTO (RELOC_GLOB_DAT,0, 4, 0, false, 0, complain_overflow_bitfield, 0, "GLOB_DAT", false, 0, 0x00000000, false),
+ HOWTO (RELOC_JMP_SLOT,0, 4, 0, false, 0, complain_overflow_bitfield, 0, "JMP_SLOT", false, 0, 0x00000000, false),
+ HOWTO (RELOC_RELATIVE,0, 4, 0, false, 0, complain_overflow_bitfield, 0, "RELATIVE", false, 0, 0x00000000, false),
+ HOWTO (0, 0, 0, 0, false, 0, complain_overflow_dont, 0, "R_SPARC_NONE",false, 0, 0x00000000, true),
+ HOWTO (0, 0, 0, 0, false, 0, complain_overflow_dont, 0, "R_SPARC_NONE",false, 0, 0x00000000, true),
#define RELOC_SPARC_REV32 RELOC_WDISP19
- HOWTO (RELOC_SPARC_REV32, 0, 2, 32, false, 0, complain_overflow_dont, 0,"R_SPARC_REV32",false, 0, 0xffffffff, false),
+ HOWTO (RELOC_SPARC_REV32, 0, 4, 32, false, 0, complain_overflow_dont, 0,"R_SPARC_REV32",false, 0, 0xffffffff, false),
};
/* Convert standard reloc records to "arelent" format (incl byte swap). */
@@ -225,23 +225,23 @@ reloc_howto_type howto_table_ext[] =
reloc_howto_type howto_table_std[] =
{
/* type rs size bsz pcrel bitpos ovrf sf name part_inpl readmask setmask pcdone. */
-HOWTO ( 0, 0, 0, 8, false, 0, complain_overflow_bitfield,0,"8", true, 0x000000ff,0x000000ff, false),
-HOWTO ( 1, 0, 1, 16, false, 0, complain_overflow_bitfield,0,"16", true, 0x0000ffff,0x0000ffff, false),
-HOWTO ( 2, 0, 2, 32, false, 0, complain_overflow_bitfield,0,"32", true, 0xffffffff,0xffffffff, false),
-HOWTO ( 3, 0, 4, 64, false, 0, complain_overflow_bitfield,0,"64", true, 0xdeaddead,0xdeaddead, false),
-HOWTO ( 4, 0, 0, 8, true, 0, complain_overflow_signed, 0,"DISP8", true, 0x000000ff,0x000000ff, false),
-HOWTO ( 5, 0, 1, 16, true, 0, complain_overflow_signed, 0,"DISP16", true, 0x0000ffff,0x0000ffff, false),
-HOWTO ( 6, 0, 2, 32, true, 0, complain_overflow_signed, 0,"DISP32", true, 0xffffffff,0xffffffff, false),
-HOWTO ( 7, 0, 4, 64, true, 0, complain_overflow_signed, 0,"DISP64", true, 0xfeedface,0xfeedface, false),
-HOWTO ( 8, 0, 2, 0, false, 0, complain_overflow_bitfield,0,"GOT_REL", false, 0,0x00000000, false),
-HOWTO ( 9, 0, 1, 16, false, 0, complain_overflow_bitfield,0,"BASE16", false,0xffffffff,0xffffffff, false),
-HOWTO (10, 0, 2, 32, false, 0, complain_overflow_bitfield,0,"BASE32", false,0xffffffff,0xffffffff, false),
+HOWTO ( 0, 0, 1, 8, false, 0, complain_overflow_bitfield,0,"8", true, 0x000000ff,0x000000ff, false),
+HOWTO ( 1, 0, 2, 16, false, 0, complain_overflow_bitfield,0,"16", true, 0x0000ffff,0x0000ffff, false),
+HOWTO ( 2, 0, 4, 32, false, 0, complain_overflow_bitfield,0,"32", true, 0xffffffff,0xffffffff, false),
+HOWTO ( 3, 0, 8, 64, false, 0, complain_overflow_bitfield,0,"64", true, 0xdeaddead,0xdeaddead, false),
+HOWTO ( 4, 0, 1, 8, true, 0, complain_overflow_signed, 0,"DISP8", true, 0x000000ff,0x000000ff, false),
+HOWTO ( 5, 0, 2, 16, true, 0, complain_overflow_signed, 0,"DISP16", true, 0x0000ffff,0x0000ffff, false),
+HOWTO ( 6, 0, 4, 32, true, 0, complain_overflow_signed, 0,"DISP32", true, 0xffffffff,0xffffffff, false),
+HOWTO ( 7, 0, 8, 64, true, 0, complain_overflow_signed, 0,"DISP64", true, 0xfeedface,0xfeedface, false),
+HOWTO ( 8, 0, 4, 0, false, 0, complain_overflow_bitfield,0,"GOT_REL", false, 0,0x00000000, false),
+HOWTO ( 9, 0, 2, 16, false, 0, complain_overflow_bitfield,0,"BASE16", false,0xffffffff,0xffffffff, false),
+HOWTO (10, 0, 4, 32, false, 0, complain_overflow_bitfield,0,"BASE32", false,0xffffffff,0xffffffff, false),
EMPTY_HOWTO (-1),
EMPTY_HOWTO (-1),
EMPTY_HOWTO (-1),
EMPTY_HOWTO (-1),
EMPTY_HOWTO (-1),
- HOWTO (16, 0, 2, 0, false, 0, complain_overflow_bitfield,0,"JMP_TABLE", false, 0,0x00000000, false),
+ HOWTO (16, 0, 4, 0, false, 0, complain_overflow_bitfield,0,"JMP_TABLE", false, 0,0x00000000, false),
EMPTY_HOWTO (-1),
EMPTY_HOWTO (-1),
EMPTY_HOWTO (-1),
@@ -257,7 +257,7 @@ EMPTY_HOWTO (-1),
EMPTY_HOWTO (-1),
EMPTY_HOWTO (-1),
EMPTY_HOWTO (-1),
- HOWTO (32, 0, 2, 0, false, 0, complain_overflow_bitfield,0,"RELATIVE", false, 0,0x00000000, false),
+ HOWTO (32, 0, 4, 0, false, 0, complain_overflow_bitfield,0,"RELATIVE", false, 0,0x00000000, false),
EMPTY_HOWTO (-1),
EMPTY_HOWTO (-1),
EMPTY_HOWTO (-1),
@@ -265,7 +265,7 @@ EMPTY_HOWTO (-1),
EMPTY_HOWTO (-1),
EMPTY_HOWTO (-1),
EMPTY_HOWTO (-1),
- HOWTO (40, 0, 2, 0, false, 0, complain_overflow_bitfield,0,"BASEREL", false, 0,0x00000000, false),
+ HOWTO (40, 0, 4, 0, false, 0, complain_overflow_bitfield,0,"BASEREL", false, 0,0x00000000, false),
};
#define TABLE_SIZE(TABLE) (sizeof (TABLE) / sizeof (TABLE[0]))
diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
index 02ba9706c26..f18c2faece1 100644
--- a/bfd/bfd-in2.h
+++ b/bfd/bfd-in2.h
@@ -2135,13 +2135,13 @@ struct reloc_howto_struct
const char *name;
};
-#define HOWTO_RSIZE(sz) (sz < 0 ? -sz : sz)
+#define HOWTO_RSIZE(sz) (sz == 1 || sz == -1 ? 0 : sz == 2 || sz == -2 ? 1 : sz == 4 || sz == -4 ? 2 : sz == 0 ? 3 : sz == 8 || sz == -8 ? 4 : sz == 3 || sz == -3 ? 5 : 0x777)
#define HOWTO(type, right, size, bits, pcrel, left, ovf, func, name, \
inplace, src_mask, dst_mask, pcrel_off) \
{ (unsigned) type, HOWTO_RSIZE (size), bits, right, left, ovf, \
size < 0, pcrel, inplace, pcrel_off, src_mask, dst_mask, func, name }
#define EMPTY_HOWTO(C) \
- HOWTO ((C), 0, 0, 0, false, 0, complain_overflow_dont, NULL, \
+ HOWTO ((C), 0, 1, 0, false, 0, complain_overflow_dont, NULL, \
NULL, false, 0, 0, false)
unsigned int bfd_get_reloc_size (reloc_howto_type *);
diff --git a/bfd/coff-alpha.c b/bfd/coff-alpha.c
index 7cf51a59110..412a17889ca 100644
--- a/bfd/coff-alpha.c
+++ b/bfd/coff-alpha.c
@@ -116,7 +116,7 @@ static reloc_howto_type alpha_howto_table[] =
of the gp register are loaded. */
HOWTO (ALPHA_R_IGNORE, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
8, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -131,7 +131,7 @@ static reloc_howto_type alpha_howto_table[] =
/* A 32 bit reference to a symbol. */
HOWTO (ALPHA_R_REFLONG, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -146,7 +146,7 @@ static reloc_howto_type alpha_howto_table[] =
/* A 64 bit reference to a symbol. */
HOWTO (ALPHA_R_REFQUAD, /* type */
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long) */
+ 8, /* size */
64, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -163,7 +163,7 @@ static reloc_howto_type alpha_howto_table[] =
added in. */
HOWTO (ALPHA_R_GPREL32, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -180,7 +180,7 @@ static reloc_howto_type alpha_howto_table[] =
reloc always seems to be against the .lita section. */
HOWTO (ALPHA_R_LITERAL, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -203,7 +203,7 @@ static reloc_howto_type alpha_howto_table[] =
relocation. */
HOWTO (ALPHA_R_LITUSE, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -228,7 +228,7 @@ static reloc_howto_type alpha_howto_table[] =
address. */
HOWTO (ALPHA_R_GPDISP, /* type */
16, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
16, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -245,7 +245,7 @@ static reloc_howto_type alpha_howto_table[] =
relative offset in the instruction. */
HOWTO (ALPHA_R_BRADDR, /* type */
2, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
21, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -260,7 +260,7 @@ static reloc_howto_type alpha_howto_table[] =
/* A hint for a jump to a register. */
HOWTO (ALPHA_R_HINT, /* type */
2, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
14, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -275,7 +275,7 @@ static reloc_howto_type alpha_howto_table[] =
/* 16 bit PC relative offset. */
HOWTO (ALPHA_R_SREL16, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -290,7 +290,7 @@ static reloc_howto_type alpha_howto_table[] =
/* 32 bit PC relative offset. */
HOWTO (ALPHA_R_SREL32, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -305,7 +305,7 @@ static reloc_howto_type alpha_howto_table[] =
/* A 64 bit PC relative offset. */
HOWTO (ALPHA_R_SREL64, /* type */
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long) */
+ 8, /* size */
64, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -320,7 +320,7 @@ static reloc_howto_type alpha_howto_table[] =
/* Push a value on the reloc evaluation stack. */
HOWTO (ALPHA_R_OP_PUSH, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
0, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -336,7 +336,7 @@ static reloc_howto_type alpha_howto_table[] =
a bitfield of size r_size starting at bit position r_offset. */
HOWTO (ALPHA_R_OP_STORE, /* type */
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long) */
+ 8, /* size */
64, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -352,7 +352,7 @@ static reloc_howto_type alpha_howto_table[] =
relocation stack. */
HOWTO (ALPHA_R_OP_PSUB, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
0, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -368,7 +368,7 @@ static reloc_howto_type alpha_howto_table[] =
given value. */
HOWTO (ALPHA_R_OP_PRSHIFT, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
0, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -383,7 +383,7 @@ static reloc_howto_type alpha_howto_table[] =
/* Adjust the GP value for a new range in the object file. */
HOWTO (ALPHA_R_GPVALUE, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
0, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
diff --git a/bfd/coff-arm.c b/bfd/coff-arm.c
index 12958e4cd35..f9e117ace52 100644
--- a/bfd/coff-arm.c
+++ b/bfd/coff-arm.c
@@ -221,7 +221,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
#ifdef ARM_WINCE
HOWTO (ARM_26D,
2,
- 2,
+ 4,
24,
true,
0,
@@ -234,7 +234,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
PCRELOFFSET),
HOWTO (ARM_32,
0,
- 2,
+ 4,
32,
false,
0,
@@ -247,7 +247,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
PCRELOFFSET),
HOWTO (ARM_RVA32,
0,
- 2,
+ 4,
32,
false,
0,
@@ -260,7 +260,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
PCRELOFFSET),
HOWTO (ARM_26,
2,
- 2,
+ 4,
24,
true,
0,
@@ -273,7 +273,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
PCRELOFFSET),
HOWTO (ARM_THUMB12,
1,
- 1,
+ 2,
11,
true,
0,
@@ -295,7 +295,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
EMPTY_HOWTO (-1),
HOWTO (ARM_SECTION,
0,
- 1,
+ 2,
16,
false,
0,
@@ -308,7 +308,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
PCRELOFFSET),
HOWTO (ARM_SECREL,
0,
- 2,
+ 4,
32,
false,
0,
@@ -322,7 +322,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
#else /* not ARM_WINCE */
HOWTO (ARM_8,
0,
- 0,
+ 1,
8,
false,
0,
@@ -335,7 +335,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
PCRELOFFSET),
HOWTO (ARM_16,
0,
- 1,
+ 2,
16,
false,
0,
@@ -348,7 +348,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
PCRELOFFSET),
HOWTO (ARM_32,
0,
- 2,
+ 4,
32,
false,
0,
@@ -361,7 +361,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
PCRELOFFSET),
HOWTO (ARM_26,
2,
- 2,
+ 4,
24,
true,
0,
@@ -374,7 +374,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
PCRELOFFSET),
HOWTO (ARM_DISP8,
0,
- 0,
+ 1,
8,
true,
0,
@@ -387,7 +387,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
true),
HOWTO (ARM_DISP16,
0,
- 1,
+ 2,
16,
true,
0,
@@ -400,7 +400,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
true),
HOWTO (ARM_DISP32,
0,
- 2,
+ 4,
32,
true,
0,
@@ -413,7 +413,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
true),
HOWTO (ARM_26D,
2,
- 2,
+ 4,
24,
false,
0,
@@ -428,7 +428,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
EMPTY_HOWTO (-1),
HOWTO (ARM_NEG16,
0,
- -1,
+ -2,
16,
false,
0,
@@ -441,7 +441,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
false),
HOWTO (ARM_NEG32,
0,
- -2,
+ -4,
32,
false,
0,
@@ -454,7 +454,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
false),
HOWTO (ARM_RVA32,
0,
- 2,
+ 4,
32,
false,
0,
@@ -467,7 +467,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
PCRELOFFSET),
HOWTO (ARM_THUMB9,
1,
- 1,
+ 2,
8,
true,
0,
@@ -480,7 +480,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
PCRELOFFSET),
HOWTO (ARM_THUMB12,
1,
- 1,
+ 2,
11,
true,
0,
@@ -493,7 +493,7 @@ static reloc_howto_type aoutarm_std_reloc_howto[] =
PCRELOFFSET),
HOWTO (ARM_THUMB23,
1,
- 2,
+ 4,
22,
true,
0,
@@ -1241,7 +1241,7 @@ coff_arm_relocate_section (bfd *output_bfd,
static reloc_howto_type fake_arm26_reloc =
HOWTO (ARM_26,
2,
- 2,
+ 4,
24,
true,
0,
diff --git a/bfd/coff-i386.c b/bfd/coff-i386.c
index 32a499384b7..9e5dbab38ce 100644
--- a/bfd/coff-i386.c
+++ b/bfd/coff-i386.c
@@ -211,7 +211,7 @@ static reloc_howto_type howto_table[] =
EMPTY_HOWTO (5),
HOWTO (R_DIR32, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -225,7 +225,7 @@ static reloc_howto_type howto_table[] =
/* PE IMAGE_REL_I386_DIR32NB relocation (7). */
HOWTO (R_IMAGEBASE, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -242,7 +242,7 @@ static reloc_howto_type howto_table[] =
/* 16-bit word section relocation (012). */
HOWTO (R_SECTION, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -256,7 +256,7 @@ static reloc_howto_type howto_table[] =
/* 32-bit longword section relative relocation (013). */
HOWTO (R_SECREL32, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -277,7 +277,7 @@ static reloc_howto_type howto_table[] =
/* Byte relocation (017). */
HOWTO (R_RELBYTE, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
8, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -291,7 +291,7 @@ static reloc_howto_type howto_table[] =
/* 16-bit word relocation (020). */
HOWTO (R_RELWORD, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -305,7 +305,7 @@ static reloc_howto_type howto_table[] =
/* 32-bit longword relocation (021). */
HOWTO (R_RELLONG, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -319,7 +319,7 @@ static reloc_howto_type howto_table[] =
/* Byte PC relative relocation (022). */
HOWTO (R_PCRBYTE, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
8, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -333,7 +333,7 @@ static reloc_howto_type howto_table[] =
/* 16-bit word PC relative relocation (023). */
HOWTO (R_PCRWORD, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -347,7 +347,7 @@ static reloc_howto_type howto_table[] =
/* 32-bit longword PC relative relocation (024). */
HOWTO (R_PCRLONG, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
diff --git a/bfd/coff-mcore.c b/bfd/coff-mcore.c
index 4c261024fda..878e68bcf4b 100644
--- a/bfd/coff-mcore.c
+++ b/bfd/coff-mcore.c
@@ -61,7 +61,7 @@ static reloc_howto_type mcore_coff_howto_table[] =
/* Unused: */
HOWTO (IMAGE_REL_MCORE_ABSOLUTE,/* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
0, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -75,7 +75,7 @@ static reloc_howto_type mcore_coff_howto_table[] =
HOWTO (IMAGE_REL_MCORE_ADDR32,/* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -91,7 +91,7 @@ static reloc_howto_type mcore_coff_howto_table[] =
Should not appear in object files. */
HOWTO (IMAGE_REL_MCORE_PCREL_IMM8BY4, /* type */
2, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
8, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -108,7 +108,7 @@ static reloc_howto_type mcore_coff_howto_table[] =
Only useful pieces at the relocated address are the opcode (5 bits) */
HOWTO (IMAGE_REL_MCORE_PCREL_IMM11BY2,/* type */
1, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
11, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -123,7 +123,7 @@ static reloc_howto_type mcore_coff_howto_table[] =
/* 4 bits + 1 zero bit; 'loopt' instruction only; unsupported. */
HOWTO (IMAGE_REL_MCORE_PCREL_IMM4BY2, /* type */
1, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
4, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -138,7 +138,7 @@ static reloc_howto_type mcore_coff_howto_table[] =
/* 32-bit pc-relative. Eventually this will help support PIC code. */
HOWTO (IMAGE_REL_MCORE_PCREL_32,/* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -159,7 +159,7 @@ static reloc_howto_type mcore_coff_howto_table[] =
is a relocation that we are allowed to safely ignore. */
HOWTO (IMAGE_REL_MCORE_PCREL_JSR_IMM11BY2,/* type */
1, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
11, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -173,7 +173,7 @@ static reloc_howto_type mcore_coff_howto_table[] =
HOWTO (IMAGE_REL_MCORE_RVA, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
diff --git a/bfd/coff-mips.c b/bfd/coff-mips.c
index d4dc1bd3c19..1ef4235f081 100644
--- a/bfd/coff-mips.c
+++ b/bfd/coff-mips.c
@@ -84,7 +84,7 @@ static reloc_howto_type mips_howto_table[] =
bfd_perform_relocation to do nothing. */
HOWTO (MIPS_R_IGNORE, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
8, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -99,7 +99,7 @@ static reloc_howto_type mips_howto_table[] =
/* A 16 bit reference to a symbol, normally from a data section. */
HOWTO (MIPS_R_REFHALF, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -114,7 +114,7 @@ static reloc_howto_type mips_howto_table[] =
/* A 32 bit reference to a symbol, normally from a data section. */
HOWTO (MIPS_R_REFWORD, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -129,7 +129,7 @@ static reloc_howto_type mips_howto_table[] =
/* A 26 bit absolute jump address. */
HOWTO (MIPS_R_JMPADDR, /* type */
2, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
26, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -148,7 +148,7 @@ static reloc_howto_type mips_howto_table[] =
mips_refhi_reloc. */
HOWTO (MIPS_R_REFHI, /* type */
16, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -163,7 +163,7 @@ static reloc_howto_type mips_howto_table[] =
/* The low 16 bits of a symbol value. */
HOWTO (MIPS_R_REFLO, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -179,7 +179,7 @@ static reloc_howto_type mips_howto_table[] =
function mips_gprel_reloc. */
HOWTO (MIPS_R_GPREL, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -195,7 +195,7 @@ static reloc_howto_type mips_howto_table[] =
Handled by the function mips_gprel_reloc. */
HOWTO (MIPS_R_LITERAL, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -217,7 +217,7 @@ static reloc_howto_type mips_howto_table[] =
be removed. (It used to be used for embedded-PIC support.) */
HOWTO (MIPS_R_PCREL16, /* type */
2, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
16, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
diff --git a/bfd/coff-rs6000.c b/bfd/coff-rs6000.c
index 48ce5c0516b..f39a85a46a0 100644
--- a/bfd/coff-rs6000.c
+++ b/bfd/coff-rs6000.c
@@ -650,7 +650,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x00: Standard 32 bit relocation. */
HOWTO (R_POS, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -665,7 +665,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x01: 32 bit relocation, but store negative value. */
HOWTO (R_NEG, /* type */
0, /* rightshift */
- -2, /* size (0 = byte, 1 = short, 2 = long) */
+ -4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -680,7 +680,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x02: 32 bit PC relative relocation. */
HOWTO (R_REL, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -695,7 +695,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x03: 16 bit TOC relative relocation. */
HOWTO (R_TOC, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -710,7 +710,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x04: Same as R_TOC */
HOWTO (R_TRL, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -725,7 +725,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x05: External TOC relative symbol. */
HOWTO (R_GL, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -740,7 +740,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x06: Local TOC relative symbol. */
HOWTO (R_TCL, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -757,7 +757,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x08: Same as R_RBA. */
HOWTO (R_BA, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
26, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -774,7 +774,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x0a: Same as R_RBR. */
HOWTO (R_BR, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
26, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -791,7 +791,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x0c: Same as R_POS. */
HOWTO (R_RL, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -806,7 +806,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x0d: Same as R_POS. */
HOWTO (R_RLA, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -823,7 +823,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x0f: Non-relocating reference. Bitsize is 1 so that r_rsize is 0. */
HOWTO (R_REF, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
1, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -842,7 +842,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x13: Same as R_TOC. */
HOWTO (R_TRLA, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -857,7 +857,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x14: Modifiable relative branch. */
HOWTO (R_RRTBI, /* type */
1, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -872,7 +872,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x15: Modifiable absolute branch. */
HOWTO (R_RRTBA, /* type */
1, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -887,7 +887,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x16: Modifiable call absolute indirect. */
HOWTO (R_CAI, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -902,7 +902,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x17: Modifiable call relative. */
HOWTO (R_CREL, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -917,7 +917,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x18: Modifiable branch absolute. */
HOWTO (R_RBA, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
26, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -932,7 +932,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x19: Modifiable branch absolute. */
HOWTO (R_RBAC, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -947,7 +947,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x1a: Modifiable branch relative. */
HOWTO (R_RBR, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
26, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -962,7 +962,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x1b: Modifiable branch absolute. */
HOWTO (R_RBRC, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -977,7 +977,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x1c: 16 bit Non modifiable absolute branch. */
HOWTO (R_BA, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -992,7 +992,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x1d: Modifiable branch relative. */
HOWTO (R_RBR, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -1007,7 +1007,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x1e: Modifiable branch relative. */
HOWTO (R_RBA, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1024,7 +1024,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x20: General-dynamic TLS relocation. */
HOWTO (R_TLS, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1039,7 +1039,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x21: Initial-exec TLS relocation. */
HOWTO (R_TLS_IE, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1054,7 +1054,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x22: Local-dynamic TLS relocation. */
HOWTO (R_TLS_LD, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1069,7 +1069,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x23: Local-exec TLS relocation. */
HOWTO (R_TLS_LE, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1084,7 +1084,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x24: TLS relocation. */
HOWTO (R_TLSM, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1100,7 +1100,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x25: TLS module relocation. */
HOWTO (R_TLSML, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1126,7 +1126,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x30: High-order 16 bit TOC relative relocation. */
HOWTO (R_TOCU, /* type */
16, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1141,7 +1141,7 @@ reloc_howto_type xcoff_howto_table[] =
/* 0x31: Low-order 16 bit TOC relative relocation. */
HOWTO (R_TOCL, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -4296,7 +4296,7 @@ xcoff_generate_rtinit (bfd *abfd, const char *init, const char *fini,
static reloc_howto_type xcoff_dynamic_reloc =
HOWTO (0, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
diff --git a/bfd/coff-sh.c b/bfd/coff-sh.c
index 60e32b035f6..c5b69a8592f 100644
--- a/bfd/coff-sh.c
+++ b/bfd/coff-sh.c
@@ -103,7 +103,7 @@ static reloc_howto_type sh_coff_howtos[] =
/* Windows CE */
HOWTO (R_SH_IMM32CE, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -127,7 +127,7 @@ static reloc_howto_type sh_coff_howtos[] =
HOWTO (R_SH_PCDISP8BY2, /* type */
1, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
8, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -143,7 +143,7 @@ static reloc_howto_type sh_coff_howtos[] =
HOWTO (R_SH_PCDISP, /* type */
1, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
12, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -159,7 +159,7 @@ static reloc_howto_type sh_coff_howtos[] =
HOWTO (R_SH_IMM32, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -175,7 +175,7 @@ static reloc_howto_type sh_coff_howtos[] =
#ifdef COFF_WITH_PE
HOWTO (R_SH_IMAGEBASE, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -197,7 +197,7 @@ static reloc_howto_type sh_coff_howtos[] =
HOWTO (R_SH_PCRELIMM8BY2, /* type */
1, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
8, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -211,7 +211,7 @@ static reloc_howto_type sh_coff_howtos[] =
HOWTO (R_SH_PCRELIMM8BY4, /* type */
2, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
8, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -225,7 +225,7 @@ static reloc_howto_type sh_coff_howtos[] =
HOWTO (R_SH_IMM16, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -239,7 +239,7 @@ static reloc_howto_type sh_coff_howtos[] =
HOWTO (R_SH_SWITCH16, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -253,7 +253,7 @@ static reloc_howto_type sh_coff_howtos[] =
HOWTO (R_SH_SWITCH32, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -267,7 +267,7 @@ static reloc_howto_type sh_coff_howtos[] =
HOWTO (R_SH_USES, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -281,7 +281,7 @@ static reloc_howto_type sh_coff_howtos[] =
HOWTO (R_SH_COUNT, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -295,7 +295,7 @@ static reloc_howto_type sh_coff_howtos[] =
HOWTO (R_SH_ALIGN, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -309,7 +309,7 @@ static reloc_howto_type sh_coff_howtos[] =
HOWTO (R_SH_CODE, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -323,7 +323,7 @@ static reloc_howto_type sh_coff_howtos[] =
HOWTO (R_SH_DATA, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -337,7 +337,7 @@ static reloc_howto_type sh_coff_howtos[] =
HOWTO (R_SH_LABEL, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -351,7 +351,7 @@ static reloc_howto_type sh_coff_howtos[] =
HOWTO (R_SH_SWITCH8, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
8, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
diff --git a/bfd/coff-tic30.c b/bfd/coff-tic30.c
index 5e52c59cfdd..874fd79f3fa 100644
--- a/bfd/coff-tic30.c
+++ b/bfd/coff-tic30.c
@@ -31,15 +31,15 @@
reloc_howto_type tic30_coff_howto_table[] =
{
- HOWTO (R_TIC30_ABS16, 2, 1, 16, false, 0, 0, NULL,
+ HOWTO (R_TIC30_ABS16, 2, 2, 16, false, 0, 0, NULL,
"16", false, 0x0000FFFF, 0x0000FFFF, false),
- HOWTO (R_TIC30_ABS24, 2, 2, 24, false, 8, complain_overflow_bitfield, NULL,
+ HOWTO (R_TIC30_ABS24, 2, 4, 24, false, 8, complain_overflow_bitfield, NULL,
"24", false, 0xFFFFFF00, 0xFFFFFF00, false),
- HOWTO (R_TIC30_LDP, 18, 0, 24, false, 0, complain_overflow_bitfield, NULL,
+ HOWTO (R_TIC30_LDP, 18, 1, 24, false, 0, complain_overflow_bitfield, NULL,
"LDP", false, 0x00FF0000, 0x000000FF, false),
- HOWTO (R_TIC30_ABS32, 2, 2, 32, false, 0, complain_overflow_bitfield, NULL,
+ HOWTO (R_TIC30_ABS32, 2, 4, 32, false, 0, complain_overflow_bitfield, NULL,
"32", false, 0xFFFFFFFF, 0xFFFFFFFF, false),
- HOWTO (R_TIC30_PC16, 2, 1, 16, true, 0, complain_overflow_signed, NULL,
+ HOWTO (R_TIC30_PC16, 2, 2, 16, true, 0, complain_overflow_signed, NULL,
"PCREL", false, 0x0000FFFF, 0x0000FFFF, false),
EMPTY_HOWTO (-1)
};
diff --git a/bfd/coff-tic4x.c b/bfd/coff-tic4x.c
index e063f29c68b..02013e1655f 100644
--- a/bfd/coff-tic4x.c
+++ b/bfd/coff-tic4x.c
@@ -92,20 +92,20 @@ tic4x_relocation (bfd *abfd ATTRIBUTE_UNUSED,
reloc_howto_type tic4x_howto_table[] =
{
- HOWTO(R_RELWORD, 0, 2, 16, false, 0, complain_overflow_signed, tic4x_relocation, "RELWORD", true, 0x0000ffff, 0x0000ffff, false),
- HOWTO(R_REL24, 0, 2, 24, false, 0, complain_overflow_bitfield, tic4x_relocation, "REL24", true, 0x00ffffff, 0x00ffffff, false),
- HOWTO(R_RELLONG, 0, 2, 32, false, 0, complain_overflow_dont, tic4x_relocation, "RELLONG", true, 0xffffffff, 0xffffffff, false),
- HOWTO(R_PCRWORD, 0, 2, 16, true, 0, complain_overflow_signed, tic4x_relocation, "PCRWORD", true, 0x0000ffff, 0x0000ffff, false),
- HOWTO(R_PCR24, 0, 2, 24, true, 0, complain_overflow_signed, tic4x_relocation, "PCR24", true, 0x00ffffff, 0x00ffffff, false),
- HOWTO(R_PARTLS16, 0, 2, 16, false, 0, complain_overflow_dont, tic4x_relocation, "PARTLS16", true, 0x0000ffff, 0x0000ffff, false),
- HOWTO(R_PARTMS8, 16, 2, 16, false, 0, complain_overflow_dont, tic4x_relocation, "PARTMS8", true, 0x0000ffff, 0x0000ffff, false),
- HOWTO(R_RELWORD, 0, 2, 16, false, 0, complain_overflow_signed, tic4x_relocation, "ARELWORD", true, 0x0000ffff, 0x0000ffff, false),
- HOWTO(R_REL24, 0, 2, 24, false, 0, complain_overflow_signed, tic4x_relocation, "AREL24", true, 0x00ffffff, 0x00ffffff, false),
- HOWTO(R_RELLONG, 0, 2, 32, false, 0, complain_overflow_signed, tic4x_relocation, "ARELLONG", true, 0xffffffff, 0xffffffff, false),
- HOWTO(R_PCRWORD, 0, 2, 16, true, 0, complain_overflow_signed, tic4x_relocation, "APCRWORD", true, 0x0000ffff, 0x0000ffff, false),
- HOWTO(R_PCR24, 0, 2, 24, true, 0, complain_overflow_signed, tic4x_relocation, "APCR24", true, 0x00ffffff, 0x00ffffff, false),
- HOWTO(R_PARTLS16, 0, 2, 16, false, 0, complain_overflow_dont, tic4x_relocation, "APARTLS16", true, 0x0000ffff, 0x0000ffff, false),
- HOWTO(R_PARTMS8, 16, 2, 16, false, 0, complain_overflow_dont, tic4x_relocation, "APARTMS8", true, 0x0000ffff, 0x0000ffff, false),
+ HOWTO(R_RELWORD, 0, 4, 16, false, 0, complain_overflow_signed, tic4x_relocation, "RELWORD", true, 0x0000ffff, 0x0000ffff, false),
+ HOWTO(R_REL24, 0, 4, 24, false, 0, complain_overflow_bitfield, tic4x_relocation, "REL24", true, 0x00ffffff, 0x00ffffff, false),
+ HOWTO(R_RELLONG, 0, 4, 32, false, 0, complain_overflow_dont, tic4x_relocation, "RELLONG", true, 0xffffffff, 0xffffffff, false),
+ HOWTO(R_PCRWORD, 0, 4, 16, true, 0, complain_overflow_signed, tic4x_relocation, "PCRWORD", true, 0x0000ffff, 0x0000ffff, false),
+ HOWTO(R_PCR24, 0, 4, 24, true, 0, complain_overflow_signed, tic4x_relocation, "PCR24", true, 0x00ffffff, 0x00ffffff, false),
+ HOWTO(R_PARTLS16, 0, 4, 16, false, 0, complain_overflow_dont, tic4x_relocation, "PARTLS16", true, 0x0000ffff, 0x0000ffff, false),
+ HOWTO(R_PARTMS8, 16, 4, 16, false, 0, complain_overflow_dont, tic4x_relocation, "PARTMS8", true, 0x0000ffff, 0x0000ffff, false),
+ HOWTO(R_RELWORD, 0, 4, 16, false, 0, complain_overflow_signed, tic4x_relocation, "ARELWORD", true, 0x0000ffff, 0x0000ffff, false),
+ HOWTO(R_REL24, 0, 4, 24, false, 0, complain_overflow_signed, tic4x_relocation, "AREL24", true, 0x00ffffff, 0x00ffffff, false),
+ HOWTO(R_RELLONG, 0, 4, 32, false, 0, complain_overflow_signed, tic4x_relocation, "ARELLONG", true, 0xffffffff, 0xffffffff, false),
+ HOWTO(R_PCRWORD, 0, 4, 16, true, 0, complain_overflow_signed, tic4x_relocation, "APCRWORD", true, 0x0000ffff, 0x0000ffff, false),
+ HOWTO(R_PCR24, 0, 4, 24, true, 0, complain_overflow_signed, tic4x_relocation, "APCR24", true, 0x00ffffff, 0x00ffffff, false),
+ HOWTO(R_PARTLS16, 0, 4, 16, false, 0, complain_overflow_dont, tic4x_relocation, "APARTLS16", true, 0x0000ffff, 0x0000ffff, false),
+ HOWTO(R_PARTMS8, 16, 4, 16, false, 0, complain_overflow_dont, tic4x_relocation, "APARTMS8", true, 0x0000ffff, 0x0000ffff, false),
};
#define HOWTO_SIZE (sizeof(tic4x_howto_table) / sizeof(tic4x_howto_table[0]))
diff --git a/bfd/coff-tic54x.c b/bfd/coff-tic54x.c
index 223a081b20a..8b493584503 100644
--- a/bfd/coff-tic54x.c
+++ b/bfd/coff-tic54x.c
@@ -148,64 +148,64 @@ tic54x_relocation (bfd *abfd ATTRIBUTE_UNUSED,
reloc_howto_type tic54x_howto_table[] =
{
- /* type,rightshift,size (0=byte, 1=short, 2=long),
+ /* type,rightshift,size,
bit size, pc_relative, bitpos, dont complain_on_overflow,
special_function, name, partial_inplace, src_mask, dst_mask, pcrel_offset. */
/* NORMAL BANK */
/* 16-bit direct reference to symbol's address. */
- HOWTO (R_RELWORD,0,1,16,false,0,complain_overflow_dont,
+ HOWTO (R_RELWORD,0,2,16,false,0,complain_overflow_dont,
tic54x_relocation,"REL16",false,0xFFFF,0xFFFF,false),
/* 7 LSBs of an address */
- HOWTO (R_PARTLS7,0,1,7,false,0,complain_overflow_dont,
+ HOWTO (R_PARTLS7,0,2,7,false,0,complain_overflow_dont,
tic54x_relocation,"LS7",false,0x007F,0x007F,false),
/* 9 MSBs of an address */
/* TI assembler doesn't shift its encoding, and is thus incompatible */
- HOWTO (R_PARTMS9,7,1,9,false,0,complain_overflow_dont,
+ HOWTO (R_PARTMS9,7,2,9,false,0,complain_overflow_dont,
tic54x_relocation,"MS9",false,0x01FF,0x01FF,false),
/* 23-bit relocation */
- HOWTO (R_EXTWORD,0,2,23,false,0,complain_overflow_dont,
+ HOWTO (R_EXTWORD,0,4,23,false,0,complain_overflow_dont,
tic54x_relocation,"RELEXT",false,0x7FFFFF,0x7FFFFF,false),
/* 16 bits of 23-bit extended address */
- HOWTO (R_EXTWORD16,0,1,16,false,0,complain_overflow_dont,
+ HOWTO (R_EXTWORD16,0,2,16,false,0,complain_overflow_dont,
tic54x_relocation,"RELEXT16",false,0x7FFFFF,0x7FFFFF,false),
/* upper 7 bits of 23-bit extended address */
- HOWTO (R_EXTWORDMS7,16,1,7,false,0,complain_overflow_dont,
+ HOWTO (R_EXTWORDMS7,16,2,7,false,0,complain_overflow_dont,
tic54x_relocation,"RELEXTMS7",false,0x7F,0x7F,false),
/* ABSOLUTE BANK */
/* 16-bit direct reference to symbol's address, absolute */
- HOWTO (R_RELWORD,0,1,16,false,0,complain_overflow_dont,
+ HOWTO (R_RELWORD,0,2,16,false,0,complain_overflow_dont,
tic54x_relocation,"AREL16",false,0xFFFF,0xFFFF,false),
/* 7 LSBs of an address, absolute */
- HOWTO (R_PARTLS7,0,1,7,false,0,complain_overflow_dont,
+ HOWTO (R_PARTLS7,0,2,7,false,0,complain_overflow_dont,
tic54x_relocation,"ALS7",false,0x007F,0x007F,false),
/* 9 MSBs of an address, absolute */
/* TI assembler doesn't shift its encoding, and is thus incompatible */
- HOWTO (R_PARTMS9,7,1,9,false,0,complain_overflow_dont,
+ HOWTO (R_PARTMS9,7,2,9,false,0,complain_overflow_dont,
tic54x_relocation,"AMS9",false,0x01FF,0x01FF,false),
/* 23-bit direct reference, absolute */
- HOWTO (R_EXTWORD,0,2,23,false,0,complain_overflow_dont,
+ HOWTO (R_EXTWORD,0,4,23,false,0,complain_overflow_dont,
tic54x_relocation,"ARELEXT",false,0x7FFFFF,0x7FFFFF,false),
/* 16 bits of 23-bit extended address, absolute */
- HOWTO (R_EXTWORD16,0,1,16,false,0,complain_overflow_dont,
+ HOWTO (R_EXTWORD16,0,2,16,false,0,complain_overflow_dont,
tic54x_relocation,"ARELEXT16",false,0x7FFFFF,0x7FFFFF,false),
/* upper 7 bits of 23-bit extended address, absolute */
- HOWTO (R_EXTWORDMS7,16,1,7,false,0,complain_overflow_dont,
+ HOWTO (R_EXTWORDMS7,16,2,7,false,0,complain_overflow_dont,
tic54x_relocation,"ARELEXTMS7",false,0x7F,0x7F,false),
/* 32-bit relocation exclusively for stabs */
- HOWTO (R_RELLONG,0,2,32,false,0,complain_overflow_dont,
+ HOWTO (R_RELLONG,0,4,32,false,0,complain_overflow_dont,
tic54x_relocation,"STAB",false,0xFFFFFFFF,0xFFFFFFFF,false),
};
diff --git a/bfd/coff-x86_64.c b/bfd/coff-x86_64.c
index cf339c93215..bc9c3d43699 100644
--- a/bfd/coff-x86_64.c
+++ b/bfd/coff-x86_64.c
@@ -240,7 +240,7 @@ static reloc_howto_type howto_table[] =
EMPTY_HOWTO (0),
HOWTO (R_AMD64_DIR64, /* type 1*/
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long, 4 = long long) */
+ 8, /* size */
64, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -253,7 +253,7 @@ static reloc_howto_type howto_table[] =
true), /* pcrel_offset */
HOWTO (R_AMD64_DIR32, /* type 2 */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -267,7 +267,7 @@ static reloc_howto_type howto_table[] =
/* PE IMAGE_REL_AMD64_ADDR32NB relocation (3). */
HOWTO (R_AMD64_IMAGEBASE, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -281,7 +281,7 @@ static reloc_howto_type howto_table[] =
/* 32-bit longword PC relative relocation (4). */
HOWTO (R_AMD64_PCRLONG, /* type 4 */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -295,7 +295,7 @@ static reloc_howto_type howto_table[] =
HOWTO (R_AMD64_PCRLONG_1, /* type 5 */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -308,7 +308,7 @@ static reloc_howto_type howto_table[] =
PCRELOFFSET), /* pcrel_offset */
HOWTO (R_AMD64_PCRLONG_2, /* type 6 */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -321,7 +321,7 @@ static reloc_howto_type howto_table[] =
PCRELOFFSET), /* pcrel_offset */
HOWTO (R_AMD64_PCRLONG_3, /* type 7 */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -334,7 +334,7 @@ static reloc_howto_type howto_table[] =
PCRELOFFSET), /* pcrel_offset */
HOWTO (R_AMD64_PCRLONG_4, /* type 8 */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -347,7 +347,7 @@ static reloc_howto_type howto_table[] =
PCRELOFFSET), /* pcrel_offset */
HOWTO (R_AMD64_PCRLONG_5, /* type 9 */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -362,7 +362,7 @@ static reloc_howto_type howto_table[] =
/* 16-bit word section relocation (10). */
HOWTO (R_AMD64_SECTION, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -376,7 +376,7 @@ static reloc_howto_type howto_table[] =
/* 32-bit longword section relative relocation (11). */
HOWTO (R_AMD64_SECREL, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -396,7 +396,7 @@ static reloc_howto_type howto_table[] =
#ifndef DONT_EXTEND_AMD64
HOWTO (R_AMD64_PCRQUAD,
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long) */
+ 8, /* size */
64, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -413,7 +413,7 @@ static reloc_howto_type howto_table[] =
/* Byte relocation (15). */
HOWTO (R_RELBYTE, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
8, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -427,7 +427,7 @@ static reloc_howto_type howto_table[] =
/* 16-bit word relocation (16). */
HOWTO (R_RELWORD, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -441,7 +441,7 @@ static reloc_howto_type howto_table[] =
/* 32-bit longword relocation (17). */
HOWTO (R_RELLONG, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -455,7 +455,7 @@ static reloc_howto_type howto_table[] =
/* Byte PC relative relocation (18). */
HOWTO (R_PCRBYTE, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
8, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -469,7 +469,7 @@ static reloc_howto_type howto_table[] =
/* 16-bit word PC relative relocation (19). */
HOWTO (R_PCRWORD, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -483,7 +483,7 @@ static reloc_howto_type howto_table[] =
/* 32-bit longword PC relative relocation (20). */
HOWTO (R_PCRLONG, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
diff --git a/bfd/coff-z80.c b/bfd/coff-z80.c
index fd3c84a196e..ba0f2609bf0 100644
--- a/bfd/coff-z80.c
+++ b/bfd/coff-z80.c
@@ -45,7 +45,7 @@ static bfd_howto_type howto_table[] =
BFD_HOWTO (BFD_RELOC_32,
R_IMM32, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -60,7 +60,7 @@ static bfd_howto_type howto_table[] =
BFD_HOWTO (BFD_RELOC_24,
R_IMM24, /* type */
0, /* rightshift */
- 5, /* size (0 = byte, 1 = short, 2 = long) */
+ 3, /* size */
24, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -75,7 +75,7 @@ static bfd_howto_type howto_table[] =
BFD_HOWTO (BFD_RELOC_16,
R_IMM16, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -90,7 +90,7 @@ static bfd_howto_type howto_table[] =
BFD_HOWTO (BFD_RELOC_8,
R_IMM8, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
8, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -105,7 +105,7 @@ static bfd_howto_type howto_table[] =
BFD_HOWTO (BFD_RELOC_8_PCREL,
R_JR, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
8, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -120,7 +120,7 @@ static bfd_howto_type howto_table[] =
BFD_HOWTO (BFD_RELOC_Z80_DISP8,
R_OFF8, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
8, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -135,7 +135,7 @@ static bfd_howto_type howto_table[] =
BFD_HOWTO (BFD_RELOC_Z80_BYTE0,
R_BYTE0, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
8, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -150,7 +150,7 @@ static bfd_howto_type howto_table[] =
BFD_HOWTO (BFD_RELOC_Z80_BYTE1,
R_BYTE1, /* type */
8, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
8, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -165,7 +165,7 @@ static bfd_howto_type howto_table[] =
BFD_HOWTO (BFD_RELOC_Z80_BYTE2,
R_BYTE2, /* type */
16, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
8, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -180,7 +180,7 @@ static bfd_howto_type howto_table[] =
BFD_HOWTO (BFD_RELOC_Z80_BYTE3,
R_BYTE3, /* type */
24, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
8, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -195,7 +195,7 @@ static bfd_howto_type howto_table[] =
BFD_HOWTO (BFD_RELOC_Z80_WORD0,
R_WORD0, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -210,7 +210,7 @@ static bfd_howto_type howto_table[] =
BFD_HOWTO (BFD_RELOC_Z80_WORD1,
R_WORD1, /* type */
16, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -225,7 +225,7 @@ static bfd_howto_type howto_table[] =
BFD_HOWTO (BFD_RELOC_Z80_16_BE,
R_IMM16BE, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
diff --git a/bfd/coff-z8k.c b/bfd/coff-z8k.c
index 076b798f534..b9f6f9773ad 100644
--- a/bfd/coff-z8k.c
+++ b/bfd/coff-z8k.c
@@ -31,39 +31,39 @@
#define COFF_DEFAULT_SECTION_ALIGNMENT_POWER (1)
static reloc_howto_type r_imm32 =
-HOWTO (R_IMM32, 0, 2, 32, false, 0,
+HOWTO (R_IMM32, 0, 4, 32, false, 0,
complain_overflow_bitfield, 0, "r_imm32", true, 0xffffffff,
0xffffffff, false);
static reloc_howto_type r_imm4l =
-HOWTO (R_IMM4L, 0, 0, 4, false, 0,
+HOWTO (R_IMM4L, 0, 1, 4, false, 0,
complain_overflow_bitfield, 0, "r_imm4l", true, 0xf, 0xf, false);
static reloc_howto_type r_da =
-HOWTO (R_IMM16, 0, 1, 16, false, 0,
+HOWTO (R_IMM16, 0, 2, 16, false, 0,
complain_overflow_bitfield, 0, "r_da", true, 0x0000ffff, 0x0000ffff,
false);
static reloc_howto_type r_imm8 =
-HOWTO (R_IMM8, 0, 0, 8, false, 0,
+HOWTO (R_IMM8, 0, 1, 8, false, 0,
complain_overflow_bitfield, 0, "r_imm8", true, 0x000000ff, 0x000000ff,
false);
static reloc_howto_type r_rel16 =
-HOWTO (R_REL16, 0, 1, 16, false, 0,
+HOWTO (R_REL16, 0, 2, 16, false, 0,
complain_overflow_bitfield, 0, "r_rel16", true, 0x0000ffff, 0x0000ffff,
true);
static reloc_howto_type r_jr =
-HOWTO (R_JR, 1, 0, 8, true, 0, complain_overflow_signed, 0,
+HOWTO (R_JR, 1, 1, 8, true, 0, complain_overflow_signed, 0,
"r_jr", true, 0xff, 0xff, true);
static reloc_howto_type r_disp7 =
-HOWTO (R_DISP7, 0, 0, 7, true, 0, complain_overflow_bitfield, 0,
+HOWTO (R_DISP7, 0, 1, 7, true, 0, complain_overflow_bitfield, 0,
"r_disp7", true, 0x7f, 0x7f, true);
static reloc_howto_type r_callr =
-HOWTO (R_CALLR, 1, 1, 12, true, 0, complain_overflow_signed, 0,
+HOWTO (R_CALLR, 1, 2, 12, true, 0, complain_overflow_signed, 0,
"r_callr", true, 0xfff, 0xfff, true);
#define BADMAG(x) Z8KBADMAG(x)
diff --git a/bfd/coff64-rs6000.c b/bfd/coff64-rs6000.c
index 2f8077ae6a2..5df3dc19952 100644
--- a/bfd/coff64-rs6000.c
+++ b/bfd/coff64-rs6000.c
@@ -906,7 +906,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x00: Standard 64 bit relocation. */
HOWTO (R_POS, /* type */
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long) */
+ 8, /* size */
64, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -921,7 +921,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x01: 64 bit relocation, but store negative value. */
HOWTO (R_NEG, /* type */
0, /* rightshift */
- -4, /* size (0 = byte, 1 = short, 2 = long) */
+ -8, /* size */
64, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -936,7 +936,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x02: 64 bit PC relative relocation. */
HOWTO (R_REL, /* type */
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long) */
+ 8, /* size */
64, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -951,7 +951,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x03: 16 bit TOC relative relocation. */
HOWTO (R_TOC, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -966,7 +966,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x04: Same as R_TOC. */
HOWTO (R_TRL, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -981,7 +981,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x05: External TOC relative symbol. */
HOWTO (R_GL, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -996,7 +996,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x06: Local TOC relative symbol. */
HOWTO (R_TCL, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1013,7 +1013,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x08: Same as R_RBA. */
HOWTO (R_BA, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
26, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1030,7 +1030,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x0a: Same as R_RBR. */
HOWTO (R_BR, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
26, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -1047,7 +1047,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x0c: Same as R_POS. */
HOWTO (R_RL, /* type */
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long) */
+ 8, /* size */
64, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1062,7 +1062,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x0d: Same as R_POS. */
HOWTO (R_RLA, /* type */
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long) */
+ 8, /* size */
64, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1079,7 +1079,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x0f: Non-relocating reference. Bitsize is 1 so that r_rsize is 0. */
HOWTO (R_REF, /* type */
0, /* rightshift */
- 0, /* size (0 = byte, 1 = short, 2 = long) */
+ 1, /* size */
1, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1098,7 +1098,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x13: Same as R_TOC */
HOWTO (R_TRLA, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1113,7 +1113,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x14: Modifiable relative branch. */
HOWTO (R_RRTBI, /* type */
1, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1128,7 +1128,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x15: Modifiable absolute branch. */
HOWTO (R_RRTBA, /* type */
1, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1143,7 +1143,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x16: Modifiable call absolute indirect. */
HOWTO (R_CAI, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1158,7 +1158,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x17: Modifiable call relative. */
HOWTO (R_CREL, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1173,7 +1173,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x18: Modifiable branch absolute. */
HOWTO (R_RBA, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
26, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1188,7 +1188,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x19: Modifiable branch absolute. */
HOWTO (R_RBAC, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1203,7 +1203,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x1a: Modifiable branch relative. */
HOWTO (R_RBR, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
26, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1218,7 +1218,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x1b: Modifiable branch absolute. */
HOWTO (R_RBRC, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1233,7 +1233,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x1c: Standard 32 bit relocation. */
HOWTO (R_POS, /* type */
0, /* rightshift */
- 2, /* size (0 = byte, 1 = short, 2 = long) */
+ 4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1248,7 +1248,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x1d: 16 bit Non modifiable absolute branch. */
HOWTO (R_BA, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1263,7 +1263,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x1e: Modifiable branch relative. */
HOWTO (R_RBR, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
true, /* pc_relative */
0, /* bitpos */
@@ -1278,7 +1278,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x1f: Modifiable branch absolute. */
HOWTO (R_RBA, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1293,7 +1293,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x20: General-dynamic TLS relocation. */
HOWTO (R_TLS, /* type */
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long) */
+ 8, /* size */
64, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1308,7 +1308,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x21: Initial-exec TLS relocation. */
HOWTO (R_TLS_IE, /* type */
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long) */
+ 8, /* size */
64, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1323,7 +1323,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x22: Local-dynamic TLS relocation. */
HOWTO (R_TLS_LD, /* type */
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long) */
+ 8, /* size */
64, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1338,7 +1338,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x23: Local-exec TLS relocation. */
HOWTO (R_TLS_LE, /* type */
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long) */
+ 8, /* size */
64, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1353,7 +1353,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x24: TLS relocation. */
HOWTO (R_TLSM, /* type */
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long) */
+ 8, /* size */
64, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1368,7 +1368,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x25: TLS module relocation. */
HOWTO (R_TLSML, /* type */
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long) */
+ 8, /* size */
64, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1383,7 +1383,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x26: 32 bit relocation, but store negative value. */
HOWTO (R_NEG, /* type */
0, /* rightshift */
- -2, /* size (0 = byte, 1 = short, 2 = long) */
+ -4, /* size */
32, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1407,7 +1407,7 @@ reloc_howto_type xcoff64_howto_table[] =
HOWTO (R_TOCU, /* type */
16, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -1422,7 +1422,7 @@ reloc_howto_type xcoff64_howto_table[] =
/* 0x31: Low-order 16 bit TOC relative relocation. */
HOWTO (R_TOCL, /* type */
0, /* rightshift */
- 1, /* size (0 = byte, 1 = short, 2 = long) */
+ 2, /* size */
16, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
@@ -2398,7 +2398,7 @@ xcoff64_generate_rtinit (bfd *abfd, const char *init, const char *fini,
static reloc_howto_type xcoff64_dynamic_reloc =
HOWTO (0, /* type */
0, /* rightshift */
- 4, /* size (0 = byte, 1 = short, 2 = long) */
+ 8, /* size */
64, /* bitsize */
false, /* pc_relative */
0, /* bitpos */
diff --git a/bfd/elf-hppa.h b/bfd/elf-hppa.h
index b0d44dca2d2..2fed9b7377b 100644
--- a/bfd/elf-hppa.h
+++ b/bfd/elf-hppa.h
@@ -53,282 +53,282 @@ static reloc_howto_type elf_hppa_howto_table[ELF_HOWTO_TABLE_SIZE] =
/* The values in DIR32 are to placate the check in
_bfd_stab_section_find_nearest_line. */
- HOW (R_PARISC_NONE, 3, 0, false, dont, 0),
- HOW (R_PARISC_DIR32, 2, 32, false, bitfield, 0xffffffff),
- HOW (R_PARISC_DIR21L, 2, 21, false, bitfield, 0),
- HOW (R_PARISC_DIR17R, 2, 17, false, bitfield, 0),
- HOW (R_PARISC_DIR17F, 2, 17, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_DIR14R, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_DIR14F, 2, 14, false, bitfield, 0),
+ HOW (R_PARISC_NONE, 0, 0, false, dont, 0),
+ HOW (R_PARISC_DIR32, 4, 32, false, bitfield, 0xffffffff),
+ HOW (R_PARISC_DIR21L, 4, 21, false, bitfield, 0),
+ HOW (R_PARISC_DIR17R, 4, 17, false, bitfield, 0),
+ HOW (R_PARISC_DIR17F, 4, 17, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_DIR14R, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_DIR14F, 4, 14, false, bitfield, 0),
/* 8 */
- HOW (R_PARISC_PCREL12F, 2, 12, true, bitfield, 0),
- HOW (R_PARISC_PCREL32, 2, 32, true, bitfield, 0),
- HOW (R_PARISC_PCREL21L, 2, 21, true, bitfield, 0),
- HOW (R_PARISC_PCREL17R, 2, 17, true, bitfield, 0),
- HOW (R_PARISC_PCREL17F, 2, 17, true, bitfield, 0),
- HOW (R_PARISC_PCREL17C, 2, 17, true, bitfield, 0),
- HOW (R_PARISC_PCREL14R, 2, 14, true, bitfield, 0),
- HOW (R_PARISC_PCREL14F, 2, 14, true, bitfield, 0),
+ HOW (R_PARISC_PCREL12F, 4, 12, true, bitfield, 0),
+ HOW (R_PARISC_PCREL32, 4, 32, true, bitfield, 0),
+ HOW (R_PARISC_PCREL21L, 4, 21, true, bitfield, 0),
+ HOW (R_PARISC_PCREL17R, 4, 17, true, bitfield, 0),
+ HOW (R_PARISC_PCREL17F, 4, 17, true, bitfield, 0),
+ HOW (R_PARISC_PCREL17C, 4, 17, true, bitfield, 0),
+ HOW (R_PARISC_PCREL14R, 4, 14, true, bitfield, 0),
+ HOW (R_PARISC_PCREL14F, 4, 14, true, bitfield, 0),
/* 16 */
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_DPREL21L, 2, 21, false, bitfield, 0),
- HOW (R_PARISC_DPREL14WR, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_DPREL14DR, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_DPREL14R, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_DPREL14F, 2, 14, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_DPREL21L, 4, 21, false, bitfield, 0),
+ HOW (R_PARISC_DPREL14WR, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_DPREL14DR, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_DPREL14R, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_DPREL14F, 4, 14, false, bitfield, 0),
/* 24 */
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_DLTREL21L, 2, 21, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_DLTREL14R, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_DLTREL14F, 2, 14, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_DLTREL21L, 4, 21, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_DLTREL14R, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_DLTREL14F, 4, 14, false, bitfield, 0),
/* 32 */
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_DLTIND21L, 2, 21, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_DLTIND14R, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_DLTIND14F, 2, 14, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_DLTIND21L, 4, 21, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_DLTIND14R, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_DLTIND14F, 4, 14, false, bitfield, 0),
/* 40 */
- HOW (R_PARISC_SETBASE, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_SECREL32, 2, 32, false, bitfield, 0xffffffff),
- HOW (R_PARISC_BASEREL21L, 2, 21, false, bitfield, 0),
- HOW (R_PARISC_BASEREL17R, 2, 17, false, bitfield, 0),
- HOW (R_PARISC_BASEREL17F, 2, 17, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_BASEREL14R, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_BASEREL14F, 2, 14, false, bitfield, 0),
+ HOW (R_PARISC_SETBASE, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_SECREL32, 4, 32, false, bitfield, 0xffffffff),
+ HOW (R_PARISC_BASEREL21L, 4, 21, false, bitfield, 0),
+ HOW (R_PARISC_BASEREL17R, 4, 17, false, bitfield, 0),
+ HOW (R_PARISC_BASEREL17F, 4, 17, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_BASEREL14R, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_BASEREL14F, 4, 14, false, bitfield, 0),
/* 48 */
- HOW (R_PARISC_SEGBASE, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_SEGREL32, 2, 32, false, bitfield, 0),
- HOW (R_PARISC_PLTOFF21L, 2, 21, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_PLTOFF14R, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_PLTOFF14F, 2, 14, false, bitfield, 0),
+ HOW (R_PARISC_SEGBASE, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_SEGREL32, 4, 32, false, bitfield, 0),
+ HOW (R_PARISC_PLTOFF21L, 4, 21, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_PLTOFF14R, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_PLTOFF14F, 4, 14, false, bitfield, 0),
/* 56 */
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_LTOFF_FPTR32, 2, 32, false, bitfield, 0),
- HOW (R_PARISC_LTOFF_FPTR21L, 2, 21, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_LTOFF_FPTR14R, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_LTOFF_FPTR32, 4, 32, false, bitfield, 0),
+ HOW (R_PARISC_LTOFF_FPTR21L, 4, 21, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_LTOFF_FPTR14R, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
/* 64 */
- HOW (R_PARISC_FPTR64, 4, 64, false, bitfield, 0),
- HOW (R_PARISC_PLABEL32, 2, 32, false, bitfield, 0),
- HOW (R_PARISC_PLABEL21L, 2, 21, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_PLABEL14R, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
+ HOW (R_PARISC_FPTR64, 8, 64, false, bitfield, 0),
+ HOW (R_PARISC_PLABEL32, 4, 32, false, bitfield, 0),
+ HOW (R_PARISC_PLABEL21L, 4, 21, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_PLABEL14R, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
/* 72 */
- HOW (R_PARISC_PCREL64, 4, 64, false, bitfield, 0),
- HOW (R_PARISC_PCREL22C, 2, 22, false, bitfield, 0),
- HOW (R_PARISC_PCREL22F, 2, 22, false, bitfield, 0),
- HOW (R_PARISC_PCREL14WR, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_PCREL14DR, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_PCREL16F, 2, 16, false, bitfield, 0),
- HOW (R_PARISC_PCREL16WF, 2, 16, false, bitfield, 0),
- HOW (R_PARISC_PCREL16DF, 2, 16, false, bitfield, 0),
+ HOW (R_PARISC_PCREL64, 8, 64, false, bitfield, 0),
+ HOW (R_PARISC_PCREL22C, 4, 22, false, bitfield, 0),
+ HOW (R_PARISC_PCREL22F, 4, 22, false, bitfield, 0),
+ HOW (R_PARISC_PCREL14WR, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_PCREL14DR, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_PCREL16F, 4, 16, false, bitfield, 0),
+ HOW (R_PARISC_PCREL16WF, 4, 16, false, bitfield, 0),
+ HOW (R_PARISC_PCREL16DF, 4, 16, false, bitfield, 0),
/* 80 */
- HOW (R_PARISC_DIR64, 4, 64, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_DIR14WR, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_DIR14DR, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_DIR16F, 2, 16, false, bitfield, 0),
- HOW (R_PARISC_DIR16WF, 2, 16, false, bitfield, 0),
- HOW (R_PARISC_DIR16DF, 2, 16, false, bitfield, 0),
+ HOW (R_PARISC_DIR64, 8, 64, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_DIR14WR, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_DIR14DR, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_DIR16F, 4, 16, false, bitfield, 0),
+ HOW (R_PARISC_DIR16WF, 4, 16, false, bitfield, 0),
+ HOW (R_PARISC_DIR16DF, 4, 16, false, bitfield, 0),
/* 88 */
- HOW (R_PARISC_GPREL64, 4, 64, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_DLTREL14WR, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_DLTREL14DR, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_GPREL16F, 2, 16, false, bitfield, 0),
- HOW (R_PARISC_GPREL16WF, 2, 16, false, bitfield, 0),
- HOW (R_PARISC_GPREL16DF, 2, 16, false, bitfield, 0),
+ HOW (R_PARISC_GPREL64, 8, 64, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_DLTREL14WR, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_DLTREL14DR, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_GPREL16F, 4, 16, false, bitfield, 0),
+ HOW (R_PARISC_GPREL16WF, 4, 16, false, bitfield, 0),
+ HOW (R_PARISC_GPREL16DF, 4, 16, false, bitfield, 0),
/* 96 */
- HOW (R_PARISC_LTOFF64, 4, 64, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_DLTIND14WR, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_DLTIND14DR, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_LTOFF16F, 2, 16, false, bitfield, 0),
- HOW (R_PARISC_LTOFF16WF, 2, 16, false, bitfield, 0),
- HOW (R_PARISC_LTOFF16DF, 2, 16, false, bitfield, 0),
+ HOW (R_PARISC_LTOFF64, 8, 64, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_DLTIND14WR, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_DLTIND14DR, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_LTOFF16F, 4, 16, false, bitfield, 0),
+ HOW (R_PARISC_LTOFF16WF, 4, 16, false, bitfield, 0),
+ HOW (R_PARISC_LTOFF16DF, 4, 16, false, bitfield, 0),
/* 104 */
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_BASEREL14WR, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_BASEREL14DR, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_BASEREL14WR, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_BASEREL14DR, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
/* 112 */
- HOW (R_PARISC_SEGREL64, 4, 64, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_PLTOFF14WR, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_PLTOFF14DR, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_PLTOFF16F, 2, 16, false, bitfield, 0),
- HOW (R_PARISC_PLTOFF16WF, 2, 16, false, bitfield, 0),
- HOW (R_PARISC_PLTOFF16DF, 2, 16, false, bitfield, 0),
+ HOW (R_PARISC_SEGREL64, 8, 64, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_UNIMPLEMENTED, 1, 0, false, bitfield, 0),
+ HOW (R_PARISC_PLTOFF14WR, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_PLTOFF14DR, 4, 14, false, bitfield, 0),
+ HOW (R_PARISC_PLTOFF16F, 4, 16, false, bitfield, 0),
+ HOW (R_PARISC_PLTOFF16WF, 4, 16, false, bitfield, 0),
+ HOW (R_PARISC_PLTOFF16DF, 4, 16, false, bitfield, 0),
/* 120 */
- HOW (R_PARISC_LTOFF_FPTR64, 4, 64, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_UNIMPLEMENTED, 0, 0, false, bitfield, 0),
- HOW (R_PARISC_LTOFF_FPTR14WR, 2, 14, false, bitfield, 0),
- HOW (R_PARISC_LTOFF_FPTR14DR, 2, 14, false, bitfield, 0),
- HOW ([...]
[diff truncated at 100000 bytes]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-06-08 12:03 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-08 12:03 [binutils-gdb] HOWTO size encoding Alan Modra
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).