xref: /llvm-project/llvm/test/CodeGen/NVPTX/nvcl-param-align.ll (revision 4583f6d3443c8dc6605c868724e3743161954210)
1; RUN: llc < %s -mtriple=nvptx64-nvidia-nvcl -mcpu=sm_60 | FileCheck %s
2; RUN: %if ptxas %{ llc < %s -mtriple=nvptx64-nvidia-nvcl -mcpu=sm_60 | %ptxas-verify %}
3
4target triple = "nvptx-unknown-nvcl"
5
6define ptx_kernel void @foo(i64 %img, i64 %sampler, ptr align 32 %v1, ptr %v2) {
7; The parameter alignment is determined by the align attribute (default 1).
8; CHECK-LABEL: .entry foo(
9; CHECK: .param .u64 .ptr .align 32 foo_param_2
10; CHECK: .param .u64 .ptr .align 1 foo_param_3
11  ret void
12}
13
14!nvvm.annotations = !{!2, !3}
15!2 = !{ptr @foo, !"rdoimage", i32 0}
16!3 = !{ptr @foo, !"sampler", i32 1}
17