1# RUN: llvm-mc -filetype=obj -triple amdgcn--amdhsa -mcpu=kaveri %s -o %t.o 2# RUN: ld.lld %t.o -o %t 3# RUN: llvm-readobj -sections -symbols -program-headers %t | FileCheck %s 4 5# REQUIRES: amdgpu 6 7.hsa_code_object_version 1,0 8.hsa_code_object_isa 7,0,0,"AMD","AMDGPU" 9 10.hsatext 11.globl kernel0 12.align 256 13.amdgpu_hsa_kernel kernel0 14kernel0: 15 s_endpgm 16.Lfunc_end0: 17 .size kernel0, .Lfunc_end0-kernel0 18 19.globl kernel1 20.align 256 21.amdgpu_hsa_kernel kernel1 22kernel1: 23 s_endpgm 24 s_endpgm 25.Lfunc_end1: 26 .size kernel1, .Lfunc_end1-kernel1 27 28 29# CHECK: Section { 30# CHECK: Name: .hsatext 31# CHECK: Type: SHT_PROGBITS 32# CHECK: Flags [ (0xC00007) 33# CHECK: SHF_ALLOC (0x2) 34# CHECK: SHF_AMDGPU_HSA_AGENT (0x800000) 35# CHECK: SHF_AMDGPU_HSA_CODE (0x400000) 36# CHECK: SHF_EXECINSTR (0x4) 37# CHECK: SHF_WRITE (0x1) 38# CHECK: ] 39# CHECK: Address: [[HSATEXT_ADDR:[0-9xa-f]+]] 40# CHECK: } 41 42# CHECK: Symbol { 43# CHECK: Name: kernel0 44# CHECK: Value: 45# CHECK: Size: 4 46# CHECK: Binding: Global 47# CHECK: Type: AMDGPU_HSA_KERNEL 48# CHECK: Section: .hsatext 49# CHECK: } 50 51# CHECK: Symbol { 52# CHECK: Name: kernel1 53# CHECK: Value: 54# CHECK: Size: 8 55# CHECK: Binding: Global 56# CHECK: Type: AMDGPU_HSA_KERNEL 57# CHECK: Section: .hsatext 58# CHECK: } 59 60# CHECK: ProgramHeader { 61# CHECK: Type: PT_LOAD 62# CHECK: VirtualAddress: 63# CHECK: } 64