Date: Sat, 15 Jan 2011 00:12:51 +0000 (UTC) From: Dimitry Andric <dim@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r217433 - projects/binutils-2.17/contrib/binutils/bfd Message-ID: <201101150012.p0F0Cpak006703@svn.freebsd.org>
index | next in thread | raw e-mail
Author: dim Date: Sat Jan 15 00:12:51 2011 New Revision: 217433 URL: http://svn.freebsd.org/changeset/base/217433 Log: Backport the second part of the fix for binutils PR ld/4424, which fixes an error in elf_i386_relocate_section, when building the VirtualBox port on i386. The port now builds to completion on i386. A similar amd64 error was already fixed in r217232, but the port does not build to completion there yet, because of another issue. Modified: projects/binutils-2.17/contrib/binutils/bfd/elflink.c Modified: projects/binutils-2.17/contrib/binutils/bfd/elflink.c ============================================================================== --- projects/binutils-2.17/contrib/binutils/bfd/elflink.c Fri Jan 14 23:30:35 2011 (r217432) +++ projects/binutils-2.17/contrib/binutils/bfd/elflink.c Sat Jan 15 00:12:51 2011 (r217433) @@ -858,9 +858,11 @@ _bfd_elf_merge_symbol (bfd *abfd, return FALSE; *sym_hash = h; + bed = get_elf_backend_data (abfd); + /* This code is for coping with dynamic objects, and is only useful if we are doing an ELF link. */ - if (info->hash->creator != abfd->xvec) + if (!(*bed->relocs_compatible) (abfd->xvec, info->hash->creator)) return TRUE; /* For merging, we only care about real symbols. */ @@ -947,7 +949,6 @@ _bfd_elf_merge_symbol (bfd *abfd, && h->root.type != bfd_link_hash_undefweak && h->root.type != bfd_link_hash_common); - bed = get_elf_backend_data (abfd); /* When we try to create a default indirect symbol from the dynamic definition with the default version, we skip it if its type and the type of existing regular definition mismatch. We only do ithelp
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201101150012.p0F0Cpak006703>
