[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / CodeGen / AMDGPU / llvm.amdgcn.queue.ptr.ll
blob6866d9537b3e55018df4c1edb49a491b9efdc00d
1 ; RUN: llc -mtriple=amdgcn--amdhsa -mcpu=kaveri -mattr=-code-object-v3 -verify-machineinstrs < %s | FileCheck -check-prefix=GCN %s
2 ; RUN: not llc -mtriple=amdgcn-unknown-unknown -mcpu=kaveri -verify-machineinstrs < %s 2>&1 | FileCheck -check-prefix=ERROR %s
4 ; ERROR: in function test{{.*}}: unsupported hsa intrinsic without hsa target
6 ; GCN-LABEL: {{^}}test:
7 ; GCN: enable_sgpr_queue_ptr = 1
8 ; GCN: s_load_dword s{{[0-9]+}}, s[4:5], 0x0
9 define amdgpu_kernel void @test(i32 addrspace(1)* %out) {
10   %queue_ptr = call noalias i8 addrspace(4)* @llvm.amdgcn.queue.ptr() #0
11   %header_ptr = bitcast i8 addrspace(4)* %queue_ptr to i32 addrspace(4)*
12   %value = load i32, i32 addrspace(4)* %header_ptr
13   store i32 %value, i32 addrspace(1)* %out
14   ret void
17 declare noalias i8 addrspace(4)* @llvm.amdgcn.queue.ptr() #0
19 attributes #0 = { nounwind readnone }