From: Jakub Jelinek Date: Tue, 14 Nov 2000 20:46:25 +0000 (+0000) Subject: * elf64-alpha.c (elf64_alpha_relax_opt_call): Only check bits used X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c810873da19e9350a1f7ba9af80d1f37876c92f1;p=binutils-gdb.git * elf64-alpha.c (elf64_alpha_relax_opt_call): Only check bits used by STO_ALPHA constants. * config/tc-alpha.c (s_alpha_prologue): Preserve visibility bits. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index d2d262af90e..98ed9ce6c86 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2000-11-14 Jakub Jelinek + + * elf64-alpha.c (elf64_alpha_relax_opt_call): Only check bits used + by STO_ALPHA constants. + 2000-11-14 Kazu Hirata * coff-pmac.c: Fix formatting. diff --git a/bfd/elf64-alpha.c b/bfd/elf64-alpha.c index 73620eb9b58..bb20f55b1fe 100644 --- a/bfd/elf64-alpha.c +++ b/bfd/elf64-alpha.c @@ -1304,12 +1304,12 @@ elf64_alpha_relax_opt_call (info, symval) /* If the symbol is marked NOPV, we are being told the function never needs its procedure value. */ - if (info->other == STO_ALPHA_NOPV) + if ((info->other & STO_ALPHA_STD_GPLOAD) == STO_ALPHA_NOPV) return symval; /* If the symbol is marked STD_GP, we are being told the function does a normal ldgp in the first two words. */ - else if (info->other == STO_ALPHA_STD_GPLOAD) + else if ((info->other & STO_ALPHA_STD_GPLOAD) == STO_ALPHA_STD_GPLOAD) ; /* Otherwise, we may be able to identify a GP load in the first two diff --git a/gas/ChangeLog b/gas/ChangeLog index 9232f455754..7fd89d6fbfb 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,7 @@ +2000-11-14 Jakub Jelinek + + * config/tc-alpha.c (s_alpha_prologue): Preserve visibility bits. + 2000-11-13 H.J. Lu * config/obj-elf.c (elf_frob_symbol): Support diff --git a/gas/config/tc-alpha.c b/gas/config/tc-alpha.c index c8a1244579e..44aedcd1cd0 100644 --- a/gas/config/tc-alpha.c +++ b/gas/config/tc-alpha.c @@ -4555,10 +4555,12 @@ s_alpha_prologue (ignore) switch (arg) { case 0: /* No PV required. */ - S_SET_OTHER (sym, STO_ALPHA_NOPV); + S_SET_OTHER (sym, STO_ALPHA_NOPV + | (S_GET_OTHER (sym) & ~STO_ALPHA_STD_GPLOAD)); break; case 1: /* Std GP load. */ - S_SET_OTHER (sym, STO_ALPHA_STD_GPLOAD); + S_SET_OTHER (sym, STO_ALPHA_STD_GPLOAD + | (S_GET_OTHER (sym) & ~STO_ALPHA_STD_GPLOAD)); break; case 2: /* Non-std use of PV. */ break;