| ## 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 |