.struct symbol_cache_entry; {* Forward declaration *}
.
.typedef unsigned char bfd_byte;
-.typedef struct reloc_howto_struct reloc_howto_type;
+.typedef const struct reloc_howto_struct reloc_howto_type;
.
.struct reloc_howto_struct
.{
bfd_get_reloc_size
SYNOPSIS
- int bfd_get_reloc_size (const reloc_howto_type *);
+ int bfd_get_reloc_size (reloc_howto_type *);
DESCRIPTION
For a reloc_howto_type that operates on a fixed number of bytes,
int
bfd_get_reloc_size (howto)
- const reloc_howto_type *howto;
+ reloc_howto_type *howto;
{
switch (howto->size)
{
bfd_reloc_status_type flag = bfd_reloc_ok;
bfd_size_type addr = reloc_entry->address;
bfd_vma output_base = 0;
- const reloc_howto_type *howto = reloc_entry->howto;
+ reloc_howto_type *howto = reloc_entry->howto;
asection *reloc_target_output_section;
asymbol *symbol;
bfd_reloc_status_type flag = bfd_reloc_ok;
bfd_size_type addr = reloc_entry->address;
bfd_vma output_base = 0;
- const reloc_howto_type *howto = reloc_entry->howto;
+ reloc_howto_type *howto = reloc_entry->howto;
asection *reloc_target_output_section;
asymbol *symbol;
- PTR data;
+ bfd_byte *data;
symbol = *(reloc_entry->sym_ptr_ptr);
if (bfd_is_abs_section (symbol->section))
bfd_reloc_status_type
_bfd_final_link_relocate (howto, input_bfd, input_section, contents, address,
value, addend)
- const reloc_howto_type *howto;
+ reloc_howto_type *howto;
bfd *input_bfd;
asection *input_section;
bfd_byte *contents;
bfd_reloc_status_type
_bfd_relocate_contents (howto, input_bfd, relocation, location)
- const reloc_howto_type *howto;
+ reloc_howto_type *howto;
bfd *input_bfd;
bfd_vma relocation;
bfd_byte *location;
BFD_RELOC_24_PCREL
ENUMX
BFD_RELOC_16_PCREL
+ENUMX
+ BFD_RELOC_12_PCREL
ENUMX
BFD_RELOC_8_PCREL
ENUMDOC
ENUMX
BFD_RELOC_23_PCREL_S2
ENUMDOC
- These PC-relative relocations are stored as word displacements -- i.e.,
-byte displacements shifted right two bits. The 30-bit word displacement
-(<<32_PCREL_S2>> -- 32 bits, shifted 2) is used on the SPARC. The signed
-16-bit displacement is used on the MIPS, and the 23-bit displacement is
-used on the Alpha.
+ These PC-relative relocations are stored as word displacements --
+i.e., byte displacements shifted right two bits. The 30-bit word
+displacement (<<32_PCREL_S2>> -- 32 bits, shifted 2) is used on the
+SPARC. (SPARC tools generally refer to this as <<WDISP30>>.) The
+signed 16-bit displacement is used on the MIPS, and the 23-bit
+displacement is used on the Alpha.
ENUM
BFD_RELOC_HI22
These relocs are only used within the ARM assembler. They are not
(at present) written to any object files.
+COMMENT
+{* start-sanitize-arc *}
+ENUM
+ BFD_RELOC_ARC_B22_PCREL
+ENUMDOC
+ Argonaut RISC Core (ARC) relocs.
+ ARC 22 bit pc-relative branch. The lowest two bits must be zero and are
+ not stored in the instruction. High 20 bits installed in bits 7 through 26
+ of instruction.
+COMMENT
+{* end-sanitize-arc *}
+
ENDSENUM
BFD_RELOC_UNUSED