[llvm-objcopy] - Get rid of dynrel.elf precompiled binary from inputs.

We do not have to spread using the precompiled binaries in the tests,
when we can use YAML. This patch removes the dynrel.elf binary and adds
a few comments to the test cases.

Differential revision: https://reviews.llvm.org/D63641

llvm-svn: 364052
This commit is contained in:
George Rimar 2019-06-21 14:15:15 +00:00
parent d9d3c91b48
commit fa1c7d9bdf
3 changed files with 64 additions and 20 deletions

View File

@ -1,19 +1,44 @@
# RUN: llvm-objcopy %p/Inputs/dynrel.elf %t
# RUN: llvm-readobj --sections --section-data %t | FileCheck %s
## Check that llvm-objcopy can handle an object
## containing dynamic relocations properly.
#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: )
# RUN: yaml2obj %s > %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

View File

@ -1,5 +1,24 @@
# RUN: llvm-objcopy --prefix-alloc-sections=.prefix %p/Inputs/dynrel.elf %t
# RUN: llvm-readobj --sections %t | FileCheck %s
## Check that llvm-objcopy can correctly add a prefix to
## a dynamic relocation section and its target section.
# RUN: yaml2obj %s > %t1
# RUN: llvm-objcopy --prefix-alloc-sections=.prefix %t1 %t2
# RUN: llvm-readobj --sections %t2 | FileCheck %s
# CHECK: Name: .prefix.rela.plt
# CHECK: Name: .prefix.plt
--- !ELF
FileHeader:
Class: ELFCLASS64
Data: ELFDATA2LSB
Type: ET_EXEC
Machine: EM_X86_64
Sections:
- Name: .rela.plt
Type: SHT_RELA
Flags: [ SHF_ALLOC ]
Link: 0
- Name: .plt
Type: SHT_PROGBITS
Flags: [ SHF_ALLOC, SHF_EXECINSTR ]