261 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 62# RUN: llc -o - %s -mtriple=aarch64-none-eabi -run-pass=machine-cp -mcp-use-is-copy-instr | FileCheck %s3 4---5name: cbz_wzr6tracksRegLiveness: true7body: |8 ; CHECK-LABEL: name: cbz_wzr9 ; CHECK: bb.0:10 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)11 ; CHECK-NEXT: liveins: $x012 ; CHECK-NEXT: {{ $}}13 ; CHECK-NEXT: CBZW $wzr, %bb.214 ; CHECK-NEXT: {{ $}}15 ; CHECK-NEXT: bb.1:16 ; CHECK-NEXT: $w0 = MOVZWi 10, 017 ; CHECK-NEXT: RET undef $lr, implicit $w018 ; CHECK-NEXT: {{ $}}19 ; CHECK-NEXT: bb.2:20 ; CHECK-NEXT: $w0 = MOVZWi 20, 021 ; CHECK-NEXT: RET undef $lr, implicit $w022 bb.0:23 liveins: $x024 25 $w8 = ORRWrs $wzr, $wzr, 026 CBZW killed renamable $w8, %bb.227 28 bb.1:29 $w0 = MOVZWi 10, 030 RET undef $lr, implicit $w031 32 bb.2:33 $w0 = MOVZWi 20, 034 RET undef $lr, implicit $w035...36---37name: cbnz_wzr38tracksRegLiveness: true39body: |40 ; CHECK-LABEL: name: cbnz_wzr41 ; CHECK: bb.0:42 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)43 ; CHECK-NEXT: liveins: $x044 ; CHECK-NEXT: {{ $}}45 ; CHECK-NEXT: CBNZW $wzr, %bb.246 ; CHECK-NEXT: {{ $}}47 ; CHECK-NEXT: bb.1:48 ; CHECK-NEXT: $w0 = MOVZWi 10, 049 ; CHECK-NEXT: RET undef $lr, implicit $w050 ; CHECK-NEXT: {{ $}}51 ; CHECK-NEXT: bb.2:52 ; CHECK-NEXT: $w0 = MOVZWi 20, 053 ; CHECK-NEXT: RET undef $lr, implicit $w054 bb.0:55 liveins: $x056 57 $w8 = ORRWrs $wzr, $wzr, 058 CBNZW killed renamable $w8, %bb.259 60 bb.1:61 $w0 = MOVZWi 10, 062 RET undef $lr, implicit $w063 64 bb.2:65 $w0 = MOVZWi 20, 066 RET undef $lr, implicit $w067...68---69name: tbz_wzr70tracksRegLiveness: true71body: |72 ; CHECK-LABEL: name: tbz_wzr73 ; CHECK: bb.0:74 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)75 ; CHECK-NEXT: liveins: $x076 ; CHECK-NEXT: {{ $}}77 ; CHECK-NEXT: TBZW $wzr, 0, %bb.278 ; CHECK-NEXT: {{ $}}79 ; CHECK-NEXT: bb.1:80 ; CHECK-NEXT: $w0 = MOVZWi 10, 081 ; CHECK-NEXT: RET undef $lr, implicit $w082 ; CHECK-NEXT: {{ $}}83 ; CHECK-NEXT: bb.2:84 ; CHECK-NEXT: $w0 = MOVZWi 20, 085 ; CHECK-NEXT: RET undef $lr, implicit $w086 bb.0:87 liveins: $x088 89 $w8 = ORRWrs $wzr, $wzr, 090 TBZW killed renamable $w8, 0, %bb.291 92 bb.1:93 $w0 = MOVZWi 10, 094 RET undef $lr, implicit $w095 96 bb.2:97 $w0 = MOVZWi 20, 098 RET undef $lr, implicit $w099...100---101name: tbnz_wzr102tracksRegLiveness: true103body: |104 ; CHECK-LABEL: name: tbnz_wzr105 ; CHECK: bb.0:106 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)107 ; CHECK-NEXT: liveins: $x0108 ; CHECK-NEXT: {{ $}}109 ; CHECK-NEXT: TBNZW $wzr, 0, %bb.2110 ; CHECK-NEXT: {{ $}}111 ; CHECK-NEXT: bb.1:112 ; CHECK-NEXT: $w0 = MOVZWi 10, 0113 ; CHECK-NEXT: RET undef $lr, implicit $w0114 ; CHECK-NEXT: {{ $}}115 ; CHECK-NEXT: bb.2:116 ; CHECK-NEXT: $w0 = MOVZWi 20, 0117 ; CHECK-NEXT: RET undef $lr, implicit $w0118 bb.0:119 liveins: $x0120 121 $w8 = ORRWrs $wzr, $wzr, 0122 TBNZW killed renamable $w8, 0, %bb.2123 124 bb.1:125 $w0 = MOVZWi 10, 0126 RET undef $lr, implicit $w0127 128 bb.2:129 $w0 = MOVZWi 20, 0130 RET undef $lr, implicit $w0131...132 133---134name: cbz_xzr135tracksRegLiveness: true136body: |137 ; CHECK-LABEL: name: cbz_xzr138 ; CHECK: bb.0:139 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)140 ; CHECK-NEXT: liveins: $x0141 ; CHECK-NEXT: {{ $}}142 ; CHECK-NEXT: CBZX $xzr, %bb.2143 ; CHECK-NEXT: {{ $}}144 ; CHECK-NEXT: bb.1:145 ; CHECK-NEXT: $w0 = MOVZWi 10, 0146 ; CHECK-NEXT: RET undef $lr, implicit $w0147 ; CHECK-NEXT: {{ $}}148 ; CHECK-NEXT: bb.2:149 ; CHECK-NEXT: $w0 = MOVZWi 20, 0150 ; CHECK-NEXT: RET undef $lr, implicit $w0151 bb.0:152 liveins: $x0153 154 $x8 = ORRXrs $xzr, $xzr, 0155 CBZX killed renamable $x8, %bb.2156 157 bb.1:158 $w0 = MOVZWi 10, 0159 RET undef $lr, implicit $w0160 161 bb.2:162 $w0 = MOVZWi 20, 0163 RET undef $lr, implicit $w0164...165---166name: cbnz_xzr167tracksRegLiveness: true168body: |169 ; CHECK-LABEL: name: cbnz_xzr170 ; CHECK: bb.0:171 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)172 ; CHECK-NEXT: liveins: $x0173 ; CHECK-NEXT: {{ $}}174 ; CHECK-NEXT: CBNZX $xzr, %bb.2175 ; CHECK-NEXT: {{ $}}176 ; CHECK-NEXT: bb.1:177 ; CHECK-NEXT: $w0 = MOVZWi 10, 0178 ; CHECK-NEXT: RET undef $lr, implicit $w0179 ; CHECK-NEXT: {{ $}}180 ; CHECK-NEXT: bb.2:181 ; CHECK-NEXT: $w0 = MOVZWi 20, 0182 ; CHECK-NEXT: RET undef $lr, implicit $w0183 bb.0:184 liveins: $x0185 186 $x8 = ORRXrs $xzr, $xzr, 0187 CBNZX killed renamable $x8, %bb.2188 189 bb.1:190 $w0 = MOVZWi 10, 0191 RET undef $lr, implicit $w0192 193 bb.2:194 $w0 = MOVZWi 20, 0195 RET undef $lr, implicit $w0196...197---198name: tbz_xzr199tracksRegLiveness: true200body: |201 ; CHECK-LABEL: name: tbz_xzr202 ; CHECK: bb.0:203 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)204 ; CHECK-NEXT: liveins: $x0205 ; CHECK-NEXT: {{ $}}206 ; CHECK-NEXT: TBZX $xzr, 0, %bb.2207 ; CHECK-NEXT: {{ $}}208 ; CHECK-NEXT: bb.1:209 ; CHECK-NEXT: $w0 = MOVZWi 10, 0210 ; CHECK-NEXT: RET undef $lr, implicit $w0211 ; CHECK-NEXT: {{ $}}212 ; CHECK-NEXT: bb.2:213 ; CHECK-NEXT: $w0 = MOVZWi 20, 0214 ; CHECK-NEXT: RET undef $lr, implicit $w0215 bb.0:216 liveins: $x0217 218 $x8 = ORRXrs $xzr, $xzr, 0219 TBZX killed renamable $x8, 0, %bb.2220 221 bb.1:222 $w0 = MOVZWi 10, 0223 RET undef $lr, implicit $w0224 225 bb.2:226 $w0 = MOVZWi 20, 0227 RET undef $lr, implicit $w0228...229---230name: tbnz_xzr231tracksRegLiveness: true232body: |233 ; CHECK-LABEL: name: tbnz_xzr234 ; CHECK: bb.0:235 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)236 ; CHECK-NEXT: liveins: $x0237 ; CHECK-NEXT: {{ $}}238 ; CHECK-NEXT: TBNZX $xzr, 0, %bb.2239 ; CHECK-NEXT: {{ $}}240 ; CHECK-NEXT: bb.1:241 ; CHECK-NEXT: $w0 = MOVZWi 10, 0242 ; CHECK-NEXT: RET undef $lr, implicit $w0243 ; CHECK-NEXT: {{ $}}244 ; CHECK-NEXT: bb.2:245 ; CHECK-NEXT: $w0 = MOVZWi 20, 0246 ; CHECK-NEXT: RET undef $lr, implicit $w0247 bb.0:248 liveins: $x0249 250 $x8 = ORRXrs $xzr, $xzr, 0251 TBNZX killed renamable $x8, 0, %bb.2252 253 bb.1:254 $w0 = MOVZWi 10, 0255 RET undef $lr, implicit $w0256 257 bb.2:258 $w0 = MOVZWi 20, 0259 RET undef $lr, implicit $w0260...261