xref: /llvm-project/llvm/test/CodeGen/NVPTX/nanosleep.ll (revision b279f6b098d3849f7f1c1f539b108307d5f8ae2d)
1*b279f6b0SFangrui Song; RUN: llc < %s -mtriple=nvptx64 -O2 -mcpu=sm_70 -mattr=+ptx63 | FileCheck %s
2*b279f6b0SFangrui Song; RUN: %if ptxas %{ llc < %s -mtriple=nvptx64 -mcpu=sm_70 -mattr=+ptx63 | %ptxas-verify -arch=sm_70 %}
35f12cc91SJoseph Huber
45f12cc91SJoseph Huberdeclare void @llvm.nvvm.nanosleep(i32)
55f12cc91SJoseph Huber
65f12cc91SJoseph Huber; CHECK-LABEL: test_nanosleep_r
75f12cc91SJoseph Huberdefine void @test_nanosleep_r(i32 noundef %d) {
85f12cc91SJoseph Huberentry:
95f12cc91SJoseph Huber; CHECK: nanosleep.u32   %[[REG:.+]];
105f12cc91SJoseph Huber  call void @llvm.nvvm.nanosleep(i32 %d)
115f12cc91SJoseph Huber  ret void
125f12cc91SJoseph Huber}
135f12cc91SJoseph Huber
145f12cc91SJoseph Huber; CHECK-LABEL: test_nanosleep_i
155f12cc91SJoseph Huberdefine void @test_nanosleep_i() {
165f12cc91SJoseph Huberentry:
175f12cc91SJoseph Huber; CHECK: nanosleep.u32   42;
185f12cc91SJoseph Huber  call void @llvm.nvvm.nanosleep(i32 42)
195f12cc91SJoseph Huber  ret void
205f12cc91SJoseph Huber}
21