// RUN: llvm-mc -triple aarch64-windows-msvc -filetype obj -o %t.obj %s // RUN: llvm-readobj --sections --sd --relocs %t.obj | FileCheck %s .section nc_sect,"xr" normal_call: str x30, [sp, #-16]! // 8-byte Folded Spill adrp x8, __imp_a ldr x8, [x8, :lo12:__imp_a] .Limpcall0: blr x8 ldr x30, [sp], #16 // 8-byte Folded Reload ret .section tc_sect,"xr" tail_call: adrp x8, __imp_b ldr x8, [x8, :lo12:__imp_b] .Limpcall1: br x8 .section .impcall,"yi" .asciz "Imp_Call_V1" .word 20 .secnum nc_sect .word 19 .secoffset .Limpcall0 .symidx __imp_a .word 20 .secnum tc_sect .word 19 .secoffset .Limpcall1 .symidx __imp_b // CHECK-LABEL: Name: .impcall (2E 69 6D 70 63 61 6C 6C) // CHECK-NEXT: VirtualSize: 0x0 // CHECK-NEXT: VirtualAddress: 0x0 // CHECK-NEXT: RawDataSize: 52 // CHECK-NEXT: PointerToRawData: 0x150 // CHECK-NEXT: PointerToRelocations: 0x0 // CHECK-NEXT: PointerToLineNumbers: 0x0 // CHECK-NEXT: RelocationCount: 0 // CHECK-NEXT: LineNumberCount: 0 // CHECK-NEXT: Characteristics [ // CHECK-NEXT: IMAGE_SCN_ALIGN_4BYTES // CHECK-NEXT: IMAGE_SCN_LNK_INFO // CHECK-NEXT: ] // CHECK-NEXT: SectionData ( // CHECK-NEXT: 0000: 496D705F 43616C6C 5F563100 14000000 |Imp_Call_V1.....| // CHECK-NEXT: 0010: // CHECK-SAME: [[#%.2X,NCSECT:]]000000 // CHECK-SAME: 13000000 // CHECK-SAME: [[#%.2X,NCOFFSET:]]000000 // CHECK-SAME: [[#%.2X,NCSYM:]]000000 // CHECK-NEXT: 0020: // CHECK-SAME: 14000000 // CHECK-SAME: [[#%.2X,TCSECT:]]000000 // CHECK-SAME: 13000000 // CHECK-SAME: [[#%.2X,TCOFFSET:]]000000 // CHECK-NEXT: 0030: // CHECK-SAME: [[#%.2X,TCSYM:]]000000 // CHECK-NEXT: ) // CHECK-LABEL: Relocations [ // CHECK-NEXT: Section ([[#%u,NCSECT]]) nc_sect { // CHECK-NEXT: 0x[[#%x,NCOFFSET - 8]] IMAGE_REL_ARM64_PAGEBASE_REL21 __imp_a ([[#%u,NCSYM]]) // CHECK-NEXT: 0x[[#%x,NCOFFSET - 4]] IMAGE_REL_ARM64_PAGEOFFSET_12L __imp_a ([[#%u,NCSYM]]) // CHECK-NEXT: } // CHECK-NEXT: Section ([[#%u,TCSECT]]) tc_sect { // CHECK-NEXT: 0x[[#%x,TCOFFSET - 8]] IMAGE_REL_ARM64_PAGEBASE_REL21 __imp_b ([[#%u,TCSYM]]) // CHECK-NEXT: 0x[[#%x,TCOFFSET - 4]] IMAGE_REL_ARM64_PAGEOFFSET_12L __imp_b ([[#%u,TCSYM]]) // CHECK-NEXT: } // CHECK-NEXT: ]