155c81d42SFangrui Song# RUN: yaml2obj %s -o %t 26e4dc6f2SAlexander Shaposhnikov# RUN: llvm-objcopy %t %t2 3298ea3f5SJordan Rupprecht# RUN: llvm-readobj --relocations %t2 | FileCheck %s 46e4dc6f2SAlexander Shaposhnikov 56e4dc6f2SAlexander Shaposhnikov!ELF 66e4dc6f2SAlexander ShaposhnikovFileHeader: 76e4dc6f2SAlexander Shaposhnikov Class: ELFCLASS64 86e4dc6f2SAlexander Shaposhnikov Data: ELFDATA2LSB 96e4dc6f2SAlexander Shaposhnikov Type: ET_EXEC 106e4dc6f2SAlexander Shaposhnikov Machine: EM_X86_64 116e4dc6f2SAlexander ShaposhnikovSections: 126e4dc6f2SAlexander Shaposhnikov - Name: .text 136e4dc6f2SAlexander Shaposhnikov Type: SHT_PROGBITS 146e4dc6f2SAlexander Shaposhnikov Flags: [ SHF_ALLOC, SHF_EXECINSTR ] 156e4dc6f2SAlexander Shaposhnikov Address: 0x1000 166e4dc6f2SAlexander Shaposhnikov AddressAlign: 0x0000000000000010 176e4dc6f2SAlexander Shaposhnikov Content: "0000000000000000" 186e4dc6f2SAlexander Shaposhnikov - Name: .rel.text 196e4dc6f2SAlexander Shaposhnikov Type: SHT_REL 206e4dc6f2SAlexander Shaposhnikov Link: .symtab 216e4dc6f2SAlexander Shaposhnikov Info: .text 226e4dc6f2SAlexander Shaposhnikov Relocations: 236e4dc6f2SAlexander Shaposhnikov - Offset: 0x1000 246e4dc6f2SAlexander Shaposhnikov Symbol: foo 256e4dc6f2SAlexander Shaposhnikov Type: R_X86_64_PC32 266e4dc6f2SAlexander Shaposhnikov - Name: .data 276e4dc6f2SAlexander Shaposhnikov Type: SHT_PROGBITS 286e4dc6f2SAlexander Shaposhnikov Flags: [ SHF_ALLOC ] 296e4dc6f2SAlexander Shaposhnikov Address: 0x2000 306e4dc6f2SAlexander Shaposhnikov AddressAlign: 0x0000000000000010 316e4dc6f2SAlexander Shaposhnikov Content: "0000000000000000" 326e4dc6f2SAlexander Shaposhnikov - Name: .rel.data 336e4dc6f2SAlexander Shaposhnikov Type: SHT_REL 346e4dc6f2SAlexander Shaposhnikov Link: .symtab 356e4dc6f2SAlexander Shaposhnikov Info: .data 366e4dc6f2SAlexander Shaposhnikov Relocations: 376e4dc6f2SAlexander Shaposhnikov - Offset: 0x2000 386e4dc6f2SAlexander Shaposhnikov Symbol: bar 396e4dc6f2SAlexander Shaposhnikov Type: R_X86_64_PC32 406e4dc6f2SAlexander Shaposhnikov - Name: .rela.data 416e4dc6f2SAlexander Shaposhnikov Type: SHT_RELA 426e4dc6f2SAlexander Shaposhnikov Link: .symtab 436e4dc6f2SAlexander Shaposhnikov Info: .data 446e4dc6f2SAlexander Shaposhnikov Relocations: 456e4dc6f2SAlexander Shaposhnikov - Offset: 0x2000 466e4dc6f2SAlexander Shaposhnikov Symbol: barA 476e4dc6f2SAlexander Shaposhnikov Type: R_X86_64_PC32 486e4dc6f2SAlexander Shaposhnikov Addend: 0x17 496e4dc6f2SAlexander Shaposhnikov - Name: .rela.text 506e4dc6f2SAlexander Shaposhnikov Type: SHT_RELA 516e4dc6f2SAlexander Shaposhnikov Link: .symtab 526e4dc6f2SAlexander Shaposhnikov Info: .text 536e4dc6f2SAlexander Shaposhnikov Relocations: 546e4dc6f2SAlexander Shaposhnikov - Offset: 0x1000 556e4dc6f2SAlexander Shaposhnikov Symbol: fooA 566e4dc6f2SAlexander Shaposhnikov Type: R_X86_64_PC32 576e4dc6f2SAlexander Shaposhnikov Addend: 0x13 586e4dc6f2SAlexander ShaposhnikovSymbols: 596e4dc6f2SAlexander Shaposhnikov - Name: _start 606e4dc6f2SAlexander Shaposhnikov Type: STT_FUNC 616e4dc6f2SAlexander Shaposhnikov Section: .text 626e4dc6f2SAlexander Shaposhnikov Value: 0x1000 636e4dc6f2SAlexander Shaposhnikov Size: 4 646da44ad7SGeorge Rimar Binding: STB_GLOBAL 656e4dc6f2SAlexander Shaposhnikov - Name: foo 666e4dc6f2SAlexander Shaposhnikov Type: STT_FUNC 676e4dc6f2SAlexander Shaposhnikov Size: 4 686da44ad7SGeorge Rimar Binding: STB_GLOBAL 696e4dc6f2SAlexander Shaposhnikov - Name: fooA 706e4dc6f2SAlexander Shaposhnikov Type: STT_FUNC 716e4dc6f2SAlexander Shaposhnikov Size: 4 726da44ad7SGeorge Rimar Binding: STB_GLOBAL 736e4dc6f2SAlexander Shaposhnikov - Name: bar 746e4dc6f2SAlexander Shaposhnikov Type: STT_OBJECT 756e4dc6f2SAlexander Shaposhnikov Size: 4 766da44ad7SGeorge Rimar Binding: STB_GLOBAL 776e4dc6f2SAlexander Shaposhnikov - Name: barA 786e4dc6f2SAlexander Shaposhnikov Type: STT_OBJECT 796e4dc6f2SAlexander Shaposhnikov Size: 4 806da44ad7SGeorge Rimar Binding: STB_GLOBAL 816e4dc6f2SAlexander Shaposhnikov 826e4dc6f2SAlexander Shaposhnikov# CHECK: Relocations [ 836e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT: Section (2) .rel.text { 84*98a42898SGeorgii Rymar# CHECK-NEXT: 0x1000 R_X86_64_PC32 foo 856e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT: } 866e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT: Section (4) .rel.data { 87*98a42898SGeorgii Rymar# CHECK-NEXT: 0x2000 R_X86_64_PC32 bar 886e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT: } 896e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT: Section (5) .rela.data { 906e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT: 0x2000 R_X86_64_PC32 barA 0x17 916e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT: } 926e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT: Section (6) .rela.text { 936e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT: 0x1000 R_X86_64_PC32 fooA 0x13 946e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT: } 956e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:] 96