[InstCombine] Signed saturation patterns
[llvm-core.git] / test / TableGen / compare.td
blobe54d853b9a607acf53209e681671fed9b2683359
1 // RUN: llvm-tblgen %s | FileCheck %s
2 // XFAIL: vg_leak
4 // CHECK: --- Defs ---
6 // CHECK: def A0 {
7 // CHECK:   bit eq = 1;
8 // CHECK:   bit ne = 0;
9 // CHECK:   bit le = 1;
10 // CHECK:   bit lt = 0;
11 // CHECK:   bit ge = 1;
12 // CHECK:   bit gt = 0;
13 // CHECK: }
15 // CHECK: def A1 {
16 // CHECK:   bit eq = 0;
17 // CHECK:   bit ne = 1;
18 // CHECK:   bit le = 1;
19 // CHECK:   bit lt = 1;
20 // CHECK:   bit ge = 0;
21 // CHECK:   bit gt = 0;
22 // CHECK: }
24 // CHECK: def A2 {
25 // CHECK:   bit eq = 0;
26 // CHECK:   bit ne = 1;
27 // CHECK:   bit le = 0;
28 // CHECK:   bit lt = 0;
29 // CHECK:   bit ge = 1;
30 // CHECK:   bit gt = 1;
31 // CHECK: }
33 // CHECK: def A3 {
34 // CHECK:   bit eq = 0;
35 // CHECK:   bit ne = 1;
36 // CHECK:   bit le = 0;
37 // CHECK:   bit lt = 0;
38 // CHECK:   bit ge = 1;
39 // CHECK:   bit gt = 1;
40 // CHECK: }
42 class A<int x, int y> {
43   bit eq = !eq(x, y);
44   bit ne = !ne(x, y);
45   bit le = !le(x, y);
46   bit lt = !lt(x, y);
47   bit ge = !ge(x, y);
48   bit gt = !gt(x, y);
51 def A0 : A<-3, -3>;
52 def A1 : A<-1, 4>;
53 def A2 : A<3, -2>;
54 def A3 : A<4, 2>;