You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
211 lines
7.9 KiB
211 lines
7.9 KiB
## Check obj2yaml is able to decode all PPC64 relocations.
|
|
|
|
# RUN: yaml2obj %s -o %t
|
|
# RUN: obj2yaml %t | FileCheck %s
|
|
|
|
# CHECK: --- !ELF
|
|
# CHECK-NEXT: FileHeader:
|
|
# CHECK-NEXT: Class: ELFCLASS64
|
|
# CHECK-NEXT: Data: ELFDATA2MSB
|
|
# CHECK-NEXT: Type: ET_REL
|
|
# CHECK-NEXT: Machine: EM_PPC64
|
|
# CHECK-NEXT: Sections:
|
|
# CHECK-NEXT: - Name: .rela.text
|
|
# CHECK-NEXT: Type: SHT_RELA
|
|
# CHECK-NEXT: Relocations:
|
|
# CHECK-NEXT: - Type: R_PPC64_NONE
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR32
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR24
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR16
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR16_LO
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR16_HI
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR16_HA
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR14
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR14_BRTAKEN
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR14_BRNTAKEN
|
|
# CHECK-NEXT: - Type: R_PPC64_REL24
|
|
# CHECK-NEXT: - Type: R_PPC64_REL14
|
|
# CHECK-NEXT: - Type: R_PPC64_REL14_BRTAKEN
|
|
# CHECK-NEXT: - Type: R_PPC64_REL14_BRNTAKEN
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT16
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT16_LO
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT16_HI
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT16_HA
|
|
# CHECK-NEXT: - Type: R_PPC64_GLOB_DAT
|
|
# CHECK-NEXT: - Type: R_PPC64_JMP_SLOT
|
|
# CHECK-NEXT: - Type: R_PPC64_RELATIVE
|
|
# CHECK-NEXT: - Type: R_PPC64_REL32
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR64
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR16_HIGHER
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR16_HIGHERA
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR16_HIGHEST
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR16_HIGHESTA
|
|
# CHECK-NEXT: - Type: R_PPC64_REL64
|
|
# CHECK-NEXT: - Type: R_PPC64_TOC16
|
|
# CHECK-NEXT: - Type: R_PPC64_TOC16_LO
|
|
# CHECK-NEXT: - Type: R_PPC64_TOC16_HI
|
|
# CHECK-NEXT: - Type: R_PPC64_TOC16_HA
|
|
# CHECK-NEXT: - Type: R_PPC64_TOC
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR16_DS
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR16_LO_DS
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT16_DS
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT16_LO_DS
|
|
# CHECK-NEXT: - Type: R_PPC64_TOC16_DS
|
|
# CHECK-NEXT: - Type: R_PPC64_TOC16_LO_DS
|
|
# CHECK-NEXT: - Type: R_PPC64_TLS
|
|
# CHECK-NEXT: - Type: R_PPC64_DTPMOD64
|
|
# CHECK-NEXT: - Type: R_PPC64_TPREL16
|
|
# CHECK-NEXT: - Type: R_PPC64_TPREL16_LO
|
|
# CHECK-NEXT: - Type: R_PPC64_TPREL16_HI
|
|
# CHECK-NEXT: - Type: R_PPC64_TPREL16_HA
|
|
# CHECK-NEXT: - Type: R_PPC64_TPREL64
|
|
# CHECK-NEXT: - Type: R_PPC64_DTPREL16
|
|
# CHECK-NEXT: - Type: R_PPC64_DTPREL16_LO
|
|
# CHECK-NEXT: - Type: R_PPC64_DTPREL16_HI
|
|
# CHECK-NEXT: - Type: R_PPC64_DTPREL16_HA
|
|
# CHECK-NEXT: - Type: R_PPC64_DTPREL64
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_TLSGD16
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_TLSGD16_LO
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_TLSGD16_HI
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_TLSGD16_HA
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_TLSLD16
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_TLSLD16_LO
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_TLSLD16_HI
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_TLSLD16_HA
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_TPREL16_DS
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_TPREL16_LO_DS
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_TPREL16_HI
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_TPREL16_HA
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_DTPREL16_DS
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_DTPREL16_LO_DS
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_DTPREL16_HI
|
|
# CHECK-NEXT: - Type: R_PPC64_GOT_DTPREL16_HA
|
|
# CHECK-NEXT: - Type: R_PPC64_TPREL16_DS
|
|
# CHECK-NEXT: - Type: R_PPC64_TPREL16_LO_DS
|
|
# CHECK-NEXT: - Type: R_PPC64_TPREL16_HIGHER
|
|
# CHECK-NEXT: - Type: R_PPC64_TPREL16_HIGHERA
|
|
# CHECK-NEXT: - Type: R_PPC64_TPREL16_HIGHEST
|
|
# CHECK-NEXT: - Type: R_PPC64_TPREL16_HIGHESTA
|
|
# CHECK-NEXT: - Type: R_PPC64_DTPREL16_DS
|
|
# CHECK-NEXT: - Type: R_PPC64_DTPREL16_LO_DS
|
|
# CHECK-NEXT: - Type: R_PPC64_DTPREL16_HIGHER
|
|
# CHECK-NEXT: - Type: R_PPC64_DTPREL16_HIGHERA
|
|
# CHECK-NEXT: - Type: R_PPC64_DTPREL16_HIGHEST
|
|
# CHECK-NEXT: - Type: R_PPC64_DTPREL16_HIGHESTA
|
|
# CHECK-NEXT: - Type: R_PPC64_TLSGD
|
|
# CHECK-NEXT: - Type: R_PPC64_TLSLD
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR16_HIGH
|
|
# CHECK-NEXT: - Type: R_PPC64_ADDR16_HIGHA
|
|
# CHECK-NEXT: - Type: R_PPC64_TPREL16_HIGH
|
|
# CHECK-NEXT: - Type: R_PPC64_TPREL16_HIGHA
|
|
# CHECK-NEXT: - Type: R_PPC64_DTPREL16_HIGH
|
|
# CHECK-NEXT: - Type: R_PPC64_DTPREL16_HIGHA
|
|
# CHECK-NEXT: - Type: R_PPC64_IRELATIVE
|
|
# CHECK-NEXT: - Type: R_PPC64_REL16
|
|
# CHECK-NEXT: - Type: R_PPC64_REL16_LO
|
|
# CHECK-NEXT: - Type: R_PPC64_REL16_HI
|
|
# CHECK-NEXT: - Type: R_PPC64_REL16_HA
|
|
|
|
--- !ELF
|
|
FileHeader:
|
|
Class: ELFCLASS64
|
|
Data: ELFDATA2MSB
|
|
Type: ET_REL
|
|
Machine: EM_PPC64
|
|
Sections:
|
|
- Name: .rela.text
|
|
Type: SHT_RELA
|
|
Relocations:
|
|
- Type: R_PPC64_NONE
|
|
- Type: R_PPC64_ADDR32
|
|
- Type: R_PPC64_ADDR24
|
|
- Type: R_PPC64_ADDR16
|
|
- Type: R_PPC64_ADDR16_LO
|
|
- Type: R_PPC64_ADDR16_HI
|
|
- Type: R_PPC64_ADDR16_HA
|
|
- Type: R_PPC64_ADDR14
|
|
- Type: R_PPC64_ADDR14_BRTAKEN
|
|
- Type: R_PPC64_ADDR14_BRNTAKEN
|
|
- Type: R_PPC64_REL24
|
|
- Type: R_PPC64_REL14
|
|
- Type: R_PPC64_REL14_BRTAKEN
|
|
- Type: R_PPC64_REL14_BRNTAKEN
|
|
- Type: R_PPC64_GOT16
|
|
- Type: R_PPC64_GOT16_LO
|
|
- Type: R_PPC64_GOT16_HI
|
|
- Type: R_PPC64_GOT16_HA
|
|
- Type: R_PPC64_GLOB_DAT
|
|
- Type: R_PPC64_JMP_SLOT
|
|
- Type: R_PPC64_RELATIVE
|
|
- Type: R_PPC64_REL32
|
|
- Type: R_PPC64_ADDR64
|
|
- Type: R_PPC64_ADDR16_HIGHER
|
|
- Type: R_PPC64_ADDR16_HIGHERA
|
|
- Type: R_PPC64_ADDR16_HIGHEST
|
|
- Type: R_PPC64_ADDR16_HIGHESTA
|
|
- Type: R_PPC64_REL64
|
|
- Type: R_PPC64_TOC16
|
|
- Type: R_PPC64_TOC16_LO
|
|
- Type: R_PPC64_TOC16_HI
|
|
- Type: R_PPC64_TOC16_HA
|
|
- Type: R_PPC64_TOC
|
|
- Type: R_PPC64_ADDR16_DS
|
|
- Type: R_PPC64_ADDR16_LO_DS
|
|
- Type: R_PPC64_GOT16_DS
|
|
- Type: R_PPC64_GOT16_LO_DS
|
|
- Type: R_PPC64_TOC16_DS
|
|
- Type: R_PPC64_TOC16_LO_DS
|
|
- Type: R_PPC64_TLS
|
|
- Type: R_PPC64_DTPMOD64
|
|
- Type: R_PPC64_TPREL16
|
|
- Type: R_PPC64_TPREL16_LO
|
|
- Type: R_PPC64_TPREL16_HI
|
|
- Type: R_PPC64_TPREL16_HA
|
|
- Type: R_PPC64_TPREL64
|
|
- Type: R_PPC64_DTPREL16
|
|
- Type: R_PPC64_DTPREL16_LO
|
|
- Type: R_PPC64_DTPREL16_HI
|
|
- Type: R_PPC64_DTPREL16_HA
|
|
- Type: R_PPC64_DTPREL64
|
|
- Type: R_PPC64_GOT_TLSGD16
|
|
- Type: R_PPC64_GOT_TLSGD16_LO
|
|
- Type: R_PPC64_GOT_TLSGD16_HI
|
|
- Type: R_PPC64_GOT_TLSGD16_HA
|
|
- Type: R_PPC64_GOT_TLSLD16
|
|
- Type: R_PPC64_GOT_TLSLD16_LO
|
|
- Type: R_PPC64_GOT_TLSLD16_HI
|
|
- Type: R_PPC64_GOT_TLSLD16_HA
|
|
- Type: R_PPC64_GOT_TPREL16_DS
|
|
- Type: R_PPC64_GOT_TPREL16_LO_DS
|
|
- Type: R_PPC64_GOT_TPREL16_HI
|
|
- Type: R_PPC64_GOT_TPREL16_HA
|
|
- Type: R_PPC64_GOT_DTPREL16_DS
|
|
- Type: R_PPC64_GOT_DTPREL16_LO_DS
|
|
- Type: R_PPC64_GOT_DTPREL16_HI
|
|
- Type: R_PPC64_GOT_DTPREL16_HA
|
|
- Type: R_PPC64_TPREL16_DS
|
|
- Type: R_PPC64_TPREL16_LO_DS
|
|
- Type: R_PPC64_TPREL16_HIGHER
|
|
- Type: R_PPC64_TPREL16_HIGHERA
|
|
- Type: R_PPC64_TPREL16_HIGHEST
|
|
- Type: R_PPC64_TPREL16_HIGHESTA
|
|
- Type: R_PPC64_DTPREL16_DS
|
|
- Type: R_PPC64_DTPREL16_LO_DS
|
|
- Type: R_PPC64_DTPREL16_HIGHER
|
|
- Type: R_PPC64_DTPREL16_HIGHERA
|
|
- Type: R_PPC64_DTPREL16_HIGHEST
|
|
- Type: R_PPC64_DTPREL16_HIGHESTA
|
|
- Type: R_PPC64_TLSGD
|
|
- Type: R_PPC64_TLSLD
|
|
- Type: R_PPC64_ADDR16_HIGH
|
|
- Type: R_PPC64_ADDR16_HIGHA
|
|
- Type: R_PPC64_TPREL16_HIGH
|
|
- Type: R_PPC64_TPREL16_HIGHA
|
|
- Type: R_PPC64_DTPREL16_HIGH
|
|
- Type: R_PPC64_DTPREL16_HIGHA
|
|
- Type: R_PPC64_IRELATIVE
|
|
- Type: R_PPC64_REL16
|
|
- Type: R_PPC64_REL16_LO
|
|
- Type: R_PPC64_REL16_HI
|
|
- Type: R_PPC64_REL16_HA
|