66 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn -mcpu=gfx900 -run-pass si-pre-emit-peephole -verify-machineinstrs %s -o - | FileCheck %s3# Make sure mandatory skips are inserted to ensure GWS ops aren't run with exec = 04 5---6 7name: skip_gws_init8body: |9 ; CHECK-LABEL: name: skip_gws_init10 ; CHECK: bb.0:11 ; CHECK-NEXT: successors: %bb.1(0x40000000), %bb.2(0x40000000)12 ; CHECK-NEXT: {{ $}}13 ; CHECK-NEXT: S_CBRANCH_EXECZ %bb.2, implicit $exec14 ; CHECK-NEXT: {{ $}}15 ; CHECK-NEXT: bb.1:16 ; CHECK-NEXT: successors: %bb.2(0x80000000)17 ; CHECK-NEXT: {{ $}}18 ; CHECK-NEXT: $vgpr0 = V_MOV_B32_e32 0, implicit $exec19 ; CHECK-NEXT: DS_GWS_INIT $vgpr0, 0, implicit $m0, implicit $exec20 ; CHECK-NEXT: {{ $}}21 ; CHECK-NEXT: bb.2:22 ; CHECK-NEXT: S_ENDPGM 023 bb.0:24 successors: %bb.1, %bb.225 S_CBRANCH_EXECZ %bb.2, implicit $exec26 27 bb.1:28 successors: %bb.229 $vgpr0 = V_MOV_B32_e32 0, implicit $exec30 DS_GWS_INIT $vgpr0, 0, implicit $m0, implicit $exec31 32 bb.2:33 S_ENDPGM 034...35 36---37 38name: skip_gws_barrier39body: |40 ; CHECK-LABEL: name: skip_gws_barrier41 ; CHECK: bb.0:42 ; CHECK-NEXT: successors: %bb.1(0x40000000), %bb.2(0x40000000)43 ; CHECK-NEXT: {{ $}}44 ; CHECK-NEXT: S_CBRANCH_EXECZ %bb.2, implicit $exec45 ; CHECK-NEXT: {{ $}}46 ; CHECK-NEXT: bb.1:47 ; CHECK-NEXT: successors: %bb.2(0x80000000)48 ; CHECK-NEXT: {{ $}}49 ; CHECK-NEXT: $vgpr0 = V_MOV_B32_e32 0, implicit $exec50 ; CHECK-NEXT: DS_GWS_BARRIER $vgpr0, 0, implicit $m0, implicit $exec51 ; CHECK-NEXT: {{ $}}52 ; CHECK-NEXT: bb.2:53 ; CHECK-NEXT: S_ENDPGM 054 bb.0:55 successors: %bb.1, %bb.256 S_CBRANCH_EXECZ %bb.2, implicit $exec57 58 bb.1:59 successors: %bb.260 $vgpr0 = V_MOV_B32_e32 0, implicit $exec61 DS_GWS_BARRIER $vgpr0, 0, implicit $m0, implicit $exec62 63 bb.2:64 S_ENDPGM 065...66