From 5d2a7cb021208fd23b8b57034d11fef3900397c4 Mon Sep 17 00:00:00 2001 From: Martell Malone Date: Wed, 16 Dec 2015 02:07:06 -0800 Subject: [PATCH 1/6] mingw-w64: setup new defaults for target runtime: compiler-rt c++ lib: libc++ linker: lld --- lib/Driver/ToolChains.h | 9 +++++++++ lib/Driver/Tools.cpp | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/lib/Driver/ToolChains.h b/lib/Driver/ToolChains.h index 4e5c3f7..4de35d6 100644 --- a/lib/Driver/ToolChains.h +++ b/lib/Driver/ToolChains.h @@ -680,6 +680,15 @@ public: const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args) const override; + RuntimeLibType GetDefaultRuntimeLibType() const override { + return RuntimeLibType::RLT_CompilerRT; + } + + CXXStdlibType + GetCXXStdlibType(const llvm::opt::ArgList &Args) const override { + return ToolChain::CST_Libcxx; + } + protected: Tool *getTool(Action::ActionClass AC) const override; Tool *buildLinker() const override; diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp index 95f2850..3fff6d2 100644 --- a/lib/Driver/Tools.cpp +++ b/lib/Driver/Tools.cpp @@ -10376,7 +10376,7 @@ void MinGW::Linker::ConstructJob(Compilation &C, const JobAction &JA, // handled somewhere else. Args.ClaimAllArgs(options::OPT_w); - StringRef LinkerName = Args.getLastArgValue(options::OPT_fuse_ld_EQ, "ld"); + StringRef LinkerName = Args.getLastArgValue(options::OPT_fuse_ld_EQ, "lld"); if (LinkerName.equals_lower("lld")) { CmdArgs.push_back("-flavor"); CmdArgs.push_back("gnu"); -- 2.7.4