[lld] r233782 - [Gnu] Support an other form of defsym option
Shankar Easwaran
shankare at codeaurora.org
Tue Mar 31 20:06:59 PDT 2015
Author: shankare
Date: Tue Mar 31 22:06:59 2015
New Revision: 233782
URL: http://llvm.org/viewvc/llvm-project?rev=233782&view=rev
Log:
[Gnu] Support an other form of defsym option
Modified:
lld/trunk/lib/Driver/GnuLdOptions.td
lld/trunk/test/elf/defsym.objtxt
Modified: lld/trunk/lib/Driver/GnuLdOptions.td
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/Driver/GnuLdOptions.td?rev=233782&r1=233781&r2=233782&view=diff
==============================================================================
--- lld/trunk/lib/Driver/GnuLdOptions.td (original)
+++ lld/trunk/lib/Driver/GnuLdOptions.td Tue Mar 31 22:06:59 2015
@@ -25,6 +25,15 @@ multiclass dashEq<string opt1, string op
Alias<!cast<Option>(opt1)>;
}
+// Support --<option>,--<option>=
+multiclass mDashEq<string opt1, string help> {
+ // Option
+ def "" : Separate<["--"], opt1>, HelpText<help>;
+ // Compatibility aliases
+ def opt2_eq : Joined<["--"], opt1#"=">,
+ Alias<!cast<Option>(opt1)>;
+}
+
//===----------------------------------------------------------------------===//
/// LLVM and Target options
//===----------------------------------------------------------------------===//
@@ -211,9 +220,11 @@ def use_shlib_undefs: Flag<["--"], "use-
def allow_multiple_definition: Flag<["--"], "allow-multiple-definition">,
HelpText<"Allow multiple definitions">,
Group<grp_resolveropt>;
-def defsym : Joined<["--"], "defsym=">,
- HelpText<"Create a defined symbol">,
- Group<grp_resolveropt>;
+defm defsym : mDashEq<"defsym",
+ "Create a global symbol in the output file "
+ "containing the absolute address given by expression">,
+ MetaVarName<"symbol=<expression>">,
+ Group<grp_resolveropt>;
//===----------------------------------------------------------------------===//
/// Custom Options
Modified: lld/trunk/test/elf/defsym.objtxt
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/elf/defsym.objtxt?rev=233782&r1=233781&r2=233782&view=diff
==============================================================================
--- lld/trunk/test/elf/defsym.objtxt (original)
+++ lld/trunk/test/elf/defsym.objtxt Tue Mar 31 22:06:59 2015
@@ -4,6 +4,9 @@
# RUN: lld -flavor gnu -target x86_64 --defsym=foo=main -r %s \
# RUN: --output-filetype=yaml | FileCheck -check-prefix=ALIAS %s
+# RUN: lld -flavor gnu -target x86_64 --defsym foo=main -r %s \
+# RUN: --output-filetype=yaml | FileCheck -check-prefix=ALIAS %s
+
defined-atoms:
- name: main
scope: global
More information about the llvm-commits
mailing list