## Check that llvm-objcopy can handle an object ## containing dynamic relocations properly. # RUN: yaml2obj %s -o %t1 # RUN: llvm-objcopy %t1 %t2 # RUN: llvm-readobj --sections --section-data %t2 | FileCheck %s # CHECK: Name: .rela.plt # CHECK-NEXT: Type: SHT_RELA # CHECK-NEXT: Flags [ # CHECK-NEXT: SHF_ALLOC # CHECK-NEXT: ] # CHECK-NEXT: Address: # CHECK-NEXT: Offset: # CHECK-NEXT: Size: 24 # CHECK-NEXT: Link: # CHECK-NEXT: Info: # CHECK-NEXT: AddressAlignment: 8 # CHECK-NEXT: EntrySize: 24 # CHECK-NEXT: SectionData ( # CHECK-NEXT: 0000: 18202000 00000000 07000000 01000000 |. .............| # CHECK-NEXT: 0010: 00000000 00000000 |........| # CHECK-NEXT: ) --- !ELF FileHeader: Class: ELFCLASS64 Data: ELFDATA2LSB Type: ET_EXEC Machine: EM_X86_64 Sections: - Name: .rela.plt Type: SHT_RELA Flags: [ SHF_ALLOC ] Address: 0x0000000000200220 Link: 0 AddressAlign: 0x0000000000000008 Relocations: - Offset: 0x0000000000202018 Symbol: foo Type: R_X86_64_JUMP_SLOT Symbols: - Name: foo Binding: STB_GLOBAL