brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.3 KiB · f45f484 Raw
91 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 52# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 -mattr=+wavefrontsize64 -run-pass=si-pre-emit-peephole %s -o - | FileCheck %s3# Do no remove S_CBRANCH_EXECZ if the following block contains an unconditional4# branch to a block other than the one immediately following it.5 6---7name:            test8body:             |9  ; CHECK-LABEL: name: test10  ; CHECK: bb.0:11  ; CHECK-NEXT:   successors: %bb.5(0x40000000), %bb.1(0x40000000)12  ; CHECK-NEXT:   liveins: $vgpr0, $vgpr113  ; CHECK-NEXT: {{  $}}14  ; CHECK-NEXT:   $sgpr0_sgpr1 = S_MOV_B64 $exec15  ; CHECK-NEXT:   V_CMPX_EQ_U32_nosdst_e32 0, killed $vgpr0, implicit-def $exec, implicit $exec16  ; CHECK-NEXT:   S_CBRANCH_EXECZ %bb.5, implicit $exec17  ; CHECK-NEXT: {{  $}}18  ; CHECK-NEXT: bb.1:19  ; CHECK-NEXT:   successors: %bb.2(0x80000000)20  ; CHECK-NEXT:   liveins: $vgpr1, $sgpr0_sgpr121  ; CHECK-NEXT: {{  $}}22  ; CHECK-NEXT:   renamable $sgpr2_sgpr3 = IMPLICIT_DEF23  ; CHECK-NEXT:   renamable $sgpr4_sgpr5 = IMPLICIT_DEF24  ; CHECK-NEXT:   S_BRANCH %bb.225  ; CHECK-NEXT: {{  $}}26  ; CHECK-NEXT: bb.2:27  ; CHECK-NEXT:   successors: %bb.4(0x40000000), %bb.3(0x40000000)28  ; CHECK-NEXT:   liveins: $vgpr1, $sgpr0_sgpr1, $sgpr2_sgpr3, $sgpr4_sgpr529  ; CHECK-NEXT: {{  $}}30  ; CHECK-NEXT:   $exec = S_OR_B64 $exec, killed renamable $sgpr4_sgpr5, implicit-def $scc31  ; CHECK-NEXT:   S_CBRANCH_EXECZ %bb.4, implicit $exec32  ; CHECK-NEXT: {{  $}}33  ; CHECK-NEXT: bb.3:34  ; CHECK-NEXT:   successors: %bb.1(0x80000000)35  ; CHECK-NEXT:   liveins: $vgpr1, $sgpr0_sgpr1, $sgpr2_sgpr336  ; CHECK-NEXT: {{  $}}37  ; CHECK-NEXT:   renamable $sgpr4_sgpr5 = IMPLICIT_DEF38  ; CHECK-NEXT:   S_BRANCH %bb.139  ; CHECK-NEXT: {{  $}}40  ; CHECK-NEXT: bb.4:41  ; CHECK-NEXT:   successors: %bb.5(0x80000000)42  ; CHECK-NEXT:   liveins: $vgpr1, $sgpr0_sgpr1, $sgpr2_sgpr343  ; CHECK-NEXT: {{  $}}44  ; CHECK-NEXT:   $exec = S_OR_B64 $exec, killed renamable $sgpr2_sgpr3, implicit-def $scc45  ; CHECK-NEXT: {{  $}}46  ; CHECK-NEXT: bb.5:47  ; CHECK-NEXT:   liveins: $vgpr1, $sgpr0_sgpr148  ; CHECK-NEXT: {{  $}}49  ; CHECK-NEXT:   $exec = S_OR_B64 $exec, killed renamable $sgpr0_sgpr1, implicit-def $scc50  ; CHECK-NEXT:   renamable $vgpr0 = V_CVT_F32_U32_e32 killed $vgpr1, implicit $mode, implicit $exec51  ; CHECK-NEXT:   SI_RETURN_TO_EPILOG killed $vgpr052  bb.0:53    liveins: $vgpr0, $vgpr154 55    $sgpr0_sgpr1 = S_MOV_B64 $exec56    V_CMPX_EQ_U32_nosdst_e32 0, killed $vgpr0, implicit-def $exec, implicit $exec57    S_CBRANCH_EXECZ %bb.5, implicit $exec58 59  bb.1:60    liveins: $vgpr1, $sgpr0_sgpr161 62    renamable $sgpr2_sgpr3 = IMPLICIT_DEF63    renamable $sgpr4_sgpr5 = IMPLICIT_DEF64    S_BRANCH %bb.265 66  bb.2:67    liveins: $vgpr1, $sgpr0_sgpr1, $sgpr2_sgpr3, $sgpr4_sgpr568 69    $exec = S_OR_B64 $exec, killed renamable $sgpr4_sgpr5, implicit-def $scc70    S_CBRANCH_EXECZ %bb.4, implicit $exec71 72  bb.3:73    liveins: $vgpr1, $sgpr0_sgpr1, $sgpr2_sgpr374 75    renamable $sgpr4_sgpr5 = IMPLICIT_DEF76    S_BRANCH %bb.177 78  bb.4:79    liveins: $vgpr1, $sgpr0_sgpr1, $sgpr2_sgpr380 81    $exec = S_OR_B64 $exec, killed renamable $sgpr2_sgpr3, implicit-def $scc82 83  bb.5:84    liveins: $vgpr1, $sgpr0_sgpr185 86    $exec = S_OR_B64 $exec, killed renamable $sgpr0_sgpr1, implicit-def $scc87    renamable $vgpr0 = V_CVT_F32_U32_e32 killed $vgpr1, implicit $mode, implicit $exec88    SI_RETURN_TO_EPILOG killed $vgpr089 90...91