Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 19 Jul 2016 17:15:08 +0000 (UTC)
From:      Ed Maste <emaste@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r303031 - head/contrib/llvm/tools/clang/lib/Driver
Message-ID:  <201607191715.u6JHF8jw080997@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: emaste
Date: Tue Jul 19 17:15:07 2016
New Revision: 303031
URL: https://svnweb.freebsd.org/changeset/base/303031

Log:
  clang++: Always use --eh-frame-hdr on FreeBSD, even for -static
  
  FreeBSD uses LLVM's libunwind on FreeBSD/arm64 today (and we expect to
  use it more widely in the future) and it requires the EH frame segment
  in static binaries.
  
  Reviewed by:	dim
  Obtained from:	Clang commit r266123
  MFC after:	3 days
  Relnotes:	yes
  Sponsored by:	The FreeBSD Foundation
  Differential Revision:	https://reviews.freebsd.org/D7250

Modified:
  head/contrib/llvm/tools/clang/lib/Driver/Tools.cpp

Modified: head/contrib/llvm/tools/clang/lib/Driver/Tools.cpp
==============================================================================
--- head/contrib/llvm/tools/clang/lib/Driver/Tools.cpp	Tue Jul 19 16:55:16 2016	(r303030)
+++ head/contrib/llvm/tools/clang/lib/Driver/Tools.cpp	Tue Jul 19 17:15:07 2016	(r303031)
@@ -7922,12 +7922,12 @@ void freebsd::Linker::ConstructJob(Compi
   if (IsPIE)
     CmdArgs.push_back("-pie");
 
+  CmdArgs.push_back("--eh-frame-hdr");
   if (Args.hasArg(options::OPT_static)) {
     CmdArgs.push_back("-Bstatic");
   } else {
     if (Args.hasArg(options::OPT_rdynamic))
       CmdArgs.push_back("-export-dynamic");
-    CmdArgs.push_back("--eh-frame-hdr");
     if (Args.hasArg(options::OPT_shared)) {
       CmdArgs.push_back("-Bshareable");
     } else {



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201607191715.u6JHF8jw080997>