brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.8 KiB · 73c5526 Raw
56 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 52# RUN: llc -mtriple=amdgcn-amd-amdhsa -run-pass=si-shrink-instructions -mcpu=gfx1100 -o - %s | FileCheck %s3 4# Make sure there's no crash when shrinking a v_cmp on a wave32 target5# when the def is dead. Previously the vcc implicit def wasn't6# properly replaced with vcc_lo, so the expected implicit operand was7# not found in the shrunk instruction.8 9---10name:            shrink_v_cmp_vcc_lo_dead11tracksRegLiveness: true12tracksDebugUserValues: true13frameInfo:14  maxAlignment:    115  maxCallFrameSize: 016  isCalleeSavedInfoValid: true17machineFunctionInfo:18  maxKernArgAlign: 119  stackPtrOffsetReg: '$sgpr32'20body:             |21  bb.0:22    liveins: $vgpr0, $vgpr123    ; CHECK-LABEL: name: shrink_v_cmp_vcc_lo_dead24    ; CHECK: liveins: $vgpr0, $vgpr125    ; CHECK-NEXT: {{  $}}26    ; CHECK-NEXT: V_CMP_LT_U32_e32 $vgpr0, $vgpr1, implicit-def dead $vcc_lo, implicit $exec27    ; CHECK-NEXT: S_SETPC_B64_return undef $sgpr30_sgpr3128    dead renamable $vcc_lo = V_CMP_LT_U32_e64 $vgpr0, $vgpr1, implicit $exec29    S_SETPC_B64_return undef $sgpr30_sgpr3130 31...32 33---34name:            shrink_v_cmp_vcc_lo_live35tracksRegLiveness: true36tracksDebugUserValues: true37frameInfo:38  maxAlignment:    139  maxCallFrameSize: 040  isCalleeSavedInfoValid: true41machineFunctionInfo:42  maxKernArgAlign: 143  stackPtrOffsetReg: '$sgpr32'44body:             |45  bb.0:46    liveins: $vgpr0, $vgpr147    ; CHECK-LABEL: name: shrink_v_cmp_vcc_lo_live48    ; CHECK: liveins: $vgpr0, $vgpr149    ; CHECK-NEXT: {{  $}}50    ; CHECK-NEXT: V_CMP_LT_U32_e32 $vgpr0, $vgpr1, implicit-def $vcc_lo, implicit $exec51    ; CHECK-NEXT: S_SETPC_B64_return undef $sgpr30_sgpr31, implicit $vcc_lo52    renamable $vcc_lo = V_CMP_LT_U32_e64 $vgpr0, $vgpr1, implicit $exec53    S_SETPC_B64_return undef $sgpr30_sgpr31, implicit $vcc_lo54 55...56