1; RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=tahiti -verify-machineinstrs < %s | FileCheck -enable-var-scope -check-prefix=GCN %s
2; RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=gfx1030 -verify-machineinstrs < %s | FileCheck -enable-var-scope -check-prefix=GFX10 %s
3; RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=gfx1100 -verify-machineinstrs < %s | FileCheck -enable-var-scope -check-prefix=GFX11 %s
4
5; SPI_TMPRING_SIZE.WAVESIZE = 5
6; GFX10: .long 165608
7; GFX10-NEXT: .long 20480
8
9; SPI_TMPRING_SIZE.WAVESIZE = 17
10; GFX11: .long 165608
11; GFX11-NEXT: .long 69632
12
13; GCN-LABEL: {{^}}scratch_ps:
14; GCN: s_load_dwordx2 s[4:5], s[0:1], 0x0{{$}}
15; GCN-DAG: s_mov_b32 s6, -1{{$}}
16; GCN-DAG: s_mov_b32 s7, 0xe8f000
17; GCN-DAG: v_mov_b32_e32 [[V:v[0-9]+]], 2
18; GCN: buffer_store_dword [[V]], v0, s[4:7], 0 offen
19define amdgpu_ps void @scratch_ps(i32 addrspace(1)* %out, i32 %in) {
20entry:
21  %alloca = alloca [32 x i32], addrspace(5)
22  %ptr = getelementptr [32 x i32], [32 x i32] addrspace(5)* %alloca, i32 0, i32 %in
23  store volatile i32 2, i32 addrspace(5)* %ptr
24  ret void
25}
26