126 lines · plain
1; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx700 -filetype=obj -o - < %s | llvm-readelf --notes - | FileCheck --check-prefix=CHECK %s2; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx803 -filetype=obj -o - < %s | llvm-readelf --notes - | FileCheck --check-prefix=CHECK %s3; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -filetype=obj -o - < %s | llvm-readelf --notes - | FileCheck --check-prefix=CHECK %s4 5; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx700 < %s | FileCheck --check-prefix=CHECK %s6; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx803 < %s | FileCheck --check-prefix=CHECK %s7; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 < %s | FileCheck --check-prefix=CHECK %s8 9 10; CHECK: amdhsa.kernels:11; CHECK-NEXT: - .args:12; CHECK-NEXT: - .address_space: global13; CHECK-NEXT: .name: r14; CHECK-NEXT: .offset: 015; CHECK-NEXT: .size: 816; CHECK-NEXT: .value_kind: global_buffer17; CHECK-NEXT: - .address_space: global18; CHECK-NEXT: .name: a19; CHECK-NEXT: .offset: 820; CHECK-NEXT: .size: 821; CHECK-NEXT: .value_kind: global_buffer22; CHECK-NEXT: - .address_space: global23; CHECK-NEXT: .name: b24; CHECK-NEXT: .offset: 1625; CHECK-NEXT: .size: 826; CHECK-NEXT: .value_kind: global_buffer27; CHECK-NEXT: - .address_space: local28; CHECK-NEXT: .name: lds_ptr29; CHECK-NEXT: .offset: 2430; CHECK-NEXT: .pointee_align: 131; CHECK-NEXT: .size: 432; CHECK-NEXT: .value_kind: dynamic_shared_pointer33; CHECK-NEXT: - .offset: 3234; CHECK-NEXT: .size: 435; CHECK-NEXT: .value_kind: hidden_block_count_x36; CHECK-NEXT: - .offset: 3637; CHECK-NEXT: .size: 438; CHECK-NEXT: .value_kind: hidden_block_count_y39; CHECK-NEXT: - .offset: 4040; CHECK-NEXT: .size: 441; CHECK-NEXT: .value_kind: hidden_block_count_z42; CHECK-NEXT: - .offset: 4443; CHECK-NEXT: .size: 244; CHECK-NEXT: .value_kind: hidden_group_size_x45; CHECK-NEXT: - .offset: 4646; CHECK-NEXT: .size: 247; CHECK-NEXT: .value_kind: hidden_group_size_y48; CHECK-NEXT: - .offset: 4849; CHECK-NEXT: .size: 250; CHECK-NEXT: .value_kind: hidden_group_size_z51; CHECK-NEXT: - .offset: 5052; CHECK-NEXT: .size: 253; CHECK-NEXT: .value_kind: hidden_remainder_x54; CHECK-NEXT: - .offset: 5255; CHECK-NEXT: .size: 256; CHECK-NEXT: .value_kind: hidden_remainder_y57; CHECK-NEXT: - .offset: 5458; CHECK-NEXT: .size: 259; CHECK-NEXT: .value_kind: hidden_remainder_z60; CHECK-NEXT: - .offset: 7261; CHECK-NEXT: .size: 862; CHECK-NEXT: .value_kind: hidden_global_offset_x63; CHECK-NEXT: - .offset: 8064; CHECK-NEXT: .size: 865; CHECK-NEXT: .value_kind: hidden_global_offset_y66; CHECK-NEXT: - .offset: 8867; CHECK-NEXT: .size: 868; CHECK-NEXT: .value_kind: hidden_global_offset_z69; CHECK-NEXT: - .offset: 9670; CHECK-NEXT: .size: 271; CHECK-NEXT: .value_kind: hidden_grid_dims72; CHECK-NEXT: - .offset: 10473; CHECK-NEXT: .size: 874; CHECK-NEXT: .value_kind: hidden_printf_buffer75; CHECK-NEXT: - .offset: 11276; CHECK-NEXT: .size: 877; CHECK-NEXT: .value_kind: hidden_hostcall_buffer78; CHECK-NEXT: - .offset: 12079; CHECK-NEXT: .size: 880; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg81; CHECK-NEXT: - .offset: 12882; CHECK-NEXT: .size: 883; CHECK-NEXT: .value_kind: hidden_heap_v184; CHECK-NEXT: - .offset: 13685; CHECK-NEXT: .size: 886; CHECK-NEXT: .value_kind: hidden_default_queue87; CHECK-NEXT: - .offset: 14488; CHECK-NEXT: .size: 889; CHECK-NEXT: .value_kind: hidden_completion_action90; CHECK: - .offset: 15291; CHECK-NEXT: .size: 492; CHECK-NEXT: .value_kind: hidden_dynamic_lds_size93; CHECK: - .offset: 23294; CHECK-NEXT: .size: 895; CHECK-NEXT: .value_kind: hidden_queue_ptr96 97; CHECK: .name: test_v598; CHECK: .symbol: test_v5.kd99 100; CHECK: amdhsa.version:101; CHECK-NEXT: - 1102; CHECK-NEXT: - 2103 104define amdgpu_kernel void @test_v5(105 ptr addrspace(1) %r,106 ptr addrspace(1) %a,107 ptr addrspace(1) %b,108 ptr addrspace(3) %lds_ptr) #0 {109entry:110 %a.val = load half, ptr addrspace(1) %a111 %b.val = load half, ptr addrspace(1) %b112 %r.val = fadd half %a.val, %b.val113 store half %r.val, ptr addrspace(1) %r114 store i32 1234, ptr addrspace(3) %lds_ptr, align 4115 ret void116}117 118!llvm.module.flags = !{!0}119!0 = !{i32 1, !"amdhsa_code_object_version", i32 500}120!llvm.printf.fmts = !{!1, !2}121!1 = !{!"1:1:4:%d\5Cn"}122!2 = !{!"2:1:8:%g\5Cn"}123 124attributes #0 = { optnone noinline }125 126