1 ; RUN: llc -march=amdgcn -verify-machineinstrs < %s | FileCheck -check-prefix=GCN %s 2 ; RUN: llc -march=amdgcn -mcpu=tonga -verify-machineinstrs < %s | FileCheck -check-prefix=GCN %s 3 4 declare void @llvm.amdgcn.s.sleep(i32) #0 5 6 ; GCN-LABEL: {{^}}test_s_sleep: 7 ; GCN: s_sleep 0{{$}} 8 ; GCN: s_sleep 1{{$}} 9 ; GCN: s_sleep 2{{$}} 10 ; GCN: s_sleep 3{{$}} 11 ; GCN: s_sleep 4{{$}} 12 ; GCN: s_sleep 5{{$}} 13 ; GCN: s_sleep 6{{$}} 14 ; GCN: s_sleep 7{{$}} 15 ; GCN: s_sleep 8{{$}} 16 ; GCN: s_sleep 9{{$}} 17 ; GCN: s_sleep 10{{$}} 18 ; GCN: s_sleep 11{{$}} 19 ; GCN: s_sleep 12{{$}} 20 ; GCN: s_sleep 13{{$}} 21 ; GCN: s_sleep 14{{$}} 22 ; GCN: s_sleep 15{{$}} 23 define void @test_s_sleep(i32 %x) #0 { 24 call void @llvm.amdgcn.s.sleep(i32 0) 25 call void @llvm.amdgcn.s.sleep(i32 1) 26 call void @llvm.amdgcn.s.sleep(i32 2) 27 call void @llvm.amdgcn.s.sleep(i32 3) 28 call void @llvm.amdgcn.s.sleep(i32 4) 29 call void @llvm.amdgcn.s.sleep(i32 5) 30 call void @llvm.amdgcn.s.sleep(i32 6) 31 call void @llvm.amdgcn.s.sleep(i32 7) 32 33 ; Values that might only work on VI 34 call void @llvm.amdgcn.s.sleep(i32 8) 35 call void @llvm.amdgcn.s.sleep(i32 9) 36 call void @llvm.amdgcn.s.sleep(i32 10) 37 call void @llvm.amdgcn.s.sleep(i32 11) 38 call void @llvm.amdgcn.s.sleep(i32 12) 39 call void @llvm.amdgcn.s.sleep(i32 13) 40 call void @llvm.amdgcn.s.sleep(i32 14) 41 call void @llvm.amdgcn.s.sleep(i32 15) 42 ret void 43 } 44 45 attributes #0 = { nounwind } 46