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
10 // CHECK: File: <stdin>
11 // CHECK: Format: Mach-O 64-bit x86-64
12 // CHECK: Arch: x86_64
13 // CHECK: AddressSize: 64bit
14 // CHECK: MachHeader {
15 // CHECK: Magic: Magic64 (0xFEEDFACF)
16 // CHECK: CpuType: X86-64 (0x1000007)
17 // CHECK: CpuSubType: CPU_SUBTYPE_X86_64_ALL (0x3)
18 // CHECK: FileType: Relocatable (0x1)
19 // CHECK: NumOfLoadCommands: 3
20 // CHECK: SizeOfLoadCommands: 336
21 // CHECK: Flags [ (0x0)
23 // CHECK: Reserved: 0x0
28 // CHECK: Name: __text (5F 5F 74 65 78 74 00 00 00 00 00 00 00 00 00 00)
29 // CHECK: Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)
30 // CHECK: Address: 0x0
33 // CHECK: Alignment: 0
34 // CHECK: RelocationOffset: 0x0
35 // CHECK: RelocationCount: 0
37 // CHECK: Attributes [ (0x800000)
38 // CHECK: PureInstructions (0x800000)
40 // CHECK: Reserved1: 0x0
41 // CHECK: Reserved2: 0x0
42 // CHECK: Reserved3: 0x0
43 // CHECK: SectionData (
48 // CHECK: Name: __thread_vars (5F 5F 74 68 72 65 61 64 5F 76 61 72 73 00 00 00)
49 // CHECK: Segment: __DATA (5F 5F 44 41 54 41 00 00 00 00 00 00 00 00 00 00)
50 // CHECK: Address: 0x0
53 // CHECK: Alignment: 0
54 // CHECK: RelocationOffset: 0x0
55 // CHECK: RelocationCount: 0
57 // CHECK: Attributes [ (0x0)
59 // CHECK: Reserved1: 0x0
60 // CHECK: Reserved2: 0x0
61 // CHECK: Reserved3: 0x0
62 // CHECK: SectionData (
63 // CHECK: 0000: 00000000 00000000 00000000 00000000 |................|
64 // CHECK: 0010: 00000000 00000000 |........|
68 // CHECK: Relocations [
72 // CHECK: Name: _a (1)
74 // CHECK: Type: Section (0xE)
75 // CHECK: Section: __thread_vars (0x2)
76 // CHECK: RefType: UndefinedNonLazy (0x0)
77 // CHECK: Flags [ (0x0)
82 // CHECK: Indirect Symbols {
88 // CHECK: Cmd: LC_SEGMENT_64
92 // CHECK: vmsize: 0x18
93 // CHECK: fileoff: 368
94 // CHECK: filesize: 24
95 // CHECK: maxprot: rwx
96 // CHECK: initprot: rwx
101 // CHECK: ilocalsym: 0
102 // CHECK: nlocalsym: 0
103 // CHECK: iextdefsym: 0
104 // CHECK: nextdefsym: 1
105 // CHECK: iundefsym: 1
106 // CHECK: nundefsym: 0
109 // CHECK: modtaboff: 0
111 // CHECK: extrefsymoff: 0
112 // CHECK: nextrefsyms: 0
113 // CHECK: indirectsymoff: 0
114 // CHECK: nindirectsyms: 0
115 // CHECK: extreloff: 0
117 // CHECK: locreloff: 0