brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.6 KiB · 039b6f9 Raw
44 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 52 3# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -run-pass=liveintervals,virtregmap,si-lower-wwm-copies -o - %s | FileCheck %s4# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -passes="require<live-intervals>,require<virtregmap>,si-lower-wwm-copies" -o - %s | FileCheck %s5 6# Check for two cases of $scc being live and dead.7---8name: lower-wwm-copies9registers:10  - { id: 1, class: vgpr_32, flags: [ WWM_REG ]}11machineFunctionInfo:12  sgprForEXECCopy: '$sgpr2_sgpr3'13tracksRegLiveness: true14body: |15  ; CHECK-LABEL: name: lower-wwm-copies16  ; CHECK: bb.0:17  ; CHECK-NEXT:   successors: %bb.1(0x80000000)18  ; CHECK-NEXT:   liveins: $vgpr0, $scc19  ; CHECK-NEXT: {{  $}}20  ; CHECK-NEXT:   $sgpr0 = IMPLICIT_DEF21  ; CHECK-NEXT:   S_CMP_EQ_U32 $sgpr0, 0, implicit-def $scc22  ; CHECK-NEXT:   $sgpr2_sgpr3 = S_MOV_B64 killed $exec23  ; CHECK-NEXT:   $exec = S_MOV_B64 -124  ; CHECK-NEXT:   $vgpr1 = COPY $vgpr025  ; CHECK-NEXT:   $exec = S_MOV_B64 killed $sgpr2_sgpr326  ; CHECK-NEXT:   S_CBRANCH_SCC1 %bb.1, implicit $scc27  ; CHECK-NEXT: {{  $}}28  ; CHECK-NEXT: bb.1:29  ; CHECK-NEXT:   liveins: $vgpr130  ; CHECK-NEXT: {{  $}}31  ; CHECK-NEXT:   $sgpr2_sgpr3 = S_OR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec32  ; CHECK-NEXT:   $vgpr2 = COPY $vgpr133  ; CHECK-NEXT:   $exec = S_MOV_B64 killed $sgpr2_sgpr334  bb.0:35    liveins: $vgpr0, $scc36    $sgpr0 = IMPLICIT_DEF37    S_CMP_EQ_U32 $sgpr0, 0, implicit-def $scc38    $vgpr1 = WWM_COPY $vgpr039    S_CBRANCH_SCC1 %bb.1, implicit killed $scc40 41  bb.1:42    liveins: $vgpr143    $vgpr2 = WWM_COPY $vgpr144