* reloc.c (bfd_check_overflow): New function.
authorDavid Edelsohn <dje.gcc@gmail.com>
Thu, 2 Oct 1997 23:55:22 +0000 (23:55 +0000)
committerDavid Edelsohn <dje.gcc@gmail.com>
Thu, 2 Oct 1997 23:55:22 +0000 (23:55 +0000)
(bfd_perform_relocation, bfd_install_relocation): Use it.
(BFD_RELOC_SPARC_{DISP64,PLT64}): New relocs.
(BFD_RELOC_SPARC_{HIX22,LOX10,H44,M44,L44,REGISTER}): New relocs.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.

bfd/ChangeLog
bfd/bfd-in2.h

index e541640..e3580c2 100644 (file)
@@ -1,3 +1,12 @@
+Thu Oct  2 16:15:50 1997  Doug Evans  <dje@canuck.cygnus.com>
+
+       * reloc.c (bfd_check_overflow): New function.
+       (bfd_perform_relocation, bfd_install_relocation): Use it.
+       (BFD_RELOC_SPARC_{DISP64,PLT64}): New relocs.
+       (BFD_RELOC_SPARC_{HIX22,LOX10,H44,M44,L44,REGISTER}): New relocs.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+
 Thu Oct  2 13:17:18 1997  Ian Lance Taylor  <ian@cygnus.com>
 
        * peicode.h (coff_swap_scnhdr_out): Set IMAGE_SCN_MEM_READ for an
index 6171ce3..d398d82 100644 (file)
@@ -1487,6 +1487,14 @@ typedef struct relent_chain {
 } arelent_chain;
 bfd_reloc_status_type
 
+bfd_check_overflow
+ PARAMS ((enum complain_overflow how,
+    unsigned int bitsize,
+    unsigned int rightshift,
+    bfd_vma value));
+
+bfd_reloc_status_type
+
 bfd_perform_relocation
  PARAMS ((bfd *abfd,
     arelent *reloc_entry,
@@ -1614,7 +1622,7 @@ relocation types already defined. */
   BFD_RELOC_SPARC_BASE13,
   BFD_RELOC_SPARC_BASE22,
 
-/* Some relocations we're using for SPARC V9 -- subject to change. */
+/* SPARC64 relocations */
 #define BFD_RELOC_SPARC_64 BFD_RELOC_64
   BFD_RELOC_SPARC_10,
   BFD_RELOC_SPARC_11,
@@ -1630,6 +1638,14 @@ relocation types already defined. */
   BFD_RELOC_SPARC_7,
   BFD_RELOC_SPARC_6,
   BFD_RELOC_SPARC_5,
+#define BFD_RELOC_SPARC_DISP64 BFD_RELOC_64_PCREL
+  BFD_RELOC_SPARC_PLT64,
+  BFD_RELOC_SPARC_HIX22,
+  BFD_RELOC_SPARC_LOX10,
+  BFD_RELOC_SPARC_H44,
+  BFD_RELOC_SPARC_M44,
+  BFD_RELOC_SPARC_L44,
+  BFD_RELOC_SPARC_REGISTER,
 
 /* Alpha ECOFF and ELF relocations.  Some of these treat the symbol or
 "addend" in some special way.