1*55c81d42SFangrui Song# RUN: yaml2obj %s -o %t 26e4dc6f2SAlexander Shaposhnikov# RUN: llvm-objcopy -R .test %t %t2 3298ea3f5SJordan Rupprecht# RUN: llvm-readobj --file-headers --symbols %t2 | FileCheck %s 46e4dc6f2SAlexander Shaposhnikov 56e4dc6f2SAlexander Shaposhnikov!ELF 66e4dc6f2SAlexander ShaposhnikovFileHeader: 76e4dc6f2SAlexander Shaposhnikov Class: ELFCLASS64 86e4dc6f2SAlexander Shaposhnikov Data: ELFDATA2LSB 96e4dc6f2SAlexander Shaposhnikov Type: ET_REL 106e4dc6f2SAlexander Shaposhnikov Machine: EM_X86_64 116e4dc6f2SAlexander ShaposhnikovSections: 126e4dc6f2SAlexander Shaposhnikov - Name: .test 136e4dc6f2SAlexander Shaposhnikov Type: SHT_PROGBITS 146e4dc6f2SAlexander Shaposhnikov Flags: [ SHF_ALLOC ] 156e4dc6f2SAlexander Shaposhnikov - Name: .test2 166e4dc6f2SAlexander Shaposhnikov Type: SHT_PROGBITS 176e4dc6f2SAlexander Shaposhnikov Flags: [ SHF_ALLOC ] 186e4dc6f2SAlexander ShaposhnikovSymbols: 196e4dc6f2SAlexander Shaposhnikov - Name: test 206e4dc6f2SAlexander Shaposhnikov Type: STT_FUNC 216e4dc6f2SAlexander Shaposhnikov Section: .test 226e4dc6f2SAlexander Shaposhnikov Value: 0x1000 236e4dc6f2SAlexander Shaposhnikov Size: 4 246da44ad7SGeorge Rimar Binding: STB_GLOBAL 256e4dc6f2SAlexander Shaposhnikov - Name: test2 266e4dc6f2SAlexander Shaposhnikov Type: STT_FUNC 276e4dc6f2SAlexander Shaposhnikov Section: .test2 286e4dc6f2SAlexander Shaposhnikov Value: 0x1000 296e4dc6f2SAlexander Shaposhnikov Size: 4 306da44ad7SGeorge Rimar Binding: STB_GLOBAL 316e4dc6f2SAlexander Shaposhnikov 326e4dc6f2SAlexander Shaposhnikov# The sections counted here should be .test, .symtab, .strtab, and .shstrtab. 336e4dc6f2SAlexander Shaposhnikov# The 5th section is the null section. 346e4dc6f2SAlexander Shaposhnikov#CHECK: SectionHeaderCount: 5 356e4dc6f2SAlexander Shaposhnikov 366e4dc6f2SAlexander Shaposhnikov#CHECK: Symbols [ 376e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Symbol { 386e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Name: 396e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Value: 0x0 406e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Size: 0 416e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Binding: Local 426e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Type: None 436e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Other: 0 446e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Section: Undefined 456e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: } 466e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Symbol { 476e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Name: test2 486e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Value: 0x1000 496e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Size: 4 506e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Binding: Global 516e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Type: Function 526e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Other: 0 536e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: Section: .test2 546e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT: } 556e4dc6f2SAlexander Shaposhnikov#CHECK-NEXT:] 56