aboutsummaryrefslogtreecommitdiffstats
path: root/test/LLVMC/OneOrMore.td
blob: ddf7cd1143a98c9ace4718d0c5bd89025b8d6c76 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// Check that (one_or_more) and (zero_or_one) properties work.
// 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<[
    // CHECK: cl::OneOrMore
    (prefix_list_option "foo", (one_or_more)),
    // CHECK: cl::Optional
    (parameter_list_option "baz", (optional))]>;

def dummy_tool : Tool<[
(cmd_line "dummy_cmd $INFILE"),
(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">]>;