[lld] r317302 - [MinGW] Add an option -Xlink for passing options through to lld-link

Martin Storsjo via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 3 00:18:37 PDT 2017


Author: mstorsjo
Date: Fri Nov  3 00:18:37 2017
New Revision: 317302

URL: http://llvm.org/viewvc/llvm-project?rev=317302&view=rev
Log:
[MinGW] Add an option -Xlink for passing options through to lld-link

Also move the -mllvm option to the right section of the options
list.

Differential Revision: https://reviews.llvm.org/D39528

Modified:
    lld/trunk/MinGW/Driver.cpp
    lld/trunk/MinGW/Options.td
    lld/trunk/test/MinGW/driver.test

Modified: lld/trunk/MinGW/Driver.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/MinGW/Driver.cpp?rev=317302&r1=317301&r2=317302&view=diff
==============================================================================
--- lld/trunk/MinGW/Driver.cpp (original)
+++ lld/trunk/MinGW/Driver.cpp Fri Nov  3 00:18:37 2017
@@ -170,6 +170,9 @@ bool mingw::link(ArrayRef<const char *>
   for (auto *A : Args.filtered(OPT_mllvm))
     Add("-mllvm:" + StringRef(A->getValue()));
 
+  for (auto *A : Args.filtered(OPT_Xlink))
+    Add(A->getValue());
+
   if (Args.getLastArgValue(OPT_m) == "i386pe")
     Add("-alternatename:__image_base__=___ImageBase");
   else

Modified: lld/trunk/MinGW/Options.td
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/MinGW/Options.td?rev=317302&r1=317301&r2=317302&view=diff
==============================================================================
--- lld/trunk/MinGW/Options.td (original)
+++ lld/trunk/MinGW/Options.td Fri Nov  3 00:18:37 2017
@@ -13,7 +13,6 @@ def export_all_symbols: F<"export-all-sy
 def l: JoinedOrSeparate<["-"], "l">, MetaVarName<"<libName>">,
   HelpText<"Root name of library to use">;
 def m: JoinedOrSeparate<["-"], "m">, HelpText<"Set target emulation">;
-def mllvm: S<"mllvm">;
 def no_whole_archive: F<"no-whole-archive">,
     HelpText<"No longer include all object files for following archives">;
 def o: JoinedOrSeparate<["-"], "o">, MetaVarName<"<path>">,
@@ -31,6 +30,9 @@ def verbose: F<"verbose">, HelpText<"Ver
 // LLD specific options
 def _HASH_HASH_HASH : Flag<["-"], "###">,
     HelpText<"Print (but do not run) the commands to run for this compilation">;
+def mllvm: S<"mllvm">;
+def Xlink : J<"Xlink=">, MetaVarName<"<arg>">,
+    HelpText<"Pass <arg> to the COFF linker">;
 
 // Currently stubs to avoid errors
 def Bdynamic: F<"Bdynamic">, HelpText<"Link against shared libraries">;

Modified: lld/trunk/test/MinGW/driver.test
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/MinGW/driver.test?rev=317302&r1=317301&r2=317302&view=diff
==============================================================================
--- lld/trunk/test/MinGW/driver.test (original)
+++ lld/trunk/test/MinGW/driver.test Fri Nov  3 00:18:37 2017
@@ -79,3 +79,6 @@ EXPORT-ALL: -export-all-symbols
 
 RUN: ld.lld -### -m i386pep foo.o --output-def out.def | FileCheck -check-prefix OUTPUT-DEF %s
 OUTPUT-DEF: -output-def:out.def
+
+RUN: ld.lld -### -m i386pep foo.o -Xlink=-lldmap | FileCheck -check-prefix XLINK %s
+XLINK: -lldmap




More information about the llvm-commits mailing list