summaryrefslogtreecommitdiff
path: root/test/LLVMC
diff options
context:
space:
mode:
authorMikhail Glushenkov <foldr@codedgers.com>2009-12-07 17:03:05 +0000
committerMikhail Glushenkov <foldr@codedgers.com>2009-12-07 17:03:05 +0000
commit8245a1dd530083f6b6bfebd0f42ade1942ad871f (patch)
treebca0901521c67f9e4576812cb9921f8f369c7ecb /test/LLVMC
parent632eb20c34f1374983e1d4b0dca1fbcb450f455f (diff)
downloadllvm-8245a1dd530083f6b6bfebd0f42ade1942ad871f.tar.gz
llvm-8245a1dd530083f6b6bfebd0f42ade1942ad871f.tar.bz2
llvm-8245a1dd530083f6b6bfebd0f42ade1942ad871f.tar.xz
Implement 'forward_value' and 'forward_transformed_value'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90770 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/LLVMC')
-rw-r--r--test/LLVMC/ForwardTransformedValue.td21
-rw-r--r--test/LLVMC/ForwardValue.td21
2 files changed, 42 insertions, 0 deletions
diff --git a/test/LLVMC/ForwardTransformedValue.td b/test/LLVMC/ForwardTransformedValue.td
new file mode 100644
index 0000000000..478d126728
--- /dev/null
+++ b/test/LLVMC/ForwardTransformedValue.td
@@ -0,0 +1,21 @@
+// Check that forward_transformed_value works.
+// The dummy tool and graph are required to silence warnings.
+// RUN: tblgen -I %p/../../include --gen-llvmc %s -o %t
+// RUN: grep HookA %t
+// RUN: grep HookB %t
+
+include "llvm/CompilerDriver/Common.td"
+
+def OptList : OptionList<[(parameter_option "a", (extern)),
+ (prefix_list_option "b", (extern))]>;
+
+def dummy_tool : Tool<[
+(cmd_line "dummy_cmd $INFILE"),
+(in_language "dummy"),
+(out_language "dummy"),
+(actions (case
+ (not_empty "a"), (forward_transformed_value "a", "HookA"),
+ (not_empty "b"), (forward_transformed_value "b", "HookB")))
+]>;
+
+def DummyGraph : CompilationGraph<[SimpleEdge<"root", "dummy_tool">]>;
diff --git a/test/LLVMC/ForwardValue.td b/test/LLVMC/ForwardValue.td
new file mode 100644
index 0000000000..aebb198fd1
--- /dev/null
+++ b/test/LLVMC/ForwardValue.td
@@ -0,0 +1,21 @@
+// Check that forward_value works.
+// The dummy tool and graph are required to silence warnings.
+// RUN: tblgen -I %p/../../include --gen-llvmc %s -o %t
+// RUN: grep {vec.push_back\(AutoGeneratedParameter_a\)} %t
+// RUN: grep {std::copy\(AutoGeneratedList_b.begin\(\)} %t
+
+include "llvm/CompilerDriver/Common.td"
+
+def OptList : OptionList<[(parameter_option "a", (extern)),
+ (prefix_list_option "b", (extern))]>;
+
+def dummy_tool : Tool<[
+(cmd_line "dummy_cmd $INFILE"),
+(in_language "dummy"),
+(out_language "dummy"),
+(actions (case
+ (not_empty "a"), (forward_value "a"),
+ (not_empty "b"), (forward_value "b")))
+]>;
+
+def DummyGraph : CompilationGraph<[SimpleEdge<"root", "dummy_tool">]>;