diff options
author | Alan Modra <amodra@bigpond.net.au> | 2005-12-27 03:06:27 +0000 |
---|---|---|
committer | Alan Modra <amodra@bigpond.net.au> | 2005-12-27 03:06:27 +0000 |
commit | c85f8860f11b973f51b2ee0e2ae0bc8f2f7b58a4 (patch) | |
tree | 5997029c05f9997dfee70a1fab9fbebbec620084 /bfd/coff-h8500.c | |
parent | 6fcaccd9eedd46144c8804e79a7341750c137dad (diff) | |
download | binutils-redhat-c85f8860f11b973f51b2ee0e2ae0bc8f2f7b58a4.tar.gz |
* coff-h8300.c (h8300_reloc16_extra_cases): Use input section
"output_offset" instead of link order "offset".
* coff-h8500.c (extra_case): Likewise.
* coff-w65.c (w65_reloc16_extra_cases): Likewise.
* coff-z80.c (extra_case): Likewise.
* coff-z8k.c (extra_case): Likewise.
* linker.c (default_indirect_link_order): Likewise, "size" too.
* ecoff.c (ecoff_indirect_link_order): Likewise.
Diffstat (limited to 'bfd/coff-h8500.c')
-rw-r--r-- | bfd/coff-h8500.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/bfd/coff-h8500.c b/bfd/coff-h8500.c index bef704b5d6..e9c878d820 100644 --- a/bfd/coff-h8500.c +++ b/bfd/coff-h8500.c @@ -1,5 +1,5 @@ /* BFD back-end for Renesas H8/500 COFF binaries. - Copyright 1993, 1994, 1995, 1997, 1999, 2000, 2001, 2002, 2003, 2004 + Copyright 1993, 1994, 1995, 1997, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. Contributed by Cygnus Support. Written by Steve Chamberlain, <sac@cygnus.com>. @@ -245,9 +245,9 @@ extra_case (in_abfd, link_info, link_order, reloc, data, src_ptr, dst_ptr) { bfd_vma dst = bfd_coff_reloc16_get_value (reloc, link_info, input_section); - bfd_vma dot = link_order->offset - + *dst_ptr - + link_order->u.indirect.section->output_section->vma; + bfd_vma dot = (*dst_ptr + + input_section->output_offset + + input_section->output_section->vma); int gap = dst - dot - 1; /* -1 since were in the odd byte of the word and the pc's been incremented. */ @@ -269,9 +269,9 @@ extra_case (in_abfd, link_info, link_order, reloc, data, src_ptr, dst_ptr) { bfd_vma dst = bfd_coff_reloc16_get_value (reloc, link_info, input_section); - bfd_vma dot = link_order->offset - + *dst_ptr - + link_order->u.indirect.section->output_section->vma; + bfd_vma dot = (*dst_ptr + + input_section->output_offset + + input_section->output_section->vma); int gap = dst - dot - 1; /* -1 since were in the odd byte of the word and the pc's been incremented. */ |