From: Hans-Peter Nilsson Date: Mon, 3 Apr 2000 11:44:45 +0000 (+0000) Subject: * aoutx.h (NAME(aout,reloc_type_lookup)): Add BFD_RELOC_8 and X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1642229ef3ad766ccf41dd3fa2f0568aa0a3197c;p=binutils-gdb.git * 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. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 2c4e461c7dc..78953a94b90 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,15 @@ +Mon Apr 3 13:37:15 2000 Hans-Peter Nilsson + + * 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 * coff-h8300.c (h8300_reloc16_extra_cases): Add bsr:16 -> bsr:8 to diff --git a/bfd/aoutx.h b/bfd/aoutx.h index fa107a7cb94..01dd9eee4c0 100644 --- a/bfd/aoutx.h +++ b/bfd/aoutx.h @@ -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; }