From 72b60c230fe8c0e3b5ff286806da1f4fb8ca85c1 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Fri, 18 Jun 1999 04:25:56 +0000 Subject: [PATCH 1/1] * elf64-alpha.c (elf64_alpha_relocate_section): Don't adjust GPDISP or LITUSE in a relocatable link. --- bfd/ChangeLog | 5 +++++ bfd/elf64-alpha.c | 6 ++++++ 2 files changed, 11 insertions(+) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index c0128c0bc0..d99d9a2903 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 1964f86e85..a8a7c4054e 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; -- 2.34.1