1; RUN: llc < %s -march=nvptx -mcpu=sm_20 | FileCheck %s 2; RUN: llc < %s -march=nvptx64 -mcpu=sm_20 | FileCheck %s 3 4@texture = internal addrspace(1) global i64 0, align 8 5; CHECK: .global .texref texture 6@surface = internal addrspace(1) global i64 0, align 8 7; CHECK: .global .surfref surface 8 9; CHECK: .entry kernel_func_maxntid 10define void @kernel_func_maxntid(float* %a) { 11; CHECK: .maxntid 10, 20, 30 12; CHECK: ret 13 ret void 14} 15 16; CHECK: .entry kernel_func_reqntid 17define void @kernel_func_reqntid(float* %a) { 18; CHECK: .reqntid 11, 22, 33 19; CHECK: ret 20 ret void 21} 22 23; CHECK: .entry kernel_func_minctasm 24define void @kernel_func_minctasm(float* %a) { 25; CHECK: .minnctapersm 42 26; CHECK: ret 27 ret void 28} 29 30; CHECK-LABEL: .entry kernel_func_maxnreg 31define void @kernel_func_maxnreg() { 32; CHECK: .maxnreg 1234 33; CHECK: ret 34 ret void 35} 36 37!nvvm.annotations = !{!1, !2, !3, !4, !5, !6, !7, !8, !9, !10} 38 39!1 = !{void (float*)* @kernel_func_maxntid, !"kernel", i32 1} 40!2 = !{void (float*)* @kernel_func_maxntid, !"maxntidx", i32 10, !"maxntidy", i32 20, !"maxntidz", i32 30} 41 42!3 = !{void (float*)* @kernel_func_reqntid, !"kernel", i32 1} 43!4 = !{void (float*)* @kernel_func_reqntid, !"reqntidx", i32 11, !"reqntidy", i32 22, !"reqntidz", i32 33} 44 45!5 = !{void (float*)* @kernel_func_minctasm, !"kernel", i32 1} 46!6 = !{void (float*)* @kernel_func_minctasm, !"minctasm", i32 42} 47 48!7 = !{void ()* @kernel_func_maxnreg, !"kernel", i32 1} 49!8 = !{void ()* @kernel_func_maxnreg, !"maxnreg", i32 1234} 50 51!9 = !{i64 addrspace(1)* @texture, !"texture", i32 1} 52!10 = !{i64 addrspace(1)* @surface, !"surface", i32 1} 53