| ## Check llvm-objdump -h can handle ELF files without section info. | |
| ## Only PT_LOAD segments with the PF_X flag will be displayed as fake sections. | |
| # RUN: yaml2obj %s -o %t | |
| # RUN: llvm-objdump -h %t | FileCheck %s | |
| # CHECK: Sections: | |
| # CHECK-NEXT: Idx Name Size VMA Type | |
| # CHECK-NEXT: 0 PT_LOAD#1 00000100 0000000000400000 TEXT | |
| # CHECK-NEXT: 1 PT_LOAD#3 00000200 0000000000600400 TEXT | |
| # CHECK-NOT: {{.}} | |
| !ELF | |
| FileHeader: | |
| Class: ELFCLASS64 | |
| Data: ELFDATA2LSB | |
| Type: ET_CORE | |
| Machine: EM_X86_64 | |
| Sections: | |
| - Type: SectionHeaderTable | |
| NoHeaders: true | |
| - Type: Fill | |
| Name: code1 | |
| Pattern: "cc" | |
| Size: 0x100 | |
| Offset: 0x200 | |
| - Type: Fill | |
| Name: data1 | |
| Pattern: "aa55" | |
| Size: 0x100 | |
| Offset: 0x300 | |
| - Type: Fill | |
| Name: code2 | |
| Pattern: "ff" | |
| Size: 0x200 | |
| Offset: 0x400 | |
| ProgramHeaders: | |
| - Type: PT_PHDR | |
| Flags: [ PF_X ] | |
| VAddr: 0x400000 | |
| MemSize: 0x100 | |
| - Type: PT_LOAD | |
| Flags: [ PF_X ] | |
| VAddr: 0x400000 | |
| MemSize: 0x100 | |
| FirstSec: code1 | |
| LastSec: code1 | |
| - Type: PT_LOAD | |
| Flags: [ PF_R ] | |
| VAddr: 0x500300 | |
| MemSize: 0x100 | |
| FirstSec: data1 | |
| LastSec: data1 | |
| - Type: PT_LOAD | |
| Flags: [ PF_R, PF_X ] | |
| VAddr: 0x600400 | |
| MemSize: 0x200 | |
| FirstSec: code2 | |
| LastSec: code2 |