# RUN: yaml2obj %s -o %t # RUN: llvm-readobj -r %t | FileCheck -check-prefix=OBJ %s # RUN: obj2yaml %t | FileCheck -check-prefix=YAML %s # OBJ: Relocations [ # OBJ-NEXT: Section (2) .rela.text { # OBJ-NEXT: 0x14 R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_HI16 main 0x4 # OBJ-NEXT: 0x1C R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_LO16 main 0x8 # OBJ-NEXT: 0x20 R_MIPS_GOT_PAGE/R_MIPS_NONE/R_MIPS_NONE .rodata 0x0 # OBJ-NEXT: 0x24 R_MIPS_GOT_OFST/R_MIPS_NONE/R_MIPS_NONE .rodata 0x0 # OBJ-NEXT: 0x28 R_MIPS_CALL16/R_MIPS_NONE/R_MIPS_NONE printf 0x0 # OBJ-NEXT: 0x30 R_MIPS_GPREL16/R_MIPS_LO16/R_MIPS_NONE printf 0x0 # OBJ-NEXT: } # OBJ-NEXT: ] # YAML: Relocations: # YAML-NEXT: - Offset: 0x14 # YAML-NEXT: Symbol: main # YAML-NEXT: Type: R_MIPS_GPREL16 # YAML-NEXT: Type2: R_MIPS_SUB # YAML-NEXT: Type3: R_MIPS_HI16 # YAML-NEXT: Addend: 4 # YAML-NEXT: - Offset: 0x1C # YAML-NEXT: Symbol: main # YAML-NEXT: Type: R_MIPS_GPREL16 # YAML-NEXT: Type2: R_MIPS_SUB # YAML-NEXT: Type3: R_MIPS_LO16 # YAML-NEXT: Addend: 8 # YAML-NEXT: - Offset: 0x20 # YAML-NEXT: Symbol: .rodata # YAML-NEXT: Type: R_MIPS_GOT_PAGE # YAML-NEXT: - Offset: 0x24 # YAML-NEXT: Symbol: .rodata # YAML-NEXT: Type: R_MIPS_GOT_OFST # YAML-NEXT: - Offset: 0x28 # YAML-NEXT: Symbol: printf # YAML-NEXT: Type: R_MIPS_CALL16 # YAML-NEXT: - Offset: 0x30 # YAML-NEXT: Symbol: printf # YAML-NEXT: Type: R_MIPS_GPREL16 # YAML-NEXT: Type2: R_MIPS_LO16 # YAML-NEXT: SpecSym: RSS_GP0 --- !ELF FileHeader: Class: ELFCLASS64 Data: ELFDATA2LSB Type: ET_REL Machine: EM_MIPS Flags: [ EF_MIPS_PIC, EF_MIPS_CPIC, EF_MIPS_NOREORDER, EF_MIPS_ARCH_64R2 ] Sections: - Name: .text Type: SHT_PROGBITS Flags: [ SHF_ALLOC, SHF_EXECINSTR ] AddressAlign: 0x10 Size: 0x60 - Name: .rela.text Type: SHT_RELA Flags: [ SHF_INFO_LINK ] AddressAlign: 0x8 Info: .text Relocations: - Offset: 0x14 Symbol: main Type: R_MIPS_GPREL16 Type2: R_MIPS_SUB Type3: R_MIPS_HI16 Addend: 4 - Offset: 0x1C Symbol: main Type: R_MIPS_GPREL16 Type2: R_MIPS_SUB Type3: R_MIPS_LO16 Addend: 8 - Offset: 0x20 Symbol: .rodata Type: R_MIPS_GOT_PAGE Addend: 0 - Offset: 0x24 Symbol: .rodata Type: R_MIPS_GOT_OFST Addend: 0 - Offset: 0x28 Symbol: printf Type: R_MIPS_CALL16 Addend: 0 - Offset: 0x30 Symbol: printf Type: R_MIPS_GPREL16 Type2: R_MIPS_LO16 SpecSym: RSS_GP0 Addend: 0 - Name: .rodata Type: SHT_PROGBITS Flags: [ SHF_ALLOC ] AddressAlign: 0x10 Size: 0x0F Symbols: - Name: .text Type: STT_SECTION Section: .text - Name: .rodata Type: STT_SECTION Section: .rodata - Name: main Type: STT_FUNC Section: .text Size: 0x58 Binding: STB_GLOBAL - Name: printf Binding: STB_GLOBAL ...