* configure: Ignore new autoconf configure options.
[binutils-gdb.git] / bfd / reloc.c
index 24a5236a0f8be2dd186380701a4302473fb2689b..328525286f6af57dcf33ff62075fa75fed0a3c8a 100644 (file)
@@ -287,7 +287,7 @@ CODE_FRAGMENT
 .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
 .{
@@ -413,7 +413,7 @@ FUNCTION
        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,
@@ -422,7 +422,7 @@ DESCRIPTION
 
 int
 bfd_get_reloc_size (howto)
-     const reloc_howto_type *howto;
+     reloc_howto_type *howto;
 {
   switch (howto->size)
     {
@@ -500,7 +500,7 @@ bfd_perform_relocation (abfd, reloc_entry, data, input_section, output_bfd,
   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;
 
@@ -961,10 +961,10 @@ bfd_install_relocation (abfd, reloc_entry, data_start, data_start_offset,
   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))
@@ -1395,7 +1395,7 @@ space consuming.  For each target:
 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;
@@ -1441,7 +1441,7 @@ _bfd_final_link_relocate (howto, input_bfd, input_section, contents, address,
 
 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;
@@ -1681,6 +1681,8 @@ ENUMX
   BFD_RELOC_24_PCREL
 ENUMX
   BFD_RELOC_16_PCREL
+ENUMX
+  BFD_RELOC_12_PCREL
 ENUMX
   BFD_RELOC_8_PCREL
 ENUMDOC
@@ -1711,11 +1713,12 @@ ENUMX
 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
@@ -2003,6 +2006,18 @@ ENUMDOC
   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