1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc -march=amdgcn -mcpu=gfx900 -run-pass si-insert-skips -amdgpu-skip-threshold=1 -verify-machineinstrs %s -o - | FileCheck %s
3 # Make sure mandatory skips are inserted to ensure GWS ops aren't run with exec = 0
9 ; CHECK-LABEL: name: skip_gws_init
11 ; CHECK: successors: %bb.1(0x40000000), %bb.2(0x40000000)
12 ; CHECK: SI_MASK_BRANCH %bb.2, implicit $exec
13 ; CHECK: S_CBRANCH_EXECZ %bb.2, implicit $exec
15 ; CHECK: successors: %bb.2(0x80000000)
16 ; CHECK: $vgpr0 = V_MOV_B32_e32 0, implicit $exec
17 ; CHECK: DS_GWS_INIT $vgpr0, 0, 1, implicit $m0, implicit $exec
21 successors: %bb.1, %bb.2
22 SI_MASK_BRANCH %bb.2, implicit $exec
26 $vgpr0 = V_MOV_B32_e32 0, implicit $exec
27 DS_GWS_INIT $vgpr0, 0, 1, implicit $m0, implicit $exec
35 name: skip_gws_barrier
37 ; CHECK-LABEL: name: skip_gws_barrier
39 ; CHECK: successors: %bb.1(0x40000000), %bb.2(0x40000000)
40 ; CHECK: SI_MASK_BRANCH %bb.2, implicit $exec
41 ; CHECK: S_CBRANCH_EXECZ %bb.2, implicit $exec
43 ; CHECK: successors: %bb.2(0x80000000)
44 ; CHECK: $vgpr0 = V_MOV_B32_e32 0, implicit $exec
45 ; CHECK: DS_GWS_BARRIER $vgpr0, 0, 1, implicit $m0, implicit $exec
49 successors: %bb.1, %bb.2
50 SI_MASK_BRANCH %bb.2, implicit $exec
54 $vgpr0 = V_MOV_B32_e32 0, implicit $exec
55 DS_GWS_BARRIER $vgpr0, 0, 1, implicit $m0, implicit $exec