From: Ian Lance Taylor Date: Mon, 9 Aug 1999 15:07:32 +0000 (+0000) Subject: 1999-08-09 Jakub Jelinek X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=840a9995b31c15a5bcac8f1753690d20535036cd;p=binutils-gdb.git 1999-08-09 Jakub Jelinek * 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. --- 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 + + * 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 * 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; } }