Add hooks to support TI COFF handling.
authorTimothy Wall <twall@alum.mit.edu>
Thu, 10 Feb 2000 21:21:55 +0000 (21:21 +0000)
committerTimothy Wall <twall@alum.mit.edu>
Thu, 10 Feb 2000 21:21:55 +0000 (21:21 +0000)
bfd/ChangeLog
bfd/coffcode.h
bfd/coffswap.h

index 3115f67..1fd998b 100644 (file)
@@ -1,3 +1,12 @@
+2000-02-10  Timothy Wall  <twall@cygnus.com>
+
+       * coffswap.h (coff_swap_sym_in): Add hook SWAP_SYM_IN_POST to
+       allow final modifications of swapped-in symbol.
+       (coff_swap_sym_out): Ditto with SWAP_SYM_OUT_POST.
+       * coffcode.h (coff_write_relocs): Use macro
+       SECTION_RELATIVE_ABSOLUTE_SYMBOL_P if defined to determine whether
+       symbol index should be set to -1.
+
 Thu Feb 10 20:07:50 GMT 2000  Toshiyasu Morita (toshi.morita@sega.com)
 
        * coff-sh.c (USES1_REG, USES2_REG, SETS1_REG, SETS2_REG,
index ace39e1..ca1d522 100644 (file)
@@ -2268,7 +2268,11 @@ coff_write_relocs (abfd, first_undef)
 #endif
            if (q->sym_ptr_ptr)
              {
+#ifdef SECTION_RELATIVE_ABSOLUTE_SYMBOL_P
+                if (SECTION_RELATIVE_ABSOLUTE_SYMBOL_P (q,s))
+#else
                if (q->sym_ptr_ptr == bfd_abs_section_ptr->symbol_ptr_ptr)
+#endif
                  /* This is a relocation relative to the absolute symbol.  */
                  n.r_symndx = -1;
                else
index bb94384..d7d090f 100644 (file)
@@ -357,6 +357,9 @@ coff_swap_sym_in (abfd, ext1, in1)
   }
   in->n_sclass = bfd_h_get_8(abfd, ext->e_sclass);
   in->n_numaux = bfd_h_get_8(abfd, ext->e_numaux);
+#ifdef COFF_ADJUST_SYM_IN_POST
+  COFF_ADJUST_SYM_IN_POST (abfd, ext1, in1);
+#endif
 }
 
 static unsigned int
@@ -390,6 +393,9 @@ coff_swap_sym_out (abfd, inp, extp)
       }
   bfd_h_put_8(abfd,  in->n_sclass , ext->e_sclass);
   bfd_h_put_8(abfd,  in->n_numaux , ext->e_numaux);
+#ifdef COFF_ADJUST_SYM_OUT_POST
+  COFF_ADJUST_SYM_OUT_POST (abfd, inp, extp);
+#endif
   return SYMESZ;
 }