1 ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx906 --amdhsa-code-object-version=5 < %s | FileCheck --check-prefixes=CHECK %s
4 ; CHECK-LABEL: test_unaligned_to_eight:
5 ; CHECK: .amdhsa_kernarg_size 264
6 define amdgpu_kernel void @test_unaligned_to_eight(i32 %four) {
7 %implicitarg.ptr = call i8 addrspace(4)* @llvm.amdgcn.implicitarg.ptr()
8 store volatile i8 addrspace(4)* %implicitarg.ptr, i8 addrspace(4)* addrspace(1)* undef
13 ; CHECK-LABEL: test_aligned_to_eight:
14 ; CHECK: .amdhsa_kernarg_size 264
15 define amdgpu_kernel void @test_aligned_to_eight(i64 %eight) {
16 %implicitarg.ptr = call i8 addrspace(4)* @llvm.amdgcn.implicitarg.ptr()
17 store volatile i8 addrspace(4)* %implicitarg.ptr, i8 addrspace(4)* addrspace(1)* undef
21 ; CHECK-LABEL: amdhsa.kernels:
23 ; CHECK-NEXT: - .name: four
24 ; CHECK-NEXT: .offset: 0
25 ; CHECK-NEXT: .size: 4
26 ; CHECK-NEXT: .value_kind: by_value
27 ; CHECK-NEXT: - .offset: 8
28 ; CHECK-NEXT: .size: 4
29 ; CHECK-NEXT: .value_kind: hidden_block_count_x
30 ; CHECK-NEXT: - .offset: 12
31 ; CHECK-NEXT: .size: 4
32 ; CHECK-NEXT: .value_kind: hidden_block_count_y
33 ; CHECK-NEXT: - .offset: 16
34 ; CHECK-NEXT: .size: 4
35 ; CHECK-NEXT: .value_kind: hidden_block_count_z
36 ; CHECK: .kernarg_segment_align: 8
37 ; CHECK-NEXT: .kernarg_segment_size: 264
38 ; CHECK-LABEL: .name: test_unaligned_to_eight
41 ; CHECK-NEXT: - .name: eight
42 ; CHECK-NEXT: .offset: 0
43 ; CHECK-NEXT: .size: 8
44 ; CHECK-NEXT: .value_kind: by_value
45 ; CHECK-NEXT: - .offset: 8
46 ; CHECK-NEXT: .size: 4
47 ; CHECK-NEXT: .value_kind: hidden_block_count_x
48 ; CHECK-NEXT: - .offset: 12
49 ; CHECK-NEXT: .size: 4
50 ; CHECK-NEXT: .value_kind: hidden_block_count_y
51 ; CHECK-NEXT: - .offset: 16
52 ; CHECK-NEXT: .size: 4
53 ; CHECK-NEXT: .value_kind: hidden_block_count_z
54 ; CHECK: .kernarg_segment_align: 8
55 ; CHECK-NEXT: .kernarg_segment_size: 264
56 ; CHECK-LABEL: .name: test_aligned_to_eight
58 declare i8 addrspace(4)* @llvm.amdgcn.implicitarg.ptr()