| ; RUN: llc -march=amdgcn -verify-machineinstrs < %s | FileCheck -check-prefix=GCN %s | |
| ; RUN: llc -march=amdgcn -mcpu=tonga -verify-machineinstrs < %s | FileCheck -check-prefix=GCN %s | |
| declare void @llvm.amdgcn.s.sleep(i32) #0 | |
| ; GCN-LABEL: {{^}}test_s_sleep: | |
| ; GCN: s_sleep 0{{$}} | |
| ; GCN: s_sleep 1{{$}} | |
| ; GCN: s_sleep 2{{$}} | |
| ; GCN: s_sleep 3{{$}} | |
| ; GCN: s_sleep 4{{$}} | |
| ; GCN: s_sleep 5{{$}} | |
| ; GCN: s_sleep 6{{$}} | |
| ; GCN: s_sleep 7{{$}} | |
| ; GCN: s_sleep 8{{$}} | |
| ; GCN: s_sleep 9{{$}} | |
| ; GCN: s_sleep 10{{$}} | |
| ; GCN: s_sleep 11{{$}} | |
| ; GCN: s_sleep 12{{$}} | |
| ; GCN: s_sleep 13{{$}} | |
| ; GCN: s_sleep 14{{$}} | |
| ; GCN: s_sleep 15{{$}} | |
| define amdgpu_kernel void @test_s_sleep(i32 %x) #0 { | |
| call void @llvm.amdgcn.s.sleep(i32 0) | |
| call void @llvm.amdgcn.s.sleep(i32 1) | |
| call void @llvm.amdgcn.s.sleep(i32 2) | |
| call void @llvm.amdgcn.s.sleep(i32 3) | |
| call void @llvm.amdgcn.s.sleep(i32 4) | |
| call void @llvm.amdgcn.s.sleep(i32 5) | |
| call void @llvm.amdgcn.s.sleep(i32 6) | |
| call void @llvm.amdgcn.s.sleep(i32 7) | |
| ; Values that might only work on VI | |
| call void @llvm.amdgcn.s.sleep(i32 8) | |
| call void @llvm.amdgcn.s.sleep(i32 9) | |
| call void @llvm.amdgcn.s.sleep(i32 10) | |
| call void @llvm.amdgcn.s.sleep(i32 11) | |
| call void @llvm.amdgcn.s.sleep(i32 12) | |
| call void @llvm.amdgcn.s.sleep(i32 13) | |
| call void @llvm.amdgcn.s.sleep(i32 14) | |
| call void @llvm.amdgcn.s.sleep(i32 15) | |
| ret void | |
| } | |
| attributes #0 = { nounwind } |