llvm-mirror/test/Object/AArch64/yaml2obj-elf-aarch64-rel.yaml
Chris Bieneman 1f183c5130 [yaml2obj] Remove --format option in favor of YAML tags
Summary:
Our YAML library's handling of tags isn't perfect, but it is good enough to get rid of the need for the --format argument to yaml2obj. This patch does exactly that.

Instead of requiring --format, it infers the format based on the tags found in the object file. The supported tags are:

!ELF
!COFF
!mach-o
!fat-mach-o

I have a corresponding patch that is quite large that fixes up all the in-tree test cases.

Reviewers: rafael, Bigcheese, compnerd, silvas

Subscribers: compnerd, llvm-commits

Differential Revision: http://reviews.llvm.org/D21711

llvm-svn: 273915
2016-06-27 19:53:53 +00:00

55 lines
1.6 KiB
YAML

# RUN: yaml2obj %s > %t
# RUN: obj2yaml %t | FileCheck %s
# CHECK: - Name: .rela.text
# CHECK-NEXT: Type: SHT_RELA
# CHECK-NEXT: Link: .symtab
# CHECK-NEXT: AddressAlign: 0x0000000000000008
# CHECK-NEXT: Info: .text
# CHECK-NEXT: Relocations:
# CHECK-NEXT: - Offset: 0x0000000000000000
# CHECK-NEXT: Symbol: main
# CHECK-NEXT: Type: R_AARCH64_ABS64
# CHECK-NEXT: - Offset: 0x0000000000000008
# CHECK-NEXT: Symbol: main
# CHECK-NEXT: Type: R_AARCH64_TLSGD_ADR_PREL21
!ELF
FileHeader:
Class: ELFCLASS64
Data: ELFDATA2LSB
Type: ET_REL
Machine: EM_AARCH64
Sections:
- Type: SHT_PROGBITS
Name: .text
Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
AddressAlign: 0x04
Content: 00000000000000000000000000000000
- Type: SHT_RELA
Name: .rela.text
Link: .symtab
Info: .text
AddressAlign: 0x08
Relocations:
- Offset: 0
Symbol: main
Type: R_AARCH64_ABS64
Addend: 0
- Offset: 8
Symbol: main
Type: R_AARCH64_TLSGD_ADR_PREL21
Addend: 0
Symbols:
Local:
- Name: .text
Type: STT_SECTION
Section: .text
Global:
- Name: main
Type: STT_FUNC
Section: .text
Size: 0x08