Add a small missed optimization: turn X == C ? X : Y into X == C ? C : Y. This
[llvm/stm8.git] / test / LLVMC / ForwardTransformedValue.td
blob9184ede3610186cf8c9558c49a67932e398dacc7
1 // Check that forward_transformed_value works.
2 // The dummy tool and graph are required to silence warnings.
3 // RUN: tblgen -I %p/../../include --gen-llvmc %s -o %t
4 // RUN: FileCheck -input-file %t %s
5 // RUN: %compile_cxx %t
6 // XFAIL: vg_leak
8 include "llvm/CompilerDriver/Common.td"
10 def OptList : OptionList<[(parameter_option "a", (help "dummy")),
11                           (prefix_list_option "b", (help "dummy"))]>;
13 // CHECK: std::string HookA
14 // CHECK: std::string HookB
16 def dummy_tool : Tool<[
17 (command "dummy_cmd"),
18 (in_language "dummy"),
19 (out_language "dummy"),
20 (actions (case
21          // CHECK: HookA(autogenerated::Parameter_a
22          (not_empty "a"), (forward_transformed_value "a", "HookA"),
23          // CHECK: HookB(autogenerated::List_b
24          (not_empty "b"), (forward_transformed_value "b", "HookB")))
25 ]>;
27 def DummyGraph : CompilationGraph<[(edge "root", "dummy_tool")]>;