blob: e9081f0fa94cc378645688f798aee3049d7114c0 [file] [log] [blame]
Dan Gohman18800922009-09-11 18:01:28 +00001; RUN: opt < %s -instcombine -S | not grep xor
Nick Lewycky18f50b22008-08-17 07:34:14 +00002
3define i1 @test1(i8 %x, i8 %y) {
4 %X = xor i8 %x, 128
5 %Y = xor i8 %y, 128
6 %tmp = icmp slt i8 %X, %Y
7 ret i1 %tmp
8}
9
10define i1 @test2(i8 %x, i8 %y) {
11 %X = xor i8 %x, 128
12 %Y = xor i8 %y, 128
13 %tmp = icmp ult i8 %X, %Y
14 ret i1 %tmp
15}
16
17define i1 @test3(i8 %x) {
18 %X = xor i8 %x, 128
19 %tmp = icmp uge i8 %X, 15
20 ret i1 %tmp
21}
22
Nick Lewycky53b44022008-08-17 19:58:24 +000023define i1 @test4(i8 %x, i8 %y) {
24 %X = xor i8 %x, 127
25 %Y = xor i8 %y, 127
26 %tmp = icmp slt i8 %X, %Y
27 ret i1 %tmp
28}
29
30define i1 @test5(i8 %x, i8 %y) {
31 %X = xor i8 %x, 127
32 %Y = xor i8 %y, 127
33 %tmp = icmp ult i8 %X, %Y
34 ret i1 %tmp
35}
36
37define i1 @test6(i8 %x) {
38 %X = xor i8 %x, 127
39 %tmp = icmp uge i8 %X, 15
40 ret i1 %tmp
41}