brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.0 KiB · 3fe3caf Raw
108 lines · plain
1; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx803 < %s | FileCheck --check-prefixes=ALL-ASM,OSABI-AMDHSA-ASM %s2; RUN: llc -filetype=obj -mtriple=amdgcn-amd-amdhsa -mcpu=gfx803 < %s | llvm-readelf -S -r -s --notes - | FileCheck --check-prefix=OSABI-AMDHSA-ELF %s3 4; ALL-ASM-LABEL: {{^}}fadd:5 6; OSABI-AMDHSA-ASM-NOT: .hsa_code_object_version7; OSABI-AMDHSA-ASM-NOT: .hsa_code_object_isa8; OSABI-AMDHSA-ASM-NOT: .amdgpu_hsa_kernel9; OSABI-AMDHSA-ASM-NOT: .amd_kernel_code_t10 11; OSABI-AMDHSA-ASM: s_endpgm12; OSABI-AMDHSA-ASM: .section .rodata,"a"13; OSABI-AMDHSA-ASM: .p2align 614; OSABI-AMDHSA-ASM: .amdhsa_kernel fadd15; OSABI-AMDHSA-ASM:     .amdhsa_user_sgpr_count 1216; OSABI-AMDHSA-ASM:     .amdhsa_user_sgpr_private_segment_buffer 117; OSABI-AMDHSA-ASM:     .amdhsa_user_sgpr_kernarg_segment_ptr 118; OSABI-AMDHSA-ASM:     .amdhsa_next_free_vgpr 319; OSABI-AMDHSA-ASM:     .amdhsa_next_free_sgpr 1020; OSABI-AMDHSA-ASM:     .amdhsa_reserve_vcc 021; OSABI-AMDHSA-ASM:     .amdhsa_reserve_flat_scratch 022; OSABI-AMDHSA-ASM: .end_amdhsa_kernel23; OSABI-AMDHSA-ASM: .text24 25; ALL-ASM-LABEL: {{^}}fsub:26 27; OSABI-AMDHSA-ASM-NOT: .amdgpu_hsa_kernel28; OSABI-AMDHSA-ASM-NOT: .amd_kernel_code_t29 30; OSABI-AMDHSA-ASM: s_endpgm31; OSABI-AMDHSA-ASM: .section .rodata,"a"32; OSABI-AMDHSA-ASM: .p2align 633; OSABI-AMDHSA-ASM: .amdhsa_kernel fsub34; OSABI-AMDHSA-ASM:     .amdhsa_user_sgpr_count 1235; OSABI-AMDHSA-ASM:     .amdhsa_user_sgpr_private_segment_buffer 136; OSABI-AMDHSA-ASM:     .amdhsa_user_sgpr_kernarg_segment_ptr 137; OSABI-AMDHSA-ASM:     .amdhsa_next_free_vgpr 338; OSABI-AMDHSA-ASM:     .amdhsa_next_free_sgpr 1039; OSABI-AMDHSA-ASM:     .amdhsa_reserve_vcc 040; OSABI-AMDHSA-ASM:     .amdhsa_reserve_flat_scratch 041; OSABI-AMDHSA-ASM: .end_amdhsa_kernel42; OSABI-AMDHSA-ASM: .text43 44; OSABI-AMDHSA-ASM-NOT: .hsa_code_object_version45; OSABI-AMDHSA-ASM-NOT: .hsa_code_object_isa46; OSABI-AMDHSA-ASM-NOT: .amd_amdgpu_isa47; OSABI-AMDHSA-ASM-NOT: .amd_amdgpu_hsa_metadata48; OSABI-AMDHSA-ASM-NOT: .amd_amdgpu_pal_metadata49 50; OSABI-AMDHSA-ELF: Section Headers51; OSABI-AMDHSA-ELF: .text   PROGBITS {{[0-9]+}} {{[0-9]+}} {{[0-9a-f]+}} {{[0-9]+}} AX {{[0-9]+}} {{[0-9]+}} 25652; OSABI-AMDHSA-ELF: .rodata PROGBITS {{[0-9]+}} {{[0-9]+}} {{[0-9a-f]+}} {{[0-9]+}}  A {{[0-9]+}} {{[0-9]+}} 6453 54; OSABI-AMDHSA-ELF: Relocation section '.rela.rodata' at offset55; OSABI-AMDHSA-ELF: R_AMDGPU_REL64 0000000000000000 fadd + 1056; OSABI-AMDHSA-ELF: R_AMDGPU_REL64 0000000000000100 fsub + 1057; OSABI-AMDHSA-ELF: R_AMDGPU_REL64 0000000000000200 empty + 1058 59; OSABI-AMDHSA-ELF: Symbol table '.symtab' contains {{[0-9]+}} entries60; OSABI-AMDHSA-ELF: {{[0-9]+}}: 0000000000000000 {{[0-9]+}} FUNC   GLOBAL PROTECTED {{[0-9]+}} fadd61; OSABI-AMDHSA-ELF: {{[0-9]+}}: 0000000000000000 64         OBJECT GLOBAL DEFAULT   {{[0-9]+}} fadd.kd62; OSABI-AMDHSA-ELF: {{[0-9]+}}: 0000000000000100 {{[0-9]+}} FUNC   GLOBAL PROTECTED {{[0-9]+}} fsub63; OSABI-AMDHSA-ELF: {{[0-9]+}}: 0000000000000040 64         OBJECT GLOBAL DEFAULT   {{[0-9]+}} fsub.kd64 65; OSABI-AMDHSA-ELF: Displaying notes found in: .note66; OSABI-AMDHSA-ELF: AMDGPU 0x{{[0-9a-f]+}} NT_AMDGPU_METADATA (AMDGPU Metadata)67 68define amdgpu_kernel void @fadd(69    ptr addrspace(1) %r,70    ptr addrspace(1) %a,71    ptr addrspace(1) %b) #0 {72entry:73  %a.val = load float, ptr addrspace(1) %a74  %b.val = load float, ptr addrspace(1) %b75  %r.val = fadd float %a.val, %b.val76  store float %r.val, ptr addrspace(1) %r77  ret void78}79 80define amdgpu_kernel void @fsub(81    ptr addrspace(1) %r,82    ptr addrspace(1) %a,83    ptr addrspace(1) %b) #0 {84entry:85  %a.val = load float, ptr addrspace(1) %a86  %b.val = load float, ptr addrspace(1) %b87  %r.val = fsub float %a.val, %b.val88  store float %r.val, ptr addrspace(1) %r89  ret void90}91 92; Make sure kernel arguments do not count towards the number of93; registers used.94;95; ALL-ASM-LABEL: {{^}}empty:96; ALL-ASM:     .amdhsa_next_free_vgpr 197; ALL-ASM:     .amdhsa_next_free_sgpr 198define amdgpu_kernel void @empty(99    i32 %i,100    ptr addrspace(1) %r,101    ptr addrspace(1) %a,102    ptr addrspace(1) %b) #0 {103entry:104  ret void105}106 107attributes #0 = { "amdgpu-no-flat-scratch-init" }108