Fixed some bugs in register stack pass.
[llvm/zpu.git] / test / CodeGen / SystemZ / 03-RetXorImmSubreg.ll
blob0033126369e6f47b710fcce2002172abde41b5c3
1 ; RUN: llc < %s -march=systemz | grep xilf  | count 9
2 ; RUN: llc < %s -march=systemz | grep llgfr | count 3
3 ; RUN: llc < %s -march=systemz | grep lgfr  | count 6
5 define i32 @foo1(i32 %a, i32 %b) {
6 entry:
7     %c = xor i32 %a, 1
8     ret i32 %c
11 define i32 @foo2(i32 %a, i32 %b) {
12 entry:
13     %c = xor i32 %a, 131072
14     ret i32 %c
17 define i32 @foo7(i32 %a, i32 %b) {
18 entry:
19     %c = xor i32 %a, 123456
20     ret i32 %c
23 define i32 @foo3(i32 %a, i32 %b) zeroext {
24 entry:
25     %c = xor i32 %a, 1
26     ret i32 %c
29 define i32 @foo8(i32 %a, i32 %b) zeroext {
30 entry:
31     %c = xor i32 %a, 123456
32     ret i32 %c
35 define i32 @foo4(i32 %a, i32 %b) signext {
36 entry:
37     %c = xor i32 %a, 131072
38     ret i32 %c
41 define i32 @foo5(i32 %a, i32 %b) zeroext {
42 entry:
43     %c = xor i32 %a, 1
44     ret i32 %c
47 define i32 @foo6(i32 %a, i32 %b) signext {
48 entry:
49     %c = xor i32 %a, 131072
50     ret i32 %c
53 define i32 @foo9(i32 %a, i32 %b) signext {
54 entry:
55     %c = xor i32 %a, 123456
56     ret i32 %c