diff options
author | Alexandre Oliva <aoliva@redhat.com> | 2000-07-04 05:11:37 +0000 |
---|---|---|
committer | Alexandre Oliva <aoliva@redhat.com> | 2000-07-04 05:11:37 +0000 |
commit | fc19f984d507a6d09e984038d9230ae1a9fabcce (patch) | |
tree | 6e5ae24e974e846dd71ec536db19b535f18e2673 /bfd | |
parent | d96ce5f0b9bf24ad8ced06867df2af19b6d08c08 (diff) | |
download | gdb-fc19f984d507a6d09e984038d9230ae1a9fabcce.tar.gz |
* coff-arm.c (coff_arm_relocate_section): Do not ignore the symbol
value of PC-relative offsets.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/coff-arm.c | 7 |
2 files changed, 12 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index e44ee9b72f7..e2e8baf94c3 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2000-07-04 Alexandre Oliva <aoliva@redhat.com> + + * coff-arm.c (coff_arm_relocate_section): Do not ignore the symbol + value of PC-relative offsets. + 2000-07-03 Jim Wilson <wilson@cygnus.com> * elf64-alpha.c (alpha_elf_size_info): New. diff --git a/bfd/coff-arm.c b/bfd/coff-arm.c index 2b89b848c8c..4aecc07ab76 100644 --- a/bfd/coff-arm.c +++ b/bfd/coff-arm.c @@ -1246,8 +1246,15 @@ coff_arm_relocate_section (output_bfd, info, input_bfd, input_section, { if (info->relocateable) continue; +#if 0 /* We must not ignore the symbol value. If the symbol is + within the same section, the relocation should have already + been fixed, but if it is not, we'll be handed a reloc into + the beginning of the symbol's section, so we must not cancel + out the symbol's value, otherwise we'll be adding it in + twice. */ if (sym != NULL && sym->n_scnum != 0) addend += sym->n_value; +#endif } val = 0; |