xref: /llvm-project/llvm/test/CodeGen/NVPTX/anonymous-fn-param.ll (revision b279f6b098d3849f7f1c1f539b108307d5f8ae2d)
1*b279f6b0SFangrui Song; RUN: llc < %s -mtriple=nvptx64 -mcpu=sm_20 | FileCheck %s
2*b279f6b0SFangrui Song; RUN: %if ptxas %{ llc < %s -mtriple=nvptx64 -mcpu=sm_20 | %ptxas-verify %}
3507c67d0SPavel Kopyl
4507c67d0SPavel Kopyl; Check that parameter names we generate in the function signature and the name
5507c67d0SPavel Kopyl; we use when we refer to the parameter in the function body do match.
6507c67d0SPavel Kopyl
7507c67d0SPavel Kopyl; CHECK:      .func (.param .b32 func_retval0) __unnamed_1(
8507c67d0SPavel Kopyl; CHECK-NEXT: .param .b32 __unnamed_1_param_0
9507c67d0SPavel Kopyl; CHECK:      ld.param.u32 {{%r[0-9]+}}, [__unnamed_1_param_0];
10507c67d0SPavel Kopyl
11507c67d0SPavel Kopyldefine internal i32 @0(i32 %a) {
12507c67d0SPavel Kopylentry:
13507c67d0SPavel Kopyl  %r = add i32 %a, 1
14507c67d0SPavel Kopyl  ret i32 %r
15507c67d0SPavel Kopyl}
16507c67d0SPavel Kopyl
17507c67d0SPavel Kopyl; CHECK:      .func (.param .b32 func_retval0) __unnamed_2(
18507c67d0SPavel Kopyl; CHECK-NEXT: .param .b32 __unnamed_2_param_0
19507c67d0SPavel Kopyl; CHECK:      ld.param.u32 {{%r[0-9]+}}, [__unnamed_2_param_0];
20507c67d0SPavel Kopyl
21507c67d0SPavel Kopyldefine internal i32 @1(i32 %a) {
22507c67d0SPavel Kopylentry:
23507c67d0SPavel Kopyl  %r = add i32 %a, 1
24507c67d0SPavel Kopyl  ret i32 %r
25507c67d0SPavel Kopyl}
26