1d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// RUN: llvm-mc -triple i386-apple-darwin9 %s -filetype=obj -o - | macho-dump --dump-section-data | FileCheck %s
2d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar
3d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar        .byte 0
4d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar
5d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar        // This file has size 2, the tail padding doesn't count.
6d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar        .zerofill       __DATA, __bss, sym_a, 1
7d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar
8d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK: ('cputype', 7)
9d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK: ('cpusubtype', 3)
10d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK: ('filetype', 1)
1144fa0473ae9144a8cfb4a500ae9de17239e69d2eDaniel Dunbar// CHECK: ('num_load_commands', 3)
12d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK: ('load_commands_size', 296)
13d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK: ('flag', 0)
14d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK: ('load_commands', [
15d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   # Load Command 0
16d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:  (('command', 1)
17d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('size', 192)
18d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('segment_name', '\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00')
19d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('vm_addr', 0)
20d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('vm_size', 2)
21d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('file_offset', 324)
22d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('file_size', 1)
23d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('maxprot', 7)
24d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('initprot', 7)
25d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('num_sections', 2)
26d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('flags', 0)
27d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('sections', [
28d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     # Section 0
29d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:    (('section_name', '__text\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00')
30d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('segment_name', '__TEXT\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00')
31d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('address', 0)
32d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('size', 1)
33d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('offset', 324)
34d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('alignment', 0)
35d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('reloc_offset', 0)
36d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('num_reloc', 0)
37d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('flags', 0x80000000)
38d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('reserved1', 0)
39d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('reserved2', 0)
40d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:    ),
41d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('_relocations', [
42d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ])
43d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     # Section 1
44d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:    (('section_name', '__bss\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00')
45d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('segment_name', '__DATA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00')
46d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('address', 1)
47d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('size', 1)
48d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('offset', 0)
49d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('alignment', 0)
50d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('reloc_offset', 0)
51d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('num_reloc', 0)
52d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('flags', 0x1)
53d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('reserved1', 0)
54d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('reserved2', 0)
55d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:    ),
56d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('_relocations', [
57d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ])
58d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ])
59d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:  ),
60d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   # Load Command 1
61d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:  (('command', 2)
62d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('size', 24)
63d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('symoff', 328)
64d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('nsyms', 1)
65d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('stroff', 340)
66d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('strsize', 8)
67d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('_string_data', '\x00sym_a\x00\x00')
68d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('_symbols', [
69d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     # Symbol 0
70d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:    (('n_strx', 1)
71d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('n_type', 0xe)
72d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('n_sect', 2)
73d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('n_desc', 0)
74d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('n_value', 1)
75d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:     ('_string', 'sym_a')
76d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:    ),
77d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ])
78d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:  ),
79d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   # Load Command 2
80d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:  (('command', 11)
81d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('size', 80)
82d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('ilocalsym', 0)
83d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('nlocalsym', 1)
84d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('iextdefsym', 1)
85d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('nextdefsym', 0)
86d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('iundefsym', 1)
87d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('nundefsym', 0)
88d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('tocoff', 0)
89d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('ntoc', 0)
90d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('modtaboff', 0)
91d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('nmodtab', 0)
92d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('extrefsymoff', 0)
93d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('nextrefsyms', 0)
94d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('indirectsymoff', 0)
95d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('nindirectsyms', 0)
96d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('extreloff', 0)
97d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('nextrel', 0)
98d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('locreloff', 0)
99d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('nlocrel', 0)
100d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ('_indirect_symbols', [
101d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:   ])
102d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK:  ),
103d5a8e98ef627a35284c9b5989664514f8f163968Daniel Dunbar// CHECK: ])
104