1 // RUN: llvm-mc -triple x86_64-apple-darwin %s -filetype=obj -o - | llvm-readobj -file-headers -s -sd -r -t -macho-segment -macho-dysymtab -macho-indirect-symbols | FileCheck %s
6 // CHECK: File: <stdin>
7 // CHECK: Format: Mach-O 64-bit x86-64
9 // CHECK: AddressSize: 64bit
10 // CHECK: MachHeader {
11 // CHECK: Magic: Magic64 (0xFEEDFACF)
12 // CHECK: CpuType: X86-64 (0x1000007)
13 // CHECK: CpuSubType: CPU_SUBTYPE_X86_64_ALL (0x3)
14 // CHECK: FileType: Relocatable (0x1)
15 // CHECK: NumOfLoadCommands: 3
16 // CHECK: SizeOfLoadCommands: 336
17 // CHECK: Flags [ (0x0)
19 // CHECK: Reserved: 0x0
24 // CHECK: Name: __text (5F 5F 74 65 78 74 00 00 00 00 00 00 00 00 00 00)
25 // CHECK: Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)
26 // CHECK: Address: 0x0
29 // CHECK: Alignment: 0
30 // CHECK: RelocationOffset: 0x0
31 // CHECK: RelocationCount: 0
33 // CHECK: Attributes [ (0x800000)
34 // CHECK: PureInstructions (0x800000)
36 // CHECK: Reserved1: 0x0
37 // CHECK: Reserved2: 0x0
38 // CHECK: Reserved3: 0x0
39 // CHECK: SectionData (
44 // CHECK: Name: __thread_data (5F 5F 74 68 72 65 61 64 5F 64 61 74 61 00 00 00)
45 // CHECK: Segment: __DATA (5F 5F 44 41 54 41 00 00 00 00 00 00 00 00 00 00)
46 // CHECK: Address: 0x0
49 // CHECK: Alignment: 0
50 // CHECK: RelocationOffset: 0x0
51 // CHECK: RelocationCount: 0
53 // CHECK: Attributes [ (0x0)
55 // CHECK: Reserved1: 0x0
56 // CHECK: Reserved2: 0x0
57 // CHECK: Reserved3: 0x0
58 // CHECK: SectionData (
59 // CHECK: 0000: 04000000 |....|
63 // CHECK: Relocations [
67 // CHECK: Name: _a$tlv$init (1)
68 // CHECK: Type: Section (0xE)
69 // CHECK: Section: __thread_data (0x2)
70 // CHECK: RefType: UndefinedNonLazy (0x0)
71 // CHECK: Flags [ (0x0)
76 // CHECK: Indirect Symbols {
82 // CHECK: Cmd: LC_SEGMENT_64
87 // CHECK: fileoff: 368
89 // CHECK: maxprot: rwx
90 // CHECK: initprot: rwx
95 // CHECK: ilocalsym: 0
96 // CHECK: nlocalsym: 1
97 // CHECK: iextdefsym: 1
98 // CHECK: nextdefsym: 0
99 // CHECK: iundefsym: 1
100 // CHECK: nundefsym: 0
103 // CHECK: modtaboff: 0
105 // CHECK: extrefsymoff: 0
106 // CHECK: nextrefsyms: 0
107 // CHECK: indirectsymoff: 0
108 // CHECK: nindirectsyms: 0
109 // CHECK: extreloff: 0
111 // CHECK: locreloff: 0