diff options
author | Mikhail Glushenkov <foldr@codedgers.com> | 2009-05-06 01:41:19 +0000 |
---|---|---|
committer | Mikhail Glushenkov <foldr@codedgers.com> | 2009-05-06 01:41:19 +0000 |
commit | 0969955bea8ec37be561813b25872c0eae2d79d6 (patch) | |
tree | 07d99154d5b66a3a2454d9de5b4efc24a26a1aa0 | |
parent | c0baecf7de61ee003d18008ea82be78fe7c42d68 (diff) | |
download | external_llvm-0969955bea8ec37be561813b25872c0eae2d79d6.zip external_llvm-0969955bea8ec37be561813b25872c0eae2d79d6.tar.gz external_llvm-0969955bea8ec37be561813b25872c0eae2d79d6.tar.bz2 |
The 'forward_as' property did not use its second argument.
See PR4159 for details. Patch by Martin Nowack!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71054 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | test/LLVMC/ForwardAs.td | 18 | ||||
-rw-r--r-- | tools/llvmc/doc/LLVMC-Reference.rst | 2 | ||||
-rw-r--r-- | utils/TableGen/LLVMCConfigurationEmitter.cpp | 2 |
3 files changed, 20 insertions, 2 deletions
diff --git a/test/LLVMC/ForwardAs.td b/test/LLVMC/ForwardAs.td new file mode 100644 index 0000000..5e5a087 --- /dev/null +++ b/test/LLVMC/ForwardAs.td @@ -0,0 +1,18 @@ +// Check the fix for PR4159. +// http://llvm.org/bugs/show_bug.cgi?id=4159 +// RUN: tblgen -I $srcroot/include --gen-llvmc %s -o %t +// RUN: grep unique_name %t + +include "llvm/CompilerDriver/Common.td" + +def OptList : OptionList<[(parameter_option "dummy", (extern))]>; + +def dummy_tool : Tool<[ +(cmd_line "dummy_cmd"), +(in_language "dummy"), +(out_language "dummy"), +(actions (case + (not_empty "dummy"), (forward_as "dummy", "unique_name"))) +]>; + +def DummyGraph : CompilationGraph<[SimpleEdge<"root", "dummy_tool">]>; diff --git a/tools/llvmc/doc/LLVMC-Reference.rst b/tools/llvmc/doc/LLVMC-Reference.rst index f6d1843..d99fa0c 100644 --- a/tools/llvmc/doc/LLVMC-Reference.rst +++ b/tools/llvmc/doc/LLVMC-Reference.rst @@ -529,7 +529,7 @@ The list of all possible actions follows. - ``forward_as`` - Change the name of an option, but forward the argument unchanged. - Example: ``(forward_as "O0" "--disable-optimization")``. + Example: ``(forward_as "O0", "--disable-optimization")``. - ``output_suffix`` - modify the output suffix of this tool. diff --git a/utils/TableGen/LLVMCConfigurationEmitter.cpp b/utils/TableGen/LLVMCConfigurationEmitter.cpp index 2dee3e9..0157b61 100644 --- a/utils/TableGen/LLVMCConfigurationEmitter.cpp +++ b/utils/TableGen/LLVMCConfigurationEmitter.cpp @@ -1444,7 +1444,7 @@ class EmitActionHandler { else if (ActionName == "forward_as") { checkNumberOfArguments(&Dag, 2); const std::string& Name = InitPtrToString(Dag.getArg(0)); - const std::string& NewName = InitPtrToString(Dag.getArg(0)); + const std::string& NewName = InitPtrToString(Dag.getArg(1)); EmitForwardOptionPropertyHandlingCode(OptDescs.FindOption(Name), IndentLevel, NewName, O); } |