This patch enables users to handcraft custom contents for DWARF sections. If we specify the contents of DWARF sections both in the 'DWARF' entry and the 'content', yaml2obj will emit an error message. In addition, this patch helps remove the restriction that only the content of sections whose segname are __DWARF can be specified in the "DWARF" entry. Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D87126
58 lines
1.7 KiB
YAML
58 lines
1.7 KiB
YAML
## Test that macho2yaml dumps the __debug_foo section (unrecognized debug section)
|
|
## as a raw content section.
|
|
|
|
# RUN: yaml2obj %s | obj2yaml | FileCheck %s --check-prefix=UNRECOGNIZED
|
|
|
|
# UNRECOGNIZED: Sections:
|
|
# UNRECOGNIZED-NEXT: - sectname: __debug_foo
|
|
# UNRECOGNIZED-NEXT: segname: __DWARF
|
|
# UNRECOGNIZED-NEXT: addr: 0x0000000000000000
|
|
# UNRECOGNIZED-NEXT: size: 5
|
|
# UNRECOGNIZED-NEXT: offset: 0x00000210
|
|
# UNRECOGNIZED-NEXT: align: 0
|
|
# UNRECOGNIZED-NEXT: reloff: 0x00000000
|
|
# UNRECOGNIZED-NEXT: nreloc: 0
|
|
# UNRECOGNIZED-NEXT: flags: 0x00000000
|
|
# UNRECOGNIZED-NEXT: reserved1: 0x00000000
|
|
# UNRECOGNIZED-NEXT: reserved2: 0x00000000
|
|
# UNRECOGNIZED-NEXT: reserved3: 0x00000000
|
|
# UNRECOGNIZED-NEXT: content: '0123456789'
|
|
# UNRECOGNIZED-NEXT: ...
|
|
|
|
--- !mach-o
|
|
FileHeader:
|
|
magic: 0xFEEDFACF
|
|
cputype: 0x01000007
|
|
cpusubtype: 0x00000003
|
|
filetype: 0x0000000A
|
|
ncmds: 1
|
|
sizeofcmds: 232
|
|
flags: 0x00000000
|
|
reserved: 0x00000000
|
|
LoadCommands:
|
|
- cmd: LC_SEGMENT_64
|
|
cmdsize: 152
|
|
segname: __DWARF
|
|
vmaddr: 0x00
|
|
vmsize: 0x00
|
|
fileoff: 0x00
|
|
filesize: 0x00
|
|
maxprot: 0
|
|
initprot: 0
|
|
nsects: 1
|
|
flags: 0
|
|
Sections:
|
|
- sectname: __debug_foo
|
|
segname: __DWARF
|
|
addr: 0x00
|
|
size: 5
|
|
offset: 528
|
|
align: 0
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000000
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
content: '0123456789'
|