1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc -march=amdgcn -mcpu=polaris10 -run-pass si-pre-emit-peephole -amdgpu-skip-threshold=1 -verify-machineinstrs %s -o - | FileCheck %s
8 ; CHECK-LABEL: name: skip_execz_flat
10 ; CHECK-NEXT: successors: %bb.1(0x40000000), %bb.2(0x40000000)
12 ; CHECK-NEXT: S_CBRANCH_EXECZ %bb.2, implicit $exec
15 ; CHECK-NEXT: successors: %bb.2(0x80000000)
17 ; CHECK-NEXT: $vgpr0 = V_MOV_B32_e32 0, implicit $exec
18 ; CHECK-NEXT: FLAT_STORE_DWORD undef $vgpr1_vgpr2, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr
21 ; CHECK-NEXT: S_ENDPGM 0
23 successors: %bb.1, %bb.2
24 S_CBRANCH_EXECZ %bb.2, implicit $exec
28 $vgpr0 = V_MOV_B32_e32 0, implicit $exec
29 FLAT_STORE_DWORD undef $vgpr1_vgpr2, $vgpr0, 0, 0, implicit $exec, implicit $flat_scr
37 name: skip_execz_mubuf
39 ; CHECK-LABEL: name: skip_execz_mubuf
41 ; CHECK-NEXT: successors: %bb.1(0x40000000), %bb.2(0x40000000)
43 ; CHECK-NEXT: S_CBRANCH_EXECZ %bb.2, implicit $exec
46 ; CHECK-NEXT: successors: %bb.2(0x80000000)
48 ; CHECK-NEXT: $vgpr0 = V_MOV_B32_e32 0, implicit $exec
49 ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr0, undef $sgpr0_sgpr1_sgpr2_sgpr3, undef $sgpr4, 0, 0, 0, implicit $exec
52 ; CHECK-NEXT: S_ENDPGM 0
54 successors: %bb.1, %bb.2
55 S_CBRANCH_EXECZ %bb.2, implicit $exec
59 $vgpr0 = V_MOV_B32_e32 0, implicit $exec
60 BUFFER_STORE_DWORD_OFFSET $vgpr0, undef $sgpr0_sgpr1_sgpr2_sgpr3, undef $sgpr4, 0, 0, 0, implicit $exec
70 ; CHECK-LABEL: name: skip_execz_ds
72 ; CHECK-NEXT: successors: %bb.1(0x40000000), %bb.2(0x40000000)
74 ; CHECK-NEXT: S_CBRANCH_EXECZ %bb.2, implicit $exec
77 ; CHECK-NEXT: successors: %bb.2(0x80000000)
79 ; CHECK-NEXT: $vgpr0 = V_MOV_B32_e32 0, implicit $exec
80 ; CHECK-NEXT: DS_WRITE_B32 $vgpr0, $vgpr0, 0, 0, implicit $m0, implicit $exec
83 ; CHECK-NEXT: S_ENDPGM 0
85 successors: %bb.1, %bb.2
86 S_CBRANCH_EXECZ %bb.2, implicit $exec
90 $vgpr0 = V_MOV_B32_e32 0, implicit $exec
91 DS_WRITE_B32 $vgpr0, $vgpr0, 0, 0, implicit $m0, implicit $exec