371 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mcpu=pwr9 -mtriple=powerpc64le-unknown-unknown -run-pass ppc-pre-emit-peephole %s -o - | FileCheck %s3 4---5name: t16alignment: 167tracksRegLiveness: true8machineFunctionInfo: {}9body: |10 bb.0.entry:11 liveins: $x112 13 ; CHECK-LABEL: name: t114 ; CHECK: liveins: $x115 ; CHECK: renamable $x3 = LI8 016 ; CHECK: STD renamable $x3, 16, $x117 ; CHECK: STD killed renamable $x3, 8, $x118 ; CHECK: BLR8 implicit $lr8, implicit $rm19 renamable $x3 = LI8 020 STD killed renamable $x3, 16, $x121 renamable $x3 = LI8 022 STD killed renamable $x3, 8, $x123 BLR8 implicit $lr8, implicit $rm24 25...26---27name: t228alignment: 1629tracksRegLiveness: true30machineFunctionInfo: {}31body: |32 bb.0.entry:33 liveins: $x134 35 ; CHECK-LABEL: name: t236 ; CHECK: liveins: $x137 ; CHECK: renamable $x3 = LI8 038 ; CHECK: STD renamable $x3, 32, $x139 ; CHECK: STD renamable $x3, 24, $x140 ; CHECK: STD renamable $x3, 16, $x141 ; CHECK: STD killed renamable $x3, 8, $x142 ; CHECK: BLR8 implicit $lr8, implicit $rm43 renamable $x3 = LI8 044 STD killed renamable $x3, 32, $x145 renamable $x3 = LI8 046 STD killed renamable $x3, 24, $x147 renamable $x3 = LI8 048 STD killed renamable $x3, 16, $x149 renamable $x3 = LI8 050 STD killed renamable $x3, 8, $x151 BLR8 implicit $lr8, implicit $rm52 53...54---55name: t356alignment: 1657tracksRegLiveness: true58machineFunctionInfo: {}59body: |60 bb.0.entry:61 liveins: $x162 63 ; CHECK-LABEL: name: t364 ; CHECK: liveins: $x165 ; CHECK: renamable $x3 = LI8 066 ; CHECK: STD renamable $x3, 32, $x167 ; CHECK: STD renamable $x3, 24, $x168 ; CHECK: BLR8 implicit $lr8, implicit $rm69 renamable $x3 = LI8 070 STD killed renamable $x3, 32, $x171 renamable $x3 = LI8 072 STD renamable $x3, 24, $x173 BLR8 implicit $lr8, implicit $rm74 75...76---77name: t478alignment: 1679tracksRegLiveness: true80machineFunctionInfo: {}81body: |82 bb.0.entry:83 liveins: $x184 85 ; CHECK-LABEL: name: t486 ; CHECK: liveins: $x187 ; CHECK: renamable $x3 = LI8 088 ; CHECK: STD renamable $x3, 16, $x189 ; CHECK: renamable $x4 = ADDI8 renamable $x3, 890 ; CHECK: STD killed renamable $x3, 8, $x191 ; CHECK: BLR8 implicit $lr8, implicit $rm92 renamable $x3 = LI8 093 STD killed renamable $x3, 16, $x194 renamable $x3 = LI8 095 renamable $x4 = ADDI8 killed renamable $x3, 896 renamable $x3 = LI8 097 STD killed renamable $x3, 8, $x198 BLR8 implicit $lr8, implicit $rm99 100...101---102name: t5103alignment: 16104tracksRegLiveness: true105machineFunctionInfo: {}106body: |107 bb.0.entry:108 liveins: $x1109 110 ; CHECK-LABEL: name: t5111 ; CHECK: liveins: $x1112 ; CHECK: renamable $r3 = LI 0113 ; CHECK: STW renamable $r3, 16, $x1114 ; CHECK: STW killed renamable $r3, 12, $x1115 ; CHECK: renamable $r3 = LI 1116 ; CHECK: BLR8 implicit $lr8, implicit $rm117 renamable $r3 = LI 0118 STW killed renamable $r3, 16, $x1119 renamable $r3 = LI 0120 STW killed renamable $r3, 12, $x1121 renamable $r3 = LI 1122 BLR8 implicit $lr8, implicit $rm123 124...125---126name: t6127alignment: 16128tracksRegLiveness: true129machineFunctionInfo: {}130body: |131 bb.0.entry:132 liveins: $x1133 134 ; CHECK-LABEL: name: t6135 ; CHECK: liveins: $x1136 ; CHECK: renamable $x3 = LI8 0137 ; CHECK: renamable $x4 = LI8 1138 ; CHECK: STD renamable $x3, 32, $x1139 ; CHECK: STD renamable $x4, 24, $x1140 ; CHECK: STD killed renamable $x3, 16, $x1141 ; CHECK: STD killed renamable $x4, 8, $x1142 ; CHECK: BLR8 implicit $lr8, implicit $rm143 renamable $x3 = LI8 0144 renamable $x4 = LI8 1145 STD killed renamable $x3, 32, $x1146 STD killed renamable $x4, 24, $x1147 renamable $x3 = LI8 0148 renamable $x4 = LI8 1149 STD killed renamable $x3, 16, $x1150 STD killed renamable $x4, 8, $x1151 BLR8 implicit $lr8, implicit $rm152 153...154---155name: t7156alignment: 16157tracksRegLiveness: true158machineFunctionInfo: {}159body: |160 bb.0.entry:161 liveins: $x1, $x4162 163 ; CHECK-LABEL: name: t7164 ; CHECK: liveins: $x1, $x4165 ; CHECK: renamable $x3 = LI8 0166 ; CHECK: STD killed renamable $x3, 32, $x1167 ; CHECK: renamable $x3 = ADDI8 $x4, 6168 ; CHECK: BLR8 implicit $lr8, implicit $rm169 renamable $x3 = LI8 0170 STD killed renamable $x3, 32, $x1171 renamable $x3 = ADDI8 $x4, 6172 BLR8 implicit $lr8, implicit $rm173 174...175---176name: t8177alignment: 16178tracksRegLiveness: true179machineFunctionInfo: {}180body: |181 bb.0.entry:182 liveins: $x1183 184 ; CHECK-LABEL: name: t8185 ; CHECK: liveins: $x1186 ; CHECK: renamable $x3 = LI8 0187 ; CHECK: STD renamable $x3, 32, $x1188 ; CHECK: BLR8 implicit $lr8, implicit $rm189 renamable $x3 = LI8 0190 STD killed renamable $x3, 32, $x1191 renamable $x3 = LI8 0192 BLR8 implicit $lr8, implicit $rm193 194...195---196name: t9197alignment: 16198tracksRegLiveness: true199machineFunctionInfo: {}200body: |201 ; CHECK-LABEL: name: t9202 ; CHECK: bb.0.entry:203 ; CHECK: successors: %bb.2(0x40000000), %bb.1(0x40000000)204 ; CHECK: liveins: $x3205 ; CHECK: renamable $r4 = LI 0, implicit-def $x4206 ; CHECK: renamable $x24 = RLDICL renamable $x4, 0, 32207 ; CHECK: renamable $cr0 = CMPLDI renamable $x3, 0208 ; CHECK: BCC 68, killed renamable $cr0, %bb.1209 ; CHECK: B %bb.2210 ; CHECK: bb.1:211 ; CHECK: liveins: $r4, $x1212 ; CHECK: STW killed renamable $r4, 16, $x1213 ; CHECK: BLR8 implicit $lr8, implicit $rm214 ; CHECK: bb.2:215 ; CHECK: liveins: $r4, $x1216 ; CHECK: STW killed renamable $r4, 32, $x1217 ; CHECK: BLR8 implicit $lr8, implicit $rm218 bb.0.entry:219 liveins: $x3220 successors: %bb.8, %bb.7221 222 renamable $r4 = LI 0, implicit-def $x4223 renamable $x24 = RLDICL killed renamable $x4, 0 , 32224 renamable $cr0 = CMPLDI renamable $x3, 0225 renamable $r4 = LI 0226 BCC 68, killed renamable $cr0, %bb.7227 B %bb.8228 229 bb.7:230 liveins: $r4, $x1231 STW killed renamable $r4, 16, $x1232 BLR8 implicit $lr8, implicit $rm233 234 bb.8:235 liveins: $r4, $x1236 STW killed renamable $r4, 32, $x1237 BLR8 implicit $lr8, implicit $rm238 239...240---241name: t10242alignment: 16243tracksRegLiveness: true244machineFunctionInfo: {}245body: |246 bb.0.entry:247 liveins: $x1248 249 ; CHECK-LABEL: name: t10250 ; CHECK: liveins: $x1251 ; CHECK: renamable $x3 = LI8 24252 ; CHECK: STD killed renamable $x3, 16, $x1253 ; CHECK: renamable $r3 = LI 0254 ; CHECK: STW killed renamable $r3, 26, $x1255 ; CHECK: BLR8 implicit $lr8, implicit $rm256 renamable $x3 = LI8 24257 STD killed renamable $x3, 16, $x1258 renamable $r3 = LI 0259 STW killed renamable $r3, 26, $x1260 BLR8 implicit $lr8, implicit $rm261 262...263---264name: LIS8265alignment: 16266tracksRegLiveness: true267machineFunctionInfo: {}268body: |269 bb.0.entry:270 liveins: $x1271 272 ; CHECK-LABEL: name: LIS8273 ; CHECK: liveins: $x1274 ; CHECK: renamable $x3 = LIS8 0275 ; CHECK: STD renamable $x3, 16, $x1276 ; CHECK: STD killed renamable $x3, 8, $x1277 ; CHECK: BLR8 implicit $lr8, implicit $rm278 renamable $x3 = LIS8 0279 STD killed renamable $x3, 16, $x1280 renamable $x3 = LIS8 0281 STD killed renamable $x3, 8, $x1282 BLR8 implicit $lr8, implicit $rm283 284...285---286name: LIS287alignment: 16288tracksRegLiveness: true289machineFunctionInfo: {}290body: |291 bb.0.entry:292 liveins: $x1293 294 ; CHECK-LABEL: name: LIS295 ; CHECK: liveins: $x1296 ; CHECK: renamable $r3 = LIS 0297 ; CHECK: STW renamable $r3, 16, $x1298 ; CHECK: STW killed renamable $r3, 12, $x1299 ; CHECK: BLR8 implicit $lr8, implicit $rm300 renamable $r3 = LIS 0301 STW killed renamable $r3, 16, $x1302 renamable $r3 = LIS 0303 STW killed renamable $r3, 12, $x1304 BLR8 implicit $lr8, implicit $rm305 306...307---308name: modify_and_kill_the_reg_in_the_same_inst309alignment: 16310tracksRegLiveness: true311machineFunctionInfo: {}312body: |313 bb.0.entry:314 315 ; CHECK-LABEL: name: modify_and_kill_the_reg_in_the_same_inst316 ; CHECK: renamable $x6 = LI8 1317 ; CHECK: renamable $x6 = RLDICR killed renamable $x6, 44, 19318 ; CHECK: BLR8 implicit $lr8, implicit $rm319 renamable $x6 = LI8 1320 renamable $x6 = RLDICR killed renamable $x6, 44, 19321 BLR8 implicit $lr8, implicit $rm322 323...324---325name: dead_load_immediate_followed_by_a_redundancy326alignment: 16327tracksRegLiveness: true328machineFunctionInfo: {}329body: |330 bb.0.entry:331 liveins: $x1332 333 ; CHECK-LABEL: name: dead_load_immediate_followed_by_a_redundancy334 ; CHECK: liveins: $x1335 ; CHECK: renamable $r3 = LI 128336 ; CHECK: renamable $x4 = ADDI8 $x1, -128337 ; CHECK: renamable $x5 = ADDI8 $x1, -128338 ; CHECK: STW killed renamable $r3, 16, $x4339 ; CHECK: BLR8 implicit $lr8, implicit $rm340 dead renamable $r3 = LI 128341 renamable $x4 = ADDI8 $x1, -128342 dead renamable $r3 = LI 128343 renamable $x5 = ADDI8 $x1, -128344 renamable $r3 = LI 128345 STW killed renamable $r3, 16, $x4346 BLR8 implicit $lr8, implicit $rm347 348...349---350name: overwrite_reg_before_killed351alignment: 16352tracksRegLiveness: true353machineFunctionInfo: {}354body: |355 bb.0.entry:356 liveins: $x1357 358 ; CHECK-LABEL: name: overwrite_reg_before_killed359 ; CHECK: liveins: $x1360 ; CHECK: renamable $x3 = LI8 0361 ; CHECK: STD renamable $x3, 16, $x1362 ; CHECK: STD killed renamable $x3, 8, $x1363 ; CHECK: BLR8 implicit $lr8, implicit $rm364 renamable $x3 = LI8 0365 STD renamable $x3, 16, $x1366 renamable $x3 = LI8 0367 STD killed renamable $x3, 8, $x1368 BLR8 implicit $lr8, implicit $rm369 370...371