Sure, r253066.
2015-11-13 19:40 GMT+02:00 Rafael Espíndola <rafael.espind...@gmail.com>: > This needs a testcase. Nothing is checking the linker invocation. > > On 14 July 2015 at 01:23, Yaron Keren <yaron.ke...@gmail.com> wrote: > > Author: yrnkrn > > Date: Tue Jul 14 00:23:34 2015 > > New Revision: 242121 > > > > URL: http://llvm.org/viewvc/llvm-project?rev=242121&view=rev > > Log: > > Add support for -fuse-ld= in the mingw toolchain driver. > > We will still default to ld until such a time lld become a > > stable release. lld supports arm NT under the machine name "thumb2pe". > > > > http://reviews.llvm.org/D11088 > > > > Patch by Martell Malone > > Reviewed by Reid Kleckner > > > > > > Modified: > > cfe/trunk/lib/Driver/Tools.cpp > > > > Modified: cfe/trunk/lib/Driver/Tools.cpp > > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Tools.cpp?rev=242121&r1=242120&r2=242121&view=diff > > > ============================================================================== > > --- cfe/trunk/lib/Driver/Tools.cpp (original) > > +++ cfe/trunk/lib/Driver/Tools.cpp Tue Jul 14 00:23:34 2015 > > @@ -8947,6 +8947,12 @@ void MinGW::Linker::ConstructJob(Compila > > // handled somewhere else. > > Args.ClaimAllArgs(options::OPT_w); > > > > + StringRef LinkerName = Args.getLastArgValue(options::OPT_fuse_ld_EQ, > "ld"); > > + if (LinkerName.equals_lower("lld")) { > > + CmdArgs.push_back("-flavor"); > > + CmdArgs.push_back("gnu"); > > + } > > + > > if (!D.SysRoot.empty()) > > CmdArgs.push_back(Args.MakeArgString("--sysroot=" + D.SysRoot)); > > > > @@ -8958,6 +8964,8 @@ void MinGW::Linker::ConstructJob(Compila > > CmdArgs.push_back("i386pe"); > > if (TC.getArch() == llvm::Triple::x86_64) > > CmdArgs.push_back("i386pep"); > > + if (TC.getArch() == llvm::Triple::arm) > > + CmdArgs.push_back("thumb2pe"); > > > > if (Args.hasArg(options::OPT_mwindows)) { > > CmdArgs.push_back("--subsystem"); > > @@ -9067,7 +9075,7 @@ void MinGW::Linker::ConstructJob(Compila > > > > if (Args.hasArg(options::OPT_static)) > > CmdArgs.push_back("--end-group"); > > - else > > + else if (!LinkerName.equals_lower("lld")) > > AddLibGCC(Args, CmdArgs); > > } > > > > @@ -9078,7 +9086,7 @@ void MinGW::Linker::ConstructJob(Compila > > CmdArgs.push_back(Args.MakeArgString(TC.GetFilePath("crtend.o"))); > > } > > } > > - const char *Exec = Args.MakeArgString(TC.GetProgramPath("ld")); > > + const char *Exec = > Args.MakeArgString(TC.GetProgramPath(LinkerName.data())); > > C.addCommand(llvm::make_unique<Command>(JA, *this, Exec, CmdArgs)); > > } > > > > > > > > _______________________________________________ > > cfe-commits mailing list > > cfe-comm...@cs.uiuc.edu > > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits >
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits