blob: 3a1f59454493cb961fc9effe2d2affa227ebdf79 [file] [log] [blame]
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --check-attributes --check-globals all --version 5
; RUN: opt < %s -passes=verify -S | FileCheck %s
define i32 @test_align(i32 %a, i32 %b) {
; CHECK-LABEL: define i32 @test_align(
; CHECK-SAME: i32 alignstack(8) [[A:%.*]], i32 alignstack(16) [[B:%.*]]) {
; CHECK-NEXT: ret i32 0
;
ret i32 0
}
define void @test_kernel() {
; CHECK-LABEL: define ptx_kernel void @test_kernel() {
; CHECK-NEXT: ret void
;
ret void
}
define void @test_maxclusterrank() {
; CHECK-LABEL: define void @test_maxclusterrank(
; CHECK-SAME: ) #[[ATTR0:[0-9]+]] {
; CHECK-NEXT: ret void
;
ret void
}
define void @test_cluster_max_blocks() {
; CHECK-LABEL: define void @test_cluster_max_blocks(
; CHECK-SAME: ) #[[ATTR1:[0-9]+]] {
; CHECK-NEXT: ret void
;
ret void
}
define void @test_minctasm() {
; CHECK-LABEL: define void @test_minctasm(
; CHECK-SAME: ) #[[ATTR2:[0-9]+]] {
; CHECK-NEXT: ret void
;
ret void
}
define void @test_maxnreg() {
; CHECK-LABEL: define void @test_maxnreg(
; CHECK-SAME: ) #[[ATTR3:[0-9]+]] {
; CHECK-NEXT: ret void
;
ret void
}
!nvvm.annotations = !{!0, !1, !2, !3, !4, !5, !6}
!0 = !{ptr @test_align, !"align", i32 u0x00000008, !"align", i32 u0x00010008, !"align", i32 u0x00020010}
!1 = !{null, !"align", i32 u0x00000008, !"align", i32 u0x00010008, !"align", i32 u0x00020008}
!2 = !{ptr @test_kernel, !"kernel", i32 1}
!3 = !{ptr @test_maxclusterrank, !"maxclusterrank", i32 2}
!4 = !{ptr @test_cluster_max_blocks, !"cluster_max_blocks", i32 3}
!5 = !{ptr @test_minctasm, !"minctasm", i32 4}
!6 = !{ptr @test_maxnreg, !"maxnreg", i32 5}
;.
; CHECK: attributes #[[ATTR0]] = { "nvvm.maxclusterrank"="2" }
; CHECK: attributes #[[ATTR1]] = { "nvvm.maxclusterrank"="3" }
; CHECK: attributes #[[ATTR2]] = { "nvvm.minctasm"="4" }
; CHECK: attributes #[[ATTR3]] = { "nvvm.maxnreg"="5" }
;.
; CHECK: [[META0:![0-9]+]] = !{ptr @test_align, !"align", i32 8}
;.