| # RUN: yaml2obj %s | obj2yaml | FileCheck %s | |
| --- !mach-o | |
| IsLittleEndian: true | |
| FileHeader: | |
| magic: 0xFEEDFACF | |
| cputype: 0x01000007 | |
| cpusubtype: 0x00000003 | |
| filetype: 0x00000001 | |
| ncmds: 4 | |
| sizeofcmds: 1392 | |
| flags: 0x00002000 | |
| reserved: 0x00000000 | |
| LoadCommands: | |
| - cmd: LC_SEGMENT_64 | |
| cmdsize: 1272 | |
| segname: '' | |
| vmaddr: 0 | |
| vmsize: 1086 | |
| fileoff: 1424 | |
| filesize: 1086 | |
| maxprot: 7 | |
| initprot: 7 | |
| nsects: 15 | |
| flags: 0 | |
| Sections: | |
| - sectname: __text | |
| segname: __TEXT | |
| addr: 0x0000000000000000 | |
| size: 93 | |
| offset: 0x00000590 | |
| align: 4 | |
| reloff: 0x000009D0 | |
| nreloc: 3 | |
| flags: 0x80000400 | |
| reserved1: 0x00000000 | |
| reserved2: 0x00000000 | |
| reserved3: 0x00000000 | |
| - sectname: __cstring | |
| segname: __TEXT | |
| addr: 0x000000000000005D | |
| size: 48 | |
| offset: 0x000005ED | |
| align: 0 | |
| reloff: 0x00000000 | |
| nreloc: 0 | |
| flags: 0x00000002 | |
| reserved1: 0x00000000 | |
| reserved2: 0x00000000 | |
| reserved3: 0x00000000 | |
| - sectname: __debug_str | |
| segname: __DWARF | |
| addr: 0x000000000000008D | |
| size: 182 | |
| offset: 0x0000061D | |
| align: 0 | |
| reloff: 0x00000000 | |
| nreloc: 0 | |
| flags: 0x02000000 | |
| reserved1: 0x00000000 | |
| reserved2: 0x00000000 | |
| reserved3: 0x00000000 | |
| - sectname: __debug_loc | |
| segname: __DWARF | |
| addr: 0x0000000000000143 | |
| size: 0 | |
| offset: 0x000006D3 | |
| align: 0 | |
| reloff: 0x00000000 | |
| nreloc: 0 | |
| flags: 0x02000000 | |
| reserved1: 0x00000000 | |
| reserved2: 0x00000000 | |
| reserved3: 0x00000000 | |
| - sectname: __debug_abbrev | |
| segname: __DWARF | |
| addr: 0x0000000000000143 | |
| size: 104 | |
| offset: 0x000006D3 | |
| align: 0 | |
| reloff: 0x00000000 | |
| nreloc: 0 | |
| flags: 0x02000000 | |
| reserved1: 0x00000000 | |
| reserved2: 0x00000000 | |
| reserved3: 0x00000000 | |
| - sectname: __debug_info | |
| segname: __DWARF | |
| addr: 0x00000000000001AB | |
| size: 146 | |
| offset: 0x0000073B | |
| align: 0 | |
| reloff: 0x000009E8 | |
| nreloc: 2 | |
| flags: 0x02000000 | |
| reserved1: 0x00000000 | |
| reserved2: 0x00000000 | |
| reserved3: 0x00000000 | |
| - sectname: __debug_ranges | |
| segname: __DWARF | |
| addr: 0x000000000000023D | |
| size: 0 | |
| offset: 0x000007CD | |
| align: 0 | |
| reloff: 0x00000000 | |
| nreloc: 0 | |
| flags: 0x02000000 | |
| reserved1: 0x00000000 | |
| reserved2: 0x00000000 | |
| reserved3: 0x00000000 | |
| - sectname: __debug_macinfo | |
| segname: __DWARF | |
| addr: 0x000000000000023D | |
| size: 1 | |
| offset: 0x000007CD | |
| align: 0 | |
| reloff: 0x00000000 | |
| nreloc: 0 | |
| flags: 0x02000000 | |
| reserved1: 0x00000000 | |
| reserved2: 0x00000000 | |
| reserved3: 0x00000000 | |
| - sectname: __apple_names | |
| segname: __DWARF | |
| addr: 0x000000000000023E | |
| size: 60 | |
| offset: 0x000007CE | |
| align: 0 | |
| reloff: 0x00000000 | |
| nreloc: 0 | |
| flags: 0x02000000 | |
| reserved1: 0x00000000 | |
| reserved2: 0x00000000 | |
| reserved3: 0x00000000 | |
| - sectname: __apple_objc | |
| segname: __DWARF | |
| addr: 0x000000000000027A | |
| size: 36 | |
| offset: 0x0000080A | |
| align: 0 | |
| reloff: 0x00000000 | |
| nreloc: 0 | |
| flags: 0x02000000 | |
| reserved1: 0x00000000 | |
| reserved2: 0x00000000 | |
| reserved3: 0x00000000 | |
| - sectname: __apple_namespac | |
| segname: __DWARF | |
| addr: 0x000000000000029E | |
| size: 36 | |
| offset: 0x0000082E | |
| align: 0 | |
| reloff: 0x00000000 | |
| nreloc: 0 | |
| flags: 0x02000000 | |
| reserved1: 0x00000000 | |
| reserved2: 0x00000000 | |
| reserved3: 0x00000000 | |
| - sectname: __apple_types | |
| segname: __DWARF | |
| addr: 0x00000000000002C2 | |
| size: 133 | |
| offset: 0x00000852 | |
| align: 0 | |
| reloff: 0x00000000 | |
| nreloc: 0 | |
| flags: 0x02000000 | |
| reserved1: 0x00000000 | |
| reserved2: 0x00000000 | |
| reserved3: 0x00000000 | |
| - sectname: __compact_unwind | |
| segname: __LD | |
| addr: 0x0000000000000348 | |
| size: 32 | |
| offset: 0x000008D8 | |
| align: 3 | |
| reloff: 0x000009F8 | |
| nreloc: 1 | |
| flags: 0x02000000 | |
| reserved1: 0x00000000 | |
| reserved2: 0x00000000 | |
| reserved3: 0x00000000 | |
| - sectname: __eh_frame | |
| segname: __TEXT | |
| addr: 0x0000000000000368 | |
| size: 64 | |
| offset: 0x000008F8 | |
| align: 3 | |
| reloff: 0x00000000 | |
| nreloc: 0 | |
| flags: 0x6800000B | |
| reserved1: 0x00000000 | |
| reserved2: 0x00000000 | |
| reserved3: 0x00000000 | |
| - sectname: __debug_line | |
| segname: __DWARF | |
| addr: 0x00000000000003A8 | |
| size: 150 | |
| offset: 0x00000938 | |
| align: 0 | |
| reloff: 0x00000A00 | |
| nreloc: 1 | |
| flags: 0x02000000 | |
| reserved1: 0x00000000 | |
| reserved2: 0x00000000 | |
| reserved3: 0x00000000 | |
| - cmd: LC_VERSION_MIN_MACOSX | |
| cmdsize: 16 | |
| version: 658432 | |
| sdk: 0 | |
| - cmd: LC_SYMTAB | |
| cmdsize: 24 | |
| symoff: 2568 | |
| nsyms: 2 | |
| stroff: 2600 | |
| strsize: 36 | |
| - cmd: LC_DYSYMTAB | |
| cmdsize: 80 | |
| ilocalsym: 0 | |
| nlocalsym: 0 | |
| iextdefsym: 0 | |
| nextdefsym: 1 | |
| iundefsym: 1 | |
| nundefsym: 1 | |
| 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: 24 | |
| n_type: 0x0F | |
| n_sect: 1 | |
| n_desc: 0 | |
| n_value: 0 | |
| - n_strx: 1 | |
| n_type: 0x01 | |
| n_sect: 0 | |
| n_desc: 0 | |
| n_value: 0 | |
| StringTable: | |
| - '' | |
| - _compilerrt_abort_impl | |
| - ___absvdi2 | |
| - '' | |
| DWARF: | |
| debug_str: | |
| - 'clang version 4.0.0 (trunk 290181) (llvm/trunk 290209)' | |
| - ../compiler-rt/lib/builtins/absvdi2.c | |
| - /Users/cbieneman/dev/open-source/llvm-build-rel | |
| - int | |
| - di_int | |
| - long long int | |
| - __absvdi2 | |
| - a | |
| - N | |
| - t | |
| debug_abbrev: | |
| - Code: 0x00000001 | |
| 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_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: 0x00000002 | |
| Tag: DW_TAG_base_type | |
| Children: DW_CHILDREN_no | |
| Attributes: | |
| - Attribute: DW_AT_name | |
| Form: DW_FORM_strp | |
| - Attribute: DW_AT_encoding | |
| Form: DW_FORM_data1 | |
| - Attribute: DW_AT_byte_size | |
| Form: DW_FORM_data1 | |
| - Code: 0x00000003 | |
| Tag: DW_TAG_typedef | |
| Children: DW_CHILDREN_no | |
| Attributes: | |
| - Attribute: DW_AT_type | |
| Form: DW_FORM_ref4 | |
| - 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 | |
| - Code: 0x00000004 | |
| Tag: DW_TAG_subprogram | |
| Children: DW_CHILDREN_yes | |
| Attributes: | |
| - Attribute: DW_AT_low_pc | |
| Form: DW_FORM_addr | |
| - Attribute: DW_AT_high_pc | |
| Form: DW_FORM_data4 | |
| - Attribute: DW_AT_frame_base | |
| Form: DW_FORM_exprloc | |
| - 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_prototyped | |
| Form: DW_FORM_flag_present | |
| - Attribute: DW_AT_type | |
| Form: DW_FORM_ref4 | |
| - Attribute: DW_AT_external | |
| Form: DW_FORM_flag_present | |
| - Code: 0x00000005 | |
| Tag: DW_TAG_formal_parameter | |
| Children: DW_CHILDREN_no | |
| Attributes: | |
| - Attribute: DW_AT_location | |
| Form: DW_FORM_exprloc | |
| - 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_type | |
| Form: DW_FORM_ref4 | |
| - Code: 0x00000006 | |
| Tag: DW_TAG_variable | |
| Children: DW_CHILDREN_no | |
| Attributes: | |
| - Attribute: DW_AT_location | |
| Form: DW_FORM_exprloc | |
| - 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_type | |
| Form: DW_FORM_ref4 | |
| - Code: 0x00000007 | |
| Tag: DW_TAG_const_type | |
| Children: DW_CHILDREN_no | |
| Attributes: | |
| - Attribute: DW_AT_type | |
| Form: DW_FORM_ref4 | |
| ... | |
| #CHECK: DWARF: | |
| #CHECK: debug_str: | |
| #CHECK: - 'clang version 4.0.0 (trunk 290181) (llvm/trunk 290209)' | |
| #CHECK: - ../compiler-rt/lib/builtins/absvdi2.c | |
| #CHECK: - /Users/cbieneman/dev/open-source/llvm-build-rel | |
| #CHECK: - int | |
| #CHECK: - di_int | |
| #CHECK: - long long int | |
| #CHECK: - __absvdi2 | |
| #CHECK: - a | |
| #CHECK: - N | |
| #CHECK: - t | |
| #CHECK: debug_abbrev: | |
| #CHECK: - Code: 0x00000001 | |
| #CHECK: Tag: DW_TAG_compile_unit | |
| #CHECK: Children: DW_CHILDREN_yes | |
| #CHECK: Attributes: | |
| #CHECK: - Attribute: DW_AT_producer | |
| #CHECK: Form: DW_FORM_strp | |
| #CHECK: - Attribute: DW_AT_language | |
| #CHECK: Form: DW_FORM_data2 | |
| #CHECK: - Attribute: DW_AT_name | |
| #CHECK: Form: DW_FORM_strp | |
| #CHECK: - Attribute: DW_AT_stmt_list | |
| #CHECK: Form: DW_FORM_sec_offset | |
| #CHECK: - Attribute: DW_AT_comp_dir | |
| #CHECK: Form: DW_FORM_strp | |
| #CHECK: - Attribute: DW_AT_low_pc | |
| #CHECK: Form: DW_FORM_addr | |
| #CHECK: - Attribute: DW_AT_high_pc | |
| #CHECK: Form: DW_FORM_data4 | |
| #CHECK: - Code: 0x00000002 | |
| #CHECK: Tag: DW_TAG_base_type | |
| #CHECK: Children: DW_CHILDREN_no | |
| #CHECK: Attributes: | |
| #CHECK: - Attribute: DW_AT_name | |
| #CHECK: Form: DW_FORM_strp | |
| #CHECK: - Attribute: DW_AT_encoding | |
| #CHECK: Form: DW_FORM_data1 | |
| #CHECK: - Attribute: DW_AT_byte_size | |
| #CHECK: Form: DW_FORM_data1 | |
| #CHECK: - Code: 0x00000003 | |
| #CHECK: Tag: DW_TAG_typedef | |
| #CHECK: Children: DW_CHILDREN_no | |
| #CHECK: Attributes: | |
| #CHECK: - Attribute: DW_AT_type | |
| #CHECK: Form: DW_FORM_ref4 | |
| #CHECK: - Attribute: DW_AT_name | |
| #CHECK: Form: DW_FORM_strp | |
| #CHECK: - Attribute: DW_AT_decl_file | |
| #CHECK: Form: DW_FORM_data1 | |
| #CHECK: - Attribute: DW_AT_decl_line | |
| #CHECK: Form: DW_FORM_data1 | |
| #CHECK: - Code: 0x00000004 | |
| #CHECK: Tag: DW_TAG_subprogram | |
| #CHECK: Children: DW_CHILDREN_yes | |
| #CHECK: Attributes: | |
| #CHECK: - Attribute: DW_AT_low_pc | |
| #CHECK: Form: DW_FORM_addr | |
| #CHECK: - Attribute: DW_AT_high_pc | |
| #CHECK: Form: DW_FORM_data4 | |
| #CHECK: - Attribute: DW_AT_frame_base | |
| #CHECK: Form: DW_FORM_exprloc | |
| #CHECK: - Attribute: DW_AT_name | |
| #CHECK: Form: DW_FORM_strp | |
| #CHECK: - Attribute: DW_AT_decl_file | |
| #CHECK: Form: DW_FORM_data1 | |
| #CHECK: - Attribute: DW_AT_decl_line | |
| #CHECK: Form: DW_FORM_data1 | |
| #CHECK: - Attribute: DW_AT_prototyped | |
| #CHECK: Form: DW_FORM_flag_present | |
| #CHECK: - Attribute: DW_AT_type | |
| #CHECK: Form: DW_FORM_ref4 | |
| #CHECK: - Attribute: DW_AT_external | |
| #CHECK: Form: DW_FORM_flag_present | |
| #CHECK: - Code: 0x00000005 | |
| #CHECK: Tag: DW_TAG_formal_parameter | |
| #CHECK: Children: DW_CHILDREN_no | |
| #CHECK: Attributes: | |
| #CHECK: - Attribute: DW_AT_location | |
| #CHECK: Form: DW_FORM_exprloc | |
| #CHECK: - Attribute: DW_AT_name | |
| #CHECK: Form: DW_FORM_strp | |
| #CHECK: - Attribute: DW_AT_decl_file | |
| #CHECK: Form: DW_FORM_data1 | |
| #CHECK: - Attribute: DW_AT_decl_line | |
| #CHECK: Form: DW_FORM_data1 | |
| #CHECK: - Attribute: DW_AT_type | |
| #CHECK: Form: DW_FORM_ref4 | |
| #CHECK: - Code: 0x00000006 | |
| #CHECK: Tag: DW_TAG_variable | |
| #CHECK: Children: DW_CHILDREN_no | |
| #CHECK: Attributes: | |
| #CHECK: - Attribute: DW_AT_location | |
| #CHECK: Form: DW_FORM_exprloc | |
| #CHECK: - Attribute: DW_AT_name | |
| #CHECK: Form: DW_FORM_strp | |
| #CHECK: - Attribute: DW_AT_decl_file | |
| #CHECK: Form: DW_FORM_data1 | |
| #CHECK: - Attribute: DW_AT_decl_line | |
| #CHECK: Form: DW_FORM_data1 | |
| #CHECK: - Attribute: DW_AT_type | |
| #CHECK: Form: DW_FORM_ref4 | |
| #CHECK: - Code: 0x00000007 | |
| #CHECK: Tag: DW_TAG_const_type | |
| #CHECK: Children: DW_CHILDREN_no | |
| #CHECK: Attributes: | |
| #CHECK: - Attribute: DW_AT_type | |
| #CHECK: Form: DW_FORM_ref4 | |
| #CHECK: ... |