summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1999-08-09 15:07:32 +0000
committerIan Lance Taylor <ian@airs.com>1999-08-09 15:07:32 +0000
commitd2941d15afbae2c5ec21b6a28b6c0940cee01fe0 (patch)
tree5ae3deb640bd9aacbec076581a4b3c2209c7c6fa
parenta919c185412ecd97db980786e4013e0cecc88795 (diff)
downloadgdb-d2941d15afbae2c5ec21b6a28b6c0940cee01fe0.tar.gz
1999-08-09 Jakub Jelinek <jj@ultra.linux.cz>
* elf64-sparc.c (sparc64_elf_relocate_section): Back out part of the Sep. 4th, 1998 change. glibc 2.0.x dynamic linker had bug, not binutils. * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
-rw-r--r--bfd/ChangeLog7
-rw-r--r--bfd/elf32-sparc.c10
-rw-r--r--bfd/elf64-sparc.c10
3 files changed, 9 insertions, 18 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 7b81796778b..349d9831e08 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,10 @@
+1999-08-09 Jakub Jelinek <jj@ultra.linux.cz>
+
+ * elf64-sparc.c (sparc64_elf_relocate_section): Back out part of
+ the Sep. 4th, 1998 change. glibc 2.0.x dynamic linker had bug,
+ not binutils.
+ * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
+
1999-08-09 Geoff Keating <geoffk@cygnus.com>
* elflink.h (elf_link_output_extsym): Don't output a weak
diff --git a/bfd/elf32-sparc.c b/bfd/elf32-sparc.c
index 2118c700272..bb11c070d36 100644
--- a/bfd/elf32-sparc.c
+++ b/bfd/elf32-sparc.c
@@ -1475,15 +1475,7 @@ elf32_sparc_relocate_section (output_bfd, info, input_bfd, input_section,
}
outrel.r_info = ELF32_R_INFO (indx, r_type);
-
- /* For non-RELATIVE dynamic relocations, we keep the
- same symbol, and so generally the same addend. But
- we do need to adjust those relocations referencing
- sections. */
- outrel.r_addend = rel->r_addend;
- if (r_symndx < symtab_hdr->sh_info
- && ELF_ST_TYPE (sym->st_info) == STT_SECTION)
- outrel.r_addend += sec->output_offset+sym->st_value;
+ outrel.r_addend = relocation + rel->r_addend;
}
}
diff --git a/bfd/elf64-sparc.c b/bfd/elf64-sparc.c
index e98f1be893b..b02789724f0 100644
--- a/bfd/elf64-sparc.c
+++ b/bfd/elf64-sparc.c
@@ -2249,15 +2249,7 @@ sparc64_elf_relocate_section (output_bfd, info, input_bfd, input_section,
ELF64_R_TYPE_INFO (
ELF64_R_TYPE_DATA (rel->r_info),
r_type));
-
- /* For non-RELATIVE dynamic relocations, we keep the
- same symbol, and so generally the same addend. But
- we do need to adjust those relocations referencing
- sections. */
- outrel.r_addend = rel->r_addend;
- if (r_symndx < symtab_hdr->sh_info
- && ELF_ST_TYPE (sym->st_info) == STT_SECTION)
- outrel.r_addend += sec->output_offset+sym->st_value;
+ outrel.r_addend = relocation + rel->r_addend;
}
}