1*9880d681SAndroid Build Coastguard Worker# RUN: yaml2obj %s > %t 2*9880d681SAndroid Build Coastguard Worker# RUN: llvm-readobj -r %t | FileCheck -check-prefix=OBJ %s 3*9880d681SAndroid Build Coastguard Worker# RUN: obj2yaml %t | FileCheck -check-prefix=YAML %s 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Worker# OBJ: Relocations [ 6*9880d681SAndroid Build Coastguard Worker# OBJ-NEXT: Section (2) .rela.text { 7*9880d681SAndroid Build Coastguard Worker# OBJ-NEXT: 0x14 R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_HI16 main 0x4 8*9880d681SAndroid Build Coastguard Worker# OBJ-NEXT: 0x1C R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_LO16 main 0x8 9*9880d681SAndroid Build Coastguard Worker# OBJ-NEXT: 0x20 R_MIPS_GOT_PAGE/R_MIPS_NONE/R_MIPS_NONE .rodata 0x0 10*9880d681SAndroid Build Coastguard Worker# OBJ-NEXT: 0x24 R_MIPS_GOT_OFST/R_MIPS_NONE/R_MIPS_NONE .rodata 0x0 11*9880d681SAndroid Build Coastguard Worker# OBJ-NEXT: 0x28 R_MIPS_CALL16/R_MIPS_NONE/R_MIPS_NONE printf 0x0 12*9880d681SAndroid Build Coastguard Worker# OBJ-NEXT: 0x30 R_MIPS_GPREL16/R_MIPS_LO16/R_MIPS_NONE printf 0x0 13*9880d681SAndroid Build Coastguard Worker# OBJ-NEXT: } 14*9880d681SAndroid Build Coastguard Worker# OBJ-NEXT: ] 15*9880d681SAndroid Build Coastguard Worker 16*9880d681SAndroid Build Coastguard Worker# YAML: Relocations: 17*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: - Offset: 0x0000000000000014 18*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Symbol: main 19*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Type: R_MIPS_GPREL16 20*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Type2: R_MIPS_SUB 21*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Type3: R_MIPS_HI16 22*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Addend: 4 23*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: - Offset: 0x000000000000001C 24*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Symbol: main 25*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Type: R_MIPS_GPREL16 26*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Type2: R_MIPS_SUB 27*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Type3: R_MIPS_LO16 28*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Addend: 8 29*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: - Offset: 0x0000000000000020 30*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Symbol: .rodata 31*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Type: R_MIPS_GOT_PAGE 32*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: - Offset: 0x0000000000000024 33*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Symbol: .rodata 34*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Type: R_MIPS_GOT_OFST 35*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: - Offset: 0x0000000000000028 36*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Symbol: printf 37*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Type: R_MIPS_CALL16 38*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: - Offset: 0x0000000000000030 39*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Symbol: printf 40*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Type: R_MIPS_GPREL16 41*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: Type2: R_MIPS_LO16 42*9880d681SAndroid Build Coastguard Worker# YAML-NEXT: SpecSym: RSS_GP0 43*9880d681SAndroid Build Coastguard Worker 44*9880d681SAndroid Build Coastguard Worker--- !ELF 45*9880d681SAndroid Build Coastguard WorkerFileHeader: 46*9880d681SAndroid Build Coastguard Worker Class: ELFCLASS64 47*9880d681SAndroid Build Coastguard Worker Data: ELFDATA2LSB 48*9880d681SAndroid Build Coastguard Worker Type: ET_REL 49*9880d681SAndroid Build Coastguard Worker Machine: EM_MIPS 50*9880d681SAndroid Build Coastguard Worker Flags: [ EF_MIPS_PIC, EF_MIPS_CPIC, 51*9880d681SAndroid Build Coastguard Worker EF_MIPS_NOREORDER, EF_MIPS_ARCH_64R2 ] 52*9880d681SAndroid Build Coastguard WorkerSections: 53*9880d681SAndroid Build Coastguard Worker - Name: .text 54*9880d681SAndroid Build Coastguard Worker Type: SHT_PROGBITS 55*9880d681SAndroid Build Coastguard Worker Flags: [ SHF_ALLOC, SHF_EXECINSTR ] 56*9880d681SAndroid Build Coastguard Worker AddressAlign: 0x10 57*9880d681SAndroid Build Coastguard Worker Size: 0x60 58*9880d681SAndroid Build Coastguard Worker - Name: .rela.text 59*9880d681SAndroid Build Coastguard Worker Type: SHT_RELA 60*9880d681SAndroid Build Coastguard Worker Flags: [ SHF_INFO_LINK ] 61*9880d681SAndroid Build Coastguard Worker AddressAlign: 0x8 62*9880d681SAndroid Build Coastguard Worker Info: .text 63*9880d681SAndroid Build Coastguard Worker Relocations: 64*9880d681SAndroid Build Coastguard Worker - Offset: 0x14 65*9880d681SAndroid Build Coastguard Worker Symbol: main 66*9880d681SAndroid Build Coastguard Worker Type: R_MIPS_GPREL16 67*9880d681SAndroid Build Coastguard Worker Type2: R_MIPS_SUB 68*9880d681SAndroid Build Coastguard Worker Type3: R_MIPS_HI16 69*9880d681SAndroid Build Coastguard Worker Addend: 4 70*9880d681SAndroid Build Coastguard Worker - Offset: 0x1C 71*9880d681SAndroid Build Coastguard Worker Symbol: main 72*9880d681SAndroid Build Coastguard Worker Type: R_MIPS_GPREL16 73*9880d681SAndroid Build Coastguard Worker Type2: R_MIPS_SUB 74*9880d681SAndroid Build Coastguard Worker Type3: R_MIPS_LO16 75*9880d681SAndroid Build Coastguard Worker Addend: 8 76*9880d681SAndroid Build Coastguard Worker - Offset: 0x20 77*9880d681SAndroid Build Coastguard Worker Symbol: .rodata 78*9880d681SAndroid Build Coastguard Worker Type: R_MIPS_GOT_PAGE 79*9880d681SAndroid Build Coastguard Worker Addend: 0 80*9880d681SAndroid Build Coastguard Worker - Offset: 0x24 81*9880d681SAndroid Build Coastguard Worker Symbol: .rodata 82*9880d681SAndroid Build Coastguard Worker Type: R_MIPS_GOT_OFST 83*9880d681SAndroid Build Coastguard Worker Addend: 0 84*9880d681SAndroid Build Coastguard Worker - Offset: 0x28 85*9880d681SAndroid Build Coastguard Worker Symbol: printf 86*9880d681SAndroid Build Coastguard Worker Type: R_MIPS_CALL16 87*9880d681SAndroid Build Coastguard Worker Addend: 0 88*9880d681SAndroid Build Coastguard Worker - Offset: 0x30 89*9880d681SAndroid Build Coastguard Worker Symbol: printf 90*9880d681SAndroid Build Coastguard Worker Type: R_MIPS_GPREL16 91*9880d681SAndroid Build Coastguard Worker Type2: R_MIPS_LO16 92*9880d681SAndroid Build Coastguard Worker SpecSym: RSS_GP0 93*9880d681SAndroid Build Coastguard Worker Addend: 0 94*9880d681SAndroid Build Coastguard Worker - Name: .rodata 95*9880d681SAndroid Build Coastguard Worker Type: SHT_PROGBITS 96*9880d681SAndroid Build Coastguard Worker Flags: [ SHF_ALLOC ] 97*9880d681SAndroid Build Coastguard Worker AddressAlign: 0x10 98*9880d681SAndroid Build Coastguard Worker Size: 0x0F 99*9880d681SAndroid Build Coastguard Worker 100*9880d681SAndroid Build Coastguard WorkerSymbols: 101*9880d681SAndroid Build Coastguard Worker Local: 102*9880d681SAndroid Build Coastguard Worker - Name: .text 103*9880d681SAndroid Build Coastguard Worker Type: STT_SECTION 104*9880d681SAndroid Build Coastguard Worker Section: .text 105*9880d681SAndroid Build Coastguard Worker - Name: .rodata 106*9880d681SAndroid Build Coastguard Worker Type: STT_SECTION 107*9880d681SAndroid Build Coastguard Worker Section: .rodata 108*9880d681SAndroid Build Coastguard Worker Global: 109*9880d681SAndroid Build Coastguard Worker - Name: main 110*9880d681SAndroid Build Coastguard Worker Type: STT_FUNC 111*9880d681SAndroid Build Coastguard Worker Section: .text 112*9880d681SAndroid Build Coastguard Worker Size: 0x58 113*9880d681SAndroid Build Coastguard Worker - Name: printf 114*9880d681SAndroid Build Coastguard Worker... 115