aboutsummaryrefslogtreecommitdiffstats
path: root/test/LLVMC/OneOrMore.td
diff options
context:
space:
mode:
Diffstat (limited to 'test/LLVMC/OneOrMore.td')
-rw-r--r--test/LLVMC/OneOrMore.td22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/LLVMC/OneOrMore.td b/test/LLVMC/OneOrMore.td
new file mode 100644
index 0000000..f27ae97
--- /dev/null
+++ b/test/LLVMC/OneOrMore.td
@@ -0,0 +1,22 @@
+// Check that (one_or_more) and (zero_or_one) properties work.
+// The dummy tool and graph are required to silence warnings.
+// RUN: tblgen -I $srcroot/include --gen-llvmc %s -o %t
+// RUN: grep cl::ZeroOrOne %t | count 1
+// RUN: grep cl::OneOrMore %t | count 1
+
+include "llvm/CompilerDriver/Common.td"
+
+def OptList : OptionList<[
+ (prefix_list_option "foo", (one_or_more)),
+ (parameter_list_option "baz", (zero_or_one))]>;
+
+def dummy_tool : Tool<[
+(cmd_line "dummy_cmd"),
+(in_language "dummy"),
+(out_language "dummy"),
+(actions (case
+ (not_empty "foo"), (forward_as "foo", "bar"),
+ (not_empty "baz"), (forward "baz")))
+]>;
+
+def DummyGraph : CompilationGraph<[SimpleEdge<"root", "dummy_tool">]>;