* aoutx.h (NAME(aout,reloc_type_lookup)): Add BFD_RELOC_8 and
authorHans-Peter Nilsson <hp@axis.com>
Mon, 3 Apr 2000 11:44:45 +0000 (11:44 +0000)
committerHans-Peter Nilsson <hp@axis.com>
Mon, 3 Apr 2000 11:44:45 +0000 (11:44 +0000)
BFD_RELOC_16 to switch for extended relocs.
(MY_swap_ext_reloc_in): New.
(MY_swap_ext_reloc_out): New.
(NAME(aout,slurp_reloc_table)): Use MY_swap_ext_reloc_in rather
than NAME(aout,swap_ext_reloc_in) for extended relocs.
(NAME(aout,squirt_out_relocs)): Similarly use
MY_swap_ext_reloc_out.
(aout_link_reloc_link_order): Use MY_put_ext_reloc if defined.

bfd/ChangeLog
bfd/aoutx.h

index 2c4e461c7dce67bb8466a46ac93e96d0a1219eea..78953a94b909413223be4c1adbc30cc840c207df 100644 (file)
@@ -1,3 +1,15 @@
+Mon Apr  3 13:37:15 2000  Hans-Peter Nilsson  <hp@axis.com>
+
+       * aoutx.h (NAME(aout,reloc_type_lookup)): Add BFD_RELOC_8 and
+       BFD_RELOC_16 to switch for extended relocs.
+       (MY_swap_ext_reloc_in): New.
+       (MY_swap_ext_reloc_out): New.
+       (NAME(aout,slurp_reloc_table)): Use MY_swap_ext_reloc_in rather
+       than NAME(aout,swap_ext_reloc_in) for extended relocs.
+       (NAME(aout,squirt_out_relocs)): Similarly use
+       MY_swap_ext_reloc_out.
+       (aout_link_reloc_link_order): Use MY_put_ext_reloc if defined.
+
 2000-04-03  Kazu Hirata  <kazu@hxi.com>
 
        * coff-h8300.c (h8300_reloc16_extra_cases): Add bsr:16 -> bsr:8 to
index fa107a7cb942ee5a07ebab635362bfffd43af9bc..01dd9eee4c05d9d23966de2947aa9e033408dc19 100644 (file)
@@ -165,10 +165,18 @@ DESCRIPTION
 #define MY_swap_std_reloc_in NAME(aout,swap_std_reloc_in)
 #endif
 
+#ifndef MY_swap_ext_reloc_in
+#define MY_swap_ext_reloc_in NAME(aout,swap_ext_reloc_in)
+#endif
+
 #ifndef MY_swap_std_reloc_out
 #define MY_swap_std_reloc_out NAME(aout,swap_std_reloc_out)
 #endif
 
+#ifndef MY_swap_ext_reloc_out
+#define MY_swap_ext_reloc_out NAME(aout,swap_ext_reloc_out)
+#endif
+
 #ifndef MY_final_link_relocate
 #define MY_final_link_relocate _bfd_final_link_relocate
 #endif
@@ -283,6 +291,8 @@ NAME(aout,reloc_type_lookup) (abfd,code)
   if (ext)
     switch (code)
       {
+       EXT (BFD_RELOC_8, 0);
+       EXT (BFD_RELOC_16, 1);
        EXT (BFD_RELOC_32, 2);
        EXT (BFD_RELOC_HI22, 8);
        EXT (BFD_RELOC_LO10, 11);
@@ -2381,8 +2391,8 @@ NAME(aout,slurp_reloc_table) (abfd, asect, symbols)
        (struct reloc_ext_external *) relocs;
 
       for (; counter < count; counter++, rptr++, cache_ptr++)
-       NAME(aout,swap_ext_reloc_in) (abfd, rptr, cache_ptr, symbols,
-                                     bfd_get_symcount (abfd));
+       MY_swap_ext_reloc_in (abfd, rptr, cache_ptr, symbols,
+                             bfd_get_symcount (abfd));
     }
   else
     {
@@ -2432,7 +2442,8 @@ NAME(aout,squirt_out_relocs) (abfd, section)
       for (natptr = native;
           count != 0;
           --count, natptr += each_size, ++generic)
-       NAME(aout,swap_ext_reloc_out) (abfd, *generic, (struct reloc_ext_external *)natptr);
+       MY_swap_ext_reloc_out (abfd, *generic,
+                              (struct reloc_ext_external *) natptr);
     }
   else
     {
@@ -5671,6 +5682,10 @@ aout_link_reloc_link_order (finfo, o, p)
     }
   else
     {
+#ifdef MY_put_ext_reloc
+      MY_put_ext_reloc (finfo->output_bfd, r_extern, r_index, p->offset,
+                       howto, &erel, pr->addend);
+#else
       PUT_WORD (finfo->output_bfd, p->offset, erel.r_address);
 
       if (bfd_header_big_endian (finfo->output_bfd))
@@ -5693,6 +5708,7 @@ aout_link_reloc_link_order (finfo, o, p)
        }
 
       PUT_WORD (finfo->output_bfd, pr->addend, erel.r_addend);
+#endif /* MY_put_ext_reloc */
 
       rel_ptr = (PTR) &erel;
     }