28 lines · plain
1; RUN: llc -global-isel=0 -mtriple=amdgcn -mcpu=gfx1250 < %s | FileCheck --check-prefix=GCN %s2; RUN: llc -global-isel=1 -mtriple=amdgcn -mcpu=gfx1250 < %s | FileCheck --check-prefix=GCN %s3 4declare i64 @llvm.amdgcn.ds.atomic.barrier.arrive.rtn.b64(ptr addrspace(3), i64)5 6; GCN-LABEL: {{^}}test_ds_atomic_barrier_arrive_rtn_b64:7; GCN: ds_atomic_barrier_arrive_rtn_b64 v[{{[0-9:]+}}], v2, v[0:1]{{$}}8; GCN: s_wait_dscnt 0x09; GCN: flat_store_b6410define void @test_ds_atomic_barrier_arrive_rtn_b64(i64 %data, ptr addrspace(3) %bar, ptr %out) {11entry:12 %ret = call i64 @llvm.amdgcn.ds.atomic.barrier.arrive.rtn.b64(ptr addrspace(3) %bar, i64 %data)13 store i64 %ret, ptr %out14 ret void15}16 17; GCN-LABEL: {{^}}test_ds_atomic_barrier_arrive_rtn_b64_off:18; GCN: ds_atomic_barrier_arrive_rtn_b64 v[{{[0-9:]+}}], v0, v[{{[0-9:]+}}] offset:8184{{$}}19; GCN: s_wait_dscnt 0x020; GCN: flat_store_b6421define void @test_ds_atomic_barrier_arrive_rtn_b64_off(ptr addrspace(3) %in, ptr %out) {22entry:23 %bar = getelementptr i64, ptr addrspace(3) %in, i32 102324 %ret = call i64 @llvm.amdgcn.ds.atomic.barrier.arrive.rtn.b64(ptr addrspace(3) %bar, i64 512)25 store i64 %ret, ptr %out26 ret void27}28