• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; RUN: llc < %s -march=nvptx -mcpu=sm_10 | FileCheck %s
2; RUN: llc < %s -march=nvptx64 -mcpu=sm_10 | FileCheck %s
3; RUN: llc < %s -march=nvptx -mcpu=sm_20 | FileCheck %s
4; RUN: llc < %s -march=nvptx64 -mcpu=sm_20 | FileCheck %s
5
6
7;; Kernel function using ptx_kernel calling conv
8
9; CHECK: .entry kernel_func
10define ptx_kernel void @kernel_func(float* %a) {
11; CHECK: ret
12  ret void
13}
14
15;; Device function
16; CHECK: .func device_func
17define void @device_func(float* %a) {
18; CHECK: ret
19  ret void
20}
21
22;; Kernel function using NVVM metadata
23; CHECK: .entry metadata_kernel
24define void @metadata_kernel(float* %a) {
25; CHECK: ret
26  ret void
27}
28
29
30!nvvm.annotations = !{!1}
31
32!1 = metadata !{void (float*)* @metadata_kernel, metadata !"kernel", i32 1}
33