diff options
| -rw-r--r-- | llvm/test/CodeGen/NVPTX/simple-call.ll | 26 | 
1 files changed, 26 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/NVPTX/simple-call.ll b/llvm/test/CodeGen/NVPTX/simple-call.ll new file mode 100644 index 00000000000..ab6f423cd80 --- /dev/null +++ b/llvm/test/CodeGen/NVPTX/simple-call.ll @@ -0,0 +1,26 @@ +; RUN: llc < %s -march=nvptx -mcpu=sm_20 | FileCheck %s +; RUN: llc < %s -march=nvptx64 -mcpu=sm_20 | FileCheck %s + + + +; CHECK: .func ({{.*}}) device_func +define float @device_func(float %a) noinline { +  %ret = fmul float %a, %a +  ret float %ret +} + +; CHECK: .entry kernel_func +define void @kernel_func(float* %a) { +  %val = load float* %a +; CHECK: call.uni (retval0), +; CHECK: device_func, +  %mul = call float @device_func(float %val) +  store float %mul, float* %a +  ret void +} + + + +!nvvm.annotations = !{!1} + +!1 = metadata !{void (float*)* @kernel_func, metadata !"kernel", i32 1}  | 

