# RUN: yaml2obj %s -o %t.o
# RUN: llvm-dwarfdump -arch arm64 --debug-line --verify %t.o 2>&1 | FileCheck %s
# REQUIRES: system-darwin
# CHECK-NOT: error: .debug_line[0x{{[0-9a-f]+}}][0] has invalid file index 1 (valid values are [1,0]):
--- !mach-o
FileHeader:
magic: 0xFEEDFACF
cputype: 0x100000C
cpusubtype: 0x0
filetype: 0x1
ncmds: 4
sizeofcmds: 1000
flags: 0x2000
reserved: 0x0
LoadCommands:
- cmd: LC_SEGMENT_64
cmdsize: 872
segname: ''
vmaddr: 0
vmsize: 635
fileoff: 1032
filesize: 635
maxprot: 7
initprot: 7
nsects: 10
flags: 0
Sections:
- sectname: __text
segname: __TEXT
addr: 0x0
size: 4
offset: 0x408
align: 2
reloff: 0x0
nreloc: 0
flags: 0x80000400
reserved1: 0x0
reserved2: 0x0
reserved3: 0x0
content: C0035FD6
- sectname: __debug_abbrev
segname: __DWARF
addr: 0x4
size: 50
offset: 0x40C
align: 0
reloff: 0x0
nreloc: 0
flags: 0x2000000
reserved1: 0x0
reserved2: 0x0
reserved3: 0x0
- sectname: __debug_info
segname: __DWARF
addr: 0x36
size: 76
offset: 0x43E
align: 0
reloff: 0x688
nreloc: 2
flags: 0x2000000
reserved1: 0x0
reserved2: 0x0
reserved3: 0x0
relocations:
- address: 0x33
symbolnum: 1
pcrel: false
length: 3
extern: false
type: 0
scattered: false
value: 0
- address: 0x26
symbolnum: 1
pcrel: false
length: 3
extern: false
type: 0
scattered: false
value: 0
- sectname: __debug_str
segname: __DWARF
addr: 0x82
size: 196
offset: 0x48A
align: 0
reloff: 0x0
nreloc: 0
flags: 0x2000000
reserved1: 0x0
reserved2: 0x0
reserved3: 0x0
- sectname: __apple_names
segname: __DWARF
addr: 0x146
size: 88
offset: 0x54E
align: 0
reloff: 0x0
nreloc: 0
flags: 0x2000000
reserved1: 0x0
reserved2: 0x0
reserved3: 0x0
content: 485341480100000002000000020000000C000000000000000100000001000600FFFFFFFF000000008973880BEB28616A3800000048000000B8000000010000003200000000000000BC000000010000003200000000000000
- sectname: __apple_objc
segname: __DWARF
addr: 0x19E
size: 36
offset: 0x5A6
align: 0
reloff: 0x0
nreloc: 0
flags: 0x2000000
reserved1: 0x0
reserved2: 0x0
reserved3: 0x0
content: 485341480100000001000000000000000C000000000000000100000001000600FFFFFFFF
- sectname: __apple_namespac
segname: __DWARF
addr: 0x1C2
size: 36
offset: 0x5CA
align: 0
reloff: 0x0
nreloc: 0
flags: 0x2000000
reserved1: 0x0
reserved2: 0x0
reserved3: 0x0
content: 485341480100000001000000000000000C000000000000000100000001000600FFFFFFFF
- sectname: __apple_types
segname: __DWARF
addr: 0x1E6
size: 44
offset: 0x5EE
align: 0
reloff: 0x0
nreloc: 0
flags: 0x2000000
reserved1: 0x0
reserved2: 0x0
reserved3: 0x0
content: 48534148010000000100000000000000140000000000000003000000010006000300050004000B00FFFFFFFF
- sectname: __compact_unwind
segname: __LD
addr: 0x218
size: 32
offset: 0x620
align: 3
reloff: 0x698
nreloc: 1
flags: 0x2000000
reserved1: 0x0
reserved2: 0x0
reserved3: 0x0
content: '0000000000000000040000000000000200000000000000000000000000000000'
relocations:
- address: 0x0
symbolnum: 1
pcrel: false
length: 3
extern: false
type: 0
scattered: false
value: 0
- sectname: __debug_line
segname: __DWARF
addr: 0x238
size: 67
offset: 0x640
align: 0
reloff: 0x6A0
nreloc: 1
flags: 0x2000000
reserved1: 0x0
reserved2: 0x0
reserved3: 0x0
relocations:
- address: 0x35
symbolnum: 1
pcrel: false
length: 3
extern: false
type: 0
scattered: false
value: 0
- cmd: LC_BUILD_VERSION
cmdsize: 24
platform: 1
minos: 917504
sdk: 918528
ntools: 0
- cmd: LC_SYMTAB
cmdsize: 24
symoff: 1704
nsyms: 3
stroff: 1752
strsize: 24
- cmd: LC_DYSYMTAB
cmdsize: 80
ilocalsym: 0
nlocalsym: 2
iextdefsym: 2
nextdefsym: 1
iundefsym: 3
nundefsym: 0
tocoff: 0
ntoc: 0
modtaboff: 0
nmodtab: 0
extrefsymoff: 0
nextrefsyms: 0
indirectsymoff: 0
nindirectsyms: 0
extreloff: 0
nextrel: 0
locreloff: 0
nlocrel: 0
LinkEditData:
NameList:
- n_strx: 16
n_type: 0xE
n_sect: 1
n_desc: 0
n_value: 0
- n_strx: 10
n_type: 0xE
n_sect: 9
n_desc: 0
n_value: 536
- n_strx: 1
n_type: 0xF
n_sect: 1
n_desc: 0
n_value: 0
StringTable:
- ''
- __Z3foov
- ltmp1
- ltmp0
- ''
- ''
DWARF:
debug_str:
- 'Apple clang version 16.0.0 (clang-1600.0.9.14)'
- '/tmp/test.cpp'
- '/Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk'
- MacOSX14.4.sdk
- '/Users/shubham/Development/llvm-project/build_ninja'
- foo
- _Z3foov
debug_abbrev:
- ID: 0
Table:
- Code: 0x1
Tag: DW_TAG_compile_unit
Children: DW_CHILDREN_yes
Attributes:
- Attribute: DW_AT_producer
Form: DW_FORM_strp
- Attribute: DW_AT_language
Form: DW_FORM_data2
- Attribute: DW_AT_name
Form: DW_FORM_strp
- Attribute: DW_AT_LLVM_sysroot
Form: DW_FORM_strp
- Attribute: DW_AT_APPLE_sdk
Form: DW_FORM_strp
- Attribute: DW_AT_stmt_list
Form: DW_FORM_sec_offset
- Attribute: DW_AT_comp_dir
Form: DW_FORM_strp
- Attribute: DW_AT_low_pc
Form: DW_FORM_addr
- Attribute: DW_AT_high_pc
Form: DW_FORM_data4
- Code: 0x2
Tag: DW_TAG_subprogram
Children: DW_CHILDREN_no
Attributes:
- Attribute: DW_AT_low_pc
Form: DW_FORM_addr
- Attribute: DW_AT_high_pc
Form: DW_FORM_data4
- Attribute: DW_AT_APPLE_omit_frame_ptr
Form: DW_FORM_flag_present
- Attribute: DW_AT_frame_base
Form: DW_FORM_exprloc
- Attribute: DW_AT_linkage_name
Form: DW_FORM_strp
- Attribute: DW_AT_name
Form: DW_FORM_strp
- Attribute: DW_AT_decl_file
Form: DW_FORM_data1
- Attribute: DW_AT_decl_line
Form: DW_FORM_data1
- Attribute: DW_AT_external
Form: DW_FORM_flag_present
debug_info:
- Length: 0x48
Version: 4
AbbrevTableID: 0
AbbrOffset: 0x0
AddrSize: 8
Entries:
- AbbrCode: 0x1
Values:
- Value: 0x0
- Value: 0x4
- Value: 0x2F
- Value: 0x3D
- Value: 0x75
- Value: 0x0
- Value: 0x84
- Value: 0x0
- Value: 0x4
- AbbrCode: 0x2
Values:
- Value: 0x0
- Value: 0x4
- Value: 0x1
- Value: 0x1
BlockData: [ 0x6F ]
- Value: 0xBC
- Value: 0xB8
- Value: 0x1
- Value: 0x1
- Value: 0x1
- AbbrCode: 0x0
debug_line:
- Length: 38
Version: 4
PrologueLength: 29
MinInstLength: 1
MaxOpsPerInst: 1
DefaultIsStmt: 1
LineBase: 251
LineRange: 14
OpcodeBase: 13
StandardOpcodeLengths: [ 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1 ]
IncludeDirs:
- '/tmp'
Files:
- Name: ''
DirIdx: 10
ModTime: 11
Length: 12
Opcodes:
- Opcode: DW_LNS_extended_op
ExtLen: 1
SubOpcode: DW_LNE_end_sequence
Data: 0
...