From FSF Binutils CVS repo:

2003-04-09  Richard Henderson  <rth@redhat.com>
	* elf64-alpha.c (elf64_alpha_relocate_section) <R_ALPHA_GPREL32>:
	Ignore relocations against r_symndx == 0.

Requested by:	kris,re(scottl)
This commit is contained in:
David E. O'Brien 2003-05-28 03:32:33 +00:00
parent 17d6531977
commit 34d258e905

View File

@ -19,6 +19,8 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* $FreeBSD$ */
/* We need a published ABI spec for this. Until one comes out, don't
assume this'll remain unchanged forever. */
@ -4490,8 +4492,20 @@ elf64_alpha_relocate_section (output_bfd, info, input_bfd, input_section,
value -= gp;
goto default_reloc;
case R_ALPHA_GPREL16:
case R_ALPHA_GPREL32:
/* If the target section was a removed linkonce section,
r_symndx will be zero. In this case, assume that the
switch will not be used, so don't fill it in. If we
do nothing here, we'll get relocation truncated messages,
due to the placement of the application above 4GB. */
if (r_symndx == 0)
{
r = bfd_reloc_ok;
break;
}
/* FALLTHRU */
case R_ALPHA_GPREL16:
case R_ALPHA_GPRELLOW:
if (dynamic_symbol_p)
{