[ARM] More MVE compare vector splat combines for ANDs
[llvm-complete.git] / test / ExecutionEngine / test-interp-vec-setcond-int.ll
blob4c89109105951589878b22adf70128e7c483fca5
1 ; RUN: %lli %s > /dev/null
3 define i32 @main() {
4     %int1 = add <3 x i32> <i32 0, i32 0, i32 0>, <i32 0, i32 0, i32 0>
5     %int2 = add <3 x i32> <i32 0, i32 0, i32 0>, <i32 0, i32 0, i32 0>
6     %long1 = add <2 x i64> <i64 0, i64 0>, <i64 0, i64 0>
7     %long2 = add <2 x i64> <i64 0, i64 0>, <i64 0, i64 0>
8     %sbyte1 = add <5 x i8> <i8 0, i8 0, i8 0, i8 0, i8 0>, <i8 0, i8 0, i8 0, i8 0, i8 0>
9     %sbyte2 = add <5 x i8> <i8 0, i8 0, i8 0, i8 0, i8 0>, <i8 0, i8 0, i8 0, i8 0, i8 0>
10     %short1 = add <4 x i16> <i16 0, i16 0, i16 0, i16 0>, <i16 0, i16 0, i16 0, i16 0>
11     %short2 = add <4 x i16> <i16 0, i16 0, i16 0, i16 0>, <i16 0, i16 0, i16 0, i16 0>
12     %ubyte1 = add <5 x i8>  <i8 0, i8 0, i8 0, i8 0, i8 0>, <i8 0, i8 0, i8 0, i8 0, i8 0>
13     %ubyte2 = add <5 x i8>  <i8 0, i8 0, i8 0, i8 0, i8 0>, <i8 0, i8 0, i8 0, i8 0, i8 0>
14     %uint1 = add <3 x i32> <i32 0, i32 0, i32 0>, <i32 0, i32 0, i32 0>
15     %uint2 = add <3 x i32> <i32 0, i32 0, i32 0>, <i32 0, i32 0, i32 0>
16     %ulong1 = add <2 x i64> <i64 0, i64 0>, <i64 0, i64 0>
17     %ulong2 = add <2 x i64> <i64 0, i64 0>, <i64 0, i64 0>
18     %ushort1 = add <4 x i16> <i16 0, i16 0, i16 0, i16 0>, <i16 0, i16 0, i16 0, i16 0>
19     %ushort2 = add <4 x i16> <i16 0, i16 0, i16 0, i16 0>, <i16 0, i16 0, i16 0, i16 0>
20     %test1 = icmp eq <5 x i8> %ubyte1, %ubyte2
21     %test2 = icmp uge <5 x i8> %ubyte1, %ubyte2
22     %test3 = icmp ugt <5 x i8> %ubyte1, %ubyte2
23     %test4 = icmp ule <5 x i8> %ubyte1, %ubyte2
24     %test5 = icmp ult <5 x i8> %ubyte1, %ubyte2
25     %test6 = icmp ne <5 x i8> %ubyte1, %ubyte2
26     %test7 = icmp eq <4 x i16> %ushort1, %ushort2
27     %test8 = icmp uge <4 x i16> %ushort1, %ushort2
28     %test9 = icmp ugt <4 x i16> %ushort1, %ushort2
29     %test10 = icmp ule <4 x i16> %ushort1, %ushort2
30     %test11 = icmp ult <4 x i16> %ushort1, %ushort2
31     %test12 = icmp ne <4 x i16> %ushort1, %ushort2 
32     %test13 = icmp eq <3 x i32> %uint1, %uint2
33     %test14 = icmp uge <3 x i32> %uint1, %uint2
34     %test15 = icmp ugt <3 x i32> %uint1, %uint2
35     %test16 = icmp ule <3 x i32> %uint1, %uint2
36     %test17 = icmp ult <3 x i32> %uint1, %uint2
37     %test18 = icmp ne <3 x i32> %uint1, %uint2
38     %test19 = icmp eq <2 x i64> %ulong1, %ulong2
39     %test20 = icmp uge <2 x i64> %ulong1, %ulong2
40     %test21 = icmp ugt <2 x i64> %ulong1, %ulong2
41     %test22 = icmp ule <2 x i64> %ulong1, %ulong2
42     %test23 = icmp ult <2 x i64> %ulong1, %ulong2
43     %test24 = icmp ne <2 x i64> %ulong1, %ulong2
44     %test25 = icmp eq <5 x i8> %sbyte1, %sbyte2
45     %test26 = icmp sge <5 x i8> %sbyte1, %sbyte2
46     %test27 = icmp sgt <5 x i8> %sbyte1, %sbyte2
47     %test28 = icmp sle <5 x i8> %sbyte1, %sbyte2
48     %test29 = icmp slt <5 x i8> %sbyte1, %sbyte2
49     %test30 = icmp ne <5 x i8> %sbyte1, %sbyte2
50     %test31 = icmp eq <4 x i16> %short1, %short2
51     %test32 = icmp sge <4 x i16> %short1, %short2
52     %test33 = icmp sgt <4 x i16> %short1, %short2
53     %test34 = icmp sle <4 x i16> %short1, %short2
54     %test35 = icmp slt <4 x i16> %short1, %short2
55     %test36 = icmp ne <4 x i16> %short1, %short2
56     %test37 = icmp eq <3 x i32> %int1, %int2
57     %test38 = icmp sge <3 x i32> %int1, %int2
58     %test39 = icmp sgt <3 x i32> %int1, %int2
59     %test40 = icmp sle <3 x i32> %int1, %int2
60     %test41 = icmp slt <3 x i32> %int1, %int2
61     %test42 = icmp ne <3 x i32> %int1, %int2
62     %test43 = icmp eq <2 x i64> %long1, %long2
63     %test44 = icmp sge <2 x i64> %long1, %long2
64     %test45 = icmp sgt <2 x i64> %long1, %long2
65     %test46 = icmp sle <2 x i64> %long1, %long2
66     %test47 = icmp slt <2 x i64> %long1, %long2
67     %test48 = icmp ne <2 x i64> %long1, %long2
68     ret i32 0