mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-25 04:02:41 +01:00
9876c44779
In the DWARF 4 Spec section 7.2.2, data in many DWARF sections, and some DWARF structures start with "Initial Length Values", which are a 32-bit length, and an optional 64-bit length if the 32 bit value == UINT32_MAX. This patch abstracts the Initial Length type in YAML, and extends its use to all the DWARF structures that are supported in the DWARFYAML code that have Initial Length values. llvm-svn: 296911
338 lines
10 KiB
YAML
338 lines
10 KiB
YAML
# RUN: yaml2obj %s | obj2yaml | FileCheck %s
|
|
|
|
--- !mach-o
|
|
FileHeader:
|
|
magic: 0xFEEDFACF
|
|
cputype: 0x01000007
|
|
cpusubtype: 0x00000003
|
|
filetype: 0x0000000A
|
|
ncmds: 7
|
|
sizeofcmds: 1848
|
|
flags: 0x00000000
|
|
reserved: 0x00000000
|
|
LoadCommands:
|
|
- cmd: LC_UUID
|
|
cmdsize: 24
|
|
uuid: B4D48511-37F4-3ED4-AFA7-1683DCE69AC4
|
|
- cmd: LC_SYMTAB
|
|
cmdsize: 24
|
|
symoff: 4096
|
|
nsyms: 2
|
|
stroff: 4128
|
|
strsize: 28
|
|
- cmd: LC_SEGMENT_64
|
|
cmdsize: 72
|
|
segname: __PAGEZERO
|
|
vmaddr: 0
|
|
vmsize: 4294967296
|
|
fileoff: 0
|
|
filesize: 0
|
|
maxprot: 0
|
|
initprot: 0
|
|
nsects: 0
|
|
flags: 0
|
|
- cmd: LC_SEGMENT_64
|
|
cmdsize: 472
|
|
segname: __TEXT
|
|
vmaddr: 4294967296
|
|
vmsize: 4096
|
|
fileoff: 0
|
|
filesize: 0
|
|
maxprot: 7
|
|
initprot: 5
|
|
nsects: 5
|
|
flags: 0
|
|
Sections:
|
|
- sectname: __text
|
|
segname: __TEXT
|
|
addr: 0x0000000100000F50
|
|
size: 52
|
|
offset: 0x00000000
|
|
align: 4
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x80000400
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- sectname: __stubs
|
|
segname: __TEXT
|
|
addr: 0x0000000100000F84
|
|
size: 6
|
|
offset: 0x00000000
|
|
align: 1
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x80000408
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000006
|
|
reserved3: 0x00000000
|
|
- sectname: __stub_helper
|
|
segname: __TEXT
|
|
addr: 0x0000000100000F8C
|
|
size: 26
|
|
offset: 0x00000000
|
|
align: 2
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x80000400
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- sectname: __cstring
|
|
segname: __TEXT
|
|
addr: 0x0000000100000FA6
|
|
size: 14
|
|
offset: 0x00000000
|
|
align: 0
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000002
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- sectname: __unwind_info
|
|
segname: __TEXT
|
|
addr: 0x0000000100000FB4
|
|
size: 72
|
|
offset: 0x00000000
|
|
align: 2
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000000
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- cmd: LC_SEGMENT_64
|
|
cmdsize: 232
|
|
segname: __DATA
|
|
vmaddr: 4294971392
|
|
vmsize: 4096
|
|
fileoff: 0
|
|
filesize: 0
|
|
maxprot: 7
|
|
initprot: 3
|
|
nsects: 2
|
|
flags: 0
|
|
Sections:
|
|
- sectname: __nl_symbol_ptr
|
|
segname: __DATA
|
|
addr: 0x0000000100001000
|
|
size: 16
|
|
offset: 0x00000000
|
|
align: 3
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000006
|
|
reserved1: 0x00000001
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- sectname: __la_symbol_ptr
|
|
segname: __DATA
|
|
addr: 0x0000000100001010
|
|
size: 8
|
|
offset: 0x00000000
|
|
align: 3
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000007
|
|
reserved1: 0x00000003
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- cmd: LC_SEGMENT_64
|
|
cmdsize: 72
|
|
segname: __LINKEDIT
|
|
vmaddr: 4294975488
|
|
vmsize: 4096
|
|
fileoff: 4096
|
|
filesize: 60
|
|
maxprot: 7
|
|
initprot: 1
|
|
nsects: 0
|
|
flags: 0
|
|
- cmd: LC_SEGMENT_64
|
|
cmdsize: 952
|
|
segname: __DWARF
|
|
vmaddr: 4294979584
|
|
vmsize: 4096
|
|
fileoff: 8192
|
|
filesize: 764
|
|
maxprot: 7
|
|
initprot: 3
|
|
nsects: 11
|
|
flags: 0
|
|
Sections:
|
|
- sectname: __debug_line
|
|
segname: __DWARF
|
|
addr: 0x0000000100003000
|
|
size: 69
|
|
offset: 0x00002000
|
|
align: 0
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000000
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- sectname: __debug_pubnames
|
|
segname: __DWARF
|
|
addr: 0x0000000100003045
|
|
size: 27
|
|
offset: 0x00002045
|
|
align: 0
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000000
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- sectname: __debug_pubtypes
|
|
segname: __DWARF
|
|
addr: 0x0000000100003060
|
|
size: 35
|
|
offset: 0x00002060
|
|
align: 0
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000000
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- sectname: __debug_aranges
|
|
segname: __DWARF
|
|
addr: 0x0000000100003083
|
|
size: 48
|
|
offset: 0x00002083
|
|
align: 0
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000000
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- sectname: __debug_info
|
|
segname: __DWARF
|
|
addr: 0x00000001000030B3
|
|
size: 121
|
|
offset: 0x000020B3
|
|
align: 0
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000000
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- sectname: __debug_abbrev
|
|
segname: __DWARF
|
|
addr: 0x000000010000312C
|
|
size: 76
|
|
offset: 0x0000212C
|
|
align: 0
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000000
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- sectname: __debug_str
|
|
segname: __DWARF
|
|
addr: 0x0000000100003178
|
|
size: 142
|
|
offset: 0x00002178
|
|
align: 0
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000000
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- sectname: __apple_names
|
|
segname: __DWARF
|
|
addr: 0x0000000100003206
|
|
size: 60
|
|
offset: 0x00002206
|
|
align: 0
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000000
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- sectname: __apple_namespac
|
|
segname: __DWARF
|
|
addr: 0x0000000100003242
|
|
size: 36
|
|
offset: 0x00002242
|
|
align: 0
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000000
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- sectname: __apple_types
|
|
segname: __DWARF
|
|
addr: 0x0000000100003266
|
|
size: 114
|
|
offset: 0x00002266
|
|
align: 0
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000000
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
- sectname: __apple_objc
|
|
segname: __DWARF
|
|
addr: 0x00000001000032D8
|
|
size: 36
|
|
offset: 0x000022D8
|
|
align: 0
|
|
reloff: 0x00000000
|
|
nreloc: 0
|
|
flags: 0x00000000
|
|
reserved1: 0x00000000
|
|
reserved2: 0x00000000
|
|
reserved3: 0x00000000
|
|
LinkEditData:
|
|
NameList:
|
|
- n_strx: 2
|
|
n_type: 0x0F
|
|
n_sect: 1
|
|
n_desc: 16
|
|
n_value: 4294967296
|
|
- n_strx: 22
|
|
n_type: 0x0F
|
|
n_sect: 1
|
|
n_desc: 0
|
|
n_value: 4294971216
|
|
StringTable:
|
|
- ''
|
|
- ''
|
|
- __mh_execute_header
|
|
- _main
|
|
DWARF:
|
|
debug_aranges:
|
|
- Length:
|
|
TotalLength: 44
|
|
Version: 2
|
|
CuOffset: 0
|
|
AddrSize: 8
|
|
SegSize: 0
|
|
Descriptors:
|
|
- Address: 0x0000000100000F50
|
|
Length: 52
|
|
...
|
|
|
|
#CHECK: DWARF:
|
|
#CHECK: debug_aranges:
|
|
#CHECK: - Length:
|
|
#CHECK: TotalLength: 44
|
|
#CHECK: Version: 2
|
|
#CHECK: CuOffset: 0
|
|
#CHECK: AddrSize: 8
|
|
#CHECK: SegSize: 0
|
|
#CHECK: Descriptors:
|
|
#CHECK: - Address: 0x0000000100000F50
|
|
#CHECK: Length: 52
|