From: Richard Henderson Date: Fri, 18 Jun 1999 04:25:56 +0000 (+0000) Subject: * elf64-alpha.c (elf64_alpha_relocate_section): Don't adjust X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=72b60c230fe8c0e3b5ff286806da1f4fb8ca85c1;p=binutils-gdb.git * elf64-alpha.c (elf64_alpha_relocate_section): Don't adjust GPDISP or LITUSE in a relocatable link. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index c0128c0bc06..d99d9a2903d 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +Fri Jun 18 04:24:57 1999 Richard Henderson + + * elf64-alpha.c (elf64_alpha_relocate_section): Don't adjust + GPDISP or LITUSE in a relocatable link. + Thu Jun 17 21:24:43 1999 J"orn Rennecke * dwarf1.c (alloc_dwarf1_unit): Allocate using bfd_zalloc. diff --git a/bfd/elf64-alpha.c b/bfd/elf64-alpha.c index 1964f86e859..a8a7c4054e1 100644 --- a/bfd/elf64-alpha.c +++ b/bfd/elf64-alpha.c @@ -3423,6 +3423,12 @@ elf64_alpha_relocate_section (output_bfd, info, input_bfd, input_section, anything, unless the reloc is against a section symbol, in which case we have to adjust according to where the section symbol winds up in the output section. */ + + /* The symbol associated with GPDISP and LITUSE is + immaterial. Only the addend is significant. */ + if (r_type == R_ALPHA_GPDISP || r_type == R_ALPHA_LITUSE) + continue; + if (r_symndx < symtab_hdr->sh_info) { sym = local_syms + r_symndx;