Revert r354244 "[DAGCombiner] Eliminate dead stores to stack."
[llvm-complete.git] / test / CodeGen / AArch64 / GlobalISel / select-cbz.mir
blob4075ba279c75723e2839c9d16a2e22c3f093ffdf
1 # RUN: llc -mtriple=aarch64-- -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck %s
3 --- |
4   define void @cbz_s32() { ret void }
5   define void @cbz_s64() { ret void }
6   define void @cbnz_s32() { ret void }
7   define void @cbnz_s64() { ret void }
8 ...
10 ---
11 # CHECK-LABEL: name: cbz_s32
12 name:            cbz_s32
13 legalized:       true
14 regBankSelected: true
16 # CHECK:  body:
17 # CHECK:   bb.0:
18 # CHECK:    %0:gpr32 = COPY $w0
19 # CHECK:    CBZW %0, %bb.1
20 # CHECK:    B %bb.0
21 body:             |
22   bb.0:
23     liveins: $w0
24     successors: %bb.0, %bb.1
26     %0:gpr(s32) = COPY $w0
27     %1:gpr(s32) = G_CONSTANT i32 0
28     %2:gpr(s32) = G_ICMP intpred(eq), %0, %1
29     %3:gpr(s1) = G_TRUNC %2(s32)
30     G_BRCOND %3(s1), %bb.1
31     G_BR %bb.0
33   bb.1:
34 ...
36 ---
37 # CHECK-LABEL: name: cbz_s64
38 name:            cbz_s64
39 legalized:       true
40 regBankSelected: true
42 # CHECK:  body:
43 # CHECK:   bb.0:
44 # CHECK:    %0:gpr64 = COPY $x0
45 # CHECK:    CBZX %0, %bb.1
46 # CHECK:    B %bb.0
47 body:             |
48   bb.0:
49     liveins: $x0
50     successors: %bb.0, %bb.1
52     %0:gpr(s64) = COPY $x0
53     %1:gpr(s64) = G_CONSTANT i64 0
54     %2:gpr(s32) = G_ICMP intpred(eq), %0, %1
55     %3:gpr(s1) = G_TRUNC %2(s32)
56     G_BRCOND %3(s1), %bb.1
57     G_BR %bb.0
59   bb.1:
60 ...
62 ---
63 # CHECK-LABEL: name: cbnz_s32
64 name:            cbnz_s32
65 legalized:       true
66 regBankSelected: true
68 # CHECK:  body:
69 # CHECK:   bb.0:
70 # CHECK:    %0:gpr32 = COPY $w0
71 # CHECK:    CBNZW %0, %bb.1
72 # CHECK:    B %bb.0
73 body:             |
74   bb.0:
75     liveins: $w0
76     successors: %bb.0, %bb.1
78     %0:gpr(s32) = COPY $w0
79     %1:gpr(s32) = G_CONSTANT i32 0
80     %2:gpr(s32) = G_ICMP intpred(ne), %0, %1
81     %3:gpr(s1) = G_TRUNC %2(s32)
82     G_BRCOND %3(s1), %bb.1
83     G_BR %bb.0
85   bb.1:
86 ...
88 ---
89 # CHECK-LABEL: name: cbnz_s64
90 name:            cbnz_s64
91 legalized:       true
92 regBankSelected: true
94 # CHECK:  body:
95 # CHECK:   bb.0:
96 # CHECK:    %0:gpr64 = COPY $x0
97 # CHECK:    CBNZX %0, %bb.1
98 # CHECK:    B %bb.0
99 body:             |
100   bb.0:
101     liveins: $x0
102     successors: %bb.0, %bb.1
104     %0:gpr(s64) = COPY $x0
105     %1:gpr(s64) = G_CONSTANT i64 0
106     %2:gpr(s32) = G_ICMP intpred(ne), %0, %1
107     %3:gpr(s1) = G_TRUNC %2(s32)
108     G_BRCOND %3(s1), %bb.1
109     G_BR %bb.0
111   bb.1: