summaryrefslogtreecommitdiff
path: root/test/LLVMC/ForwardTransformedValue.td
diff options
context:
space:
mode:
Diffstat (limited to 'test/LLVMC/ForwardTransformedValue.td')
-rw-r--r--test/LLVMC/ForwardTransformedValue.td26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/LLVMC/ForwardTransformedValue.td b/test/LLVMC/ForwardTransformedValue.td
new file mode 100644
index 000000000000..e26345362c0f
--- /dev/null
+++ b/test/LLVMC/ForwardTransformedValue.td
@@ -0,0 +1,26 @@
+// 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: FileCheck -input-file %t %s
+// RUN: %compile_cxx -fexceptions -x c++ %t
+
+include "llvm/CompilerDriver/Common.td"
+
+def OptList : OptionList<[(parameter_option "a", (extern)),
+ (prefix_list_option "b", (extern))]>;
+
+// CHECK: std::string HookA
+// CHECK: std::string HookB
+
+def dummy_tool : Tool<[
+(cmd_line "dummy_cmd $INFILE"),
+(in_language "dummy"),
+(out_language "dummy"),
+(actions (case
+ // CHECK: HookA(AutoGeneratedParameter_a
+ (not_empty "a"), (forward_transformed_value "a", "HookA"),
+ // CHECK: HookB(AutoGeneratedList_b
+ (not_empty "b"), (forward_transformed_value "b", "HookB")))
+]>;
+
+def DummyGraph : CompilationGraph<[SimpleEdge<"root", "dummy_tool">]>;