; RUN: llc -mtriple=amdgcn-amd-amdhsa -filetype=obj -o - < %s | llvm-readelf --notes - | FileCheck %s ; CHECK: - .args: ; CHECK-NEXT: - .access: read_only ; CHECK-NEXT: .address_space: global ; CHECK-NEXT: .is_const: true ; CHECK-NEXT: .is_restrict: true ; CHECK-NEXT: .name: in ; CHECK-NEXT: .offset: 0 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: 'float*' ; CHECK-NEXT: .value_kind: global_buffer ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: out ; CHECK-NEXT: .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: 'float*' ; CHECK-NEXT: .value_kind: global_buffer ; CHECK: .name: test_ro_arg ; CHECK: .symbol: test_ro_arg.kd define amdgpu_kernel void @test_ro_arg(float addrspace(1)* noalias readonly %in, float addrspace(1)* %out) !kernel_arg_addr_space !0 !kernel_arg_access_qual !1 !kernel_arg_type !2 !kernel_arg_base_type !2 !kernel_arg_type_qual !3 { ret void } !0 = !{i32 1, i32 1} !1 = !{!"none", !"none"} !2 = !{!"float*", !"float*"} !3 = !{!"const restrict", !""}