aboutsummaryrefslogtreecommitdiff
path: root/bfd/elf64-alpha.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>1999-06-18 04:25:56 +0000
committerRichard Henderson <rth@redhat.com>1999-06-18 04:25:56 +0000
commit72b60c230fe8c0e3b5ff286806da1f4fb8ca85c1 (patch)
tree6ff2069d2b4ddf63118995db7ca8358ea69e0c97 /bfd/elf64-alpha.c
parentfed881b14b312a298b604da1b3ef373e14adbe21 (diff)
downloadgdb-72b60c230fe8c0e3b5ff286806da1f4fb8ca85c1.zip
gdb-72b60c230fe8c0e3b5ff286806da1f4fb8ca85c1.tar.gz
gdb-72b60c230fe8c0e3b5ff286806da1f4fb8ca85c1.tar.bz2
* elf64-alpha.c (elf64_alpha_relocate_section): Don't adjust
GPDISP or LITUSE in a relocatable link.
Diffstat (limited to 'bfd/elf64-alpha.c')
-rw-r--r--bfd/elf64-alpha.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/bfd/elf64-alpha.c b/bfd/elf64-alpha.c
index 1964f86..a8a7c40 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;