From owner-svn-src-projects@FreeBSD.ORG Tue Dec 7 23:44:07 2010 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 60B79106566C; Tue, 7 Dec 2010 23:44:07 +0000 (UTC) (envelope-from nwhitehorn@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 511D88FC18; Tue, 7 Dec 2010 23:44:07 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id oB7Ni7to083792; Tue, 7 Dec 2010 23:44:07 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id oB7Ni7Ik083790; Tue, 7 Dec 2010 23:44:07 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <201012072344.oB7Ni7Ik083790@svn.freebsd.org> From: Nathan Whitehorn Date: Tue, 7 Dec 2010 23:44:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r216281 - projects/binutils-2.17/contrib/binutils/bfd X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Dec 2010 23:44:07 -0000 Author: nwhitehorn Date: Tue Dec 7 23:44:07 2010 New Revision: 216281 URL: http://svn.freebsd.org/changeset/base/216281 Log: Try a more generic version of the last two fixes. Assuming this is correct, it should also be MI. The problem here arises when ld ends up linking a link-once section with relocations against sections that point back to it that are as yet unresolved. Instead of piecemeal finding sections we think are potentially subject to this issue, just defer processing for sections that have yet to be relocated instead of immediately bailing. Modified: projects/binutils-2.17/contrib/binutils/bfd/elf64-ppc.c Modified: projects/binutils-2.17/contrib/binutils/bfd/elf64-ppc.c ============================================================================== --- projects/binutils-2.17/contrib/binutils/bfd/elf64-ppc.c Tue Dec 7 23:33:20 2010 (r216280) +++ projects/binutils-2.17/contrib/binutils/bfd/elf64-ppc.c Tue Dec 7 23:44:07 2010 (r216281) @@ -9750,10 +9750,7 @@ ppc64_elf_action_discarded (asection *se if (strcmp (".toc1", sec->name) == 0) return 0; - if (strcmp (".got", sec->name) == 0) - return 0; - - if (strcmp (".got1", sec->name) == 0) + if (sec->flags & SEC_RELOC) return 0; return _bfd_elf_default_action_discarded (sec);