18f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// RUN: llvm-mc -triple i386-apple-darwin9 %s -filetype=obj -o - | macho-dump | FileCheck %s
28f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar
38f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar        .comm           sym_comm_B, 2
48f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar        .comm           sym_comm_A, 4
58f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar        .comm           sym_comm_C, 8, 2
68f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar        .comm           sym_comm_D, 2, 3
78f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar
88f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar        .no_dead_strip sym_comm_C
98f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar
108f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK: ('cputype', 7)
118f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK: ('cpusubtype', 3)
128f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK: ('filetype', 1)
1344fa0473ae9144a8cfb4a500ae9de17239e69d2eDaniel Dunbar// CHECK: ('num_load_commands', 3)
148f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK: ('load_commands_size', 228)
158f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK: ('flag', 0)
168f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK: ('load_commands', [
178f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   # Load Command 0
188f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:  (('command', 1)
198f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('size', 124)
208f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('segment_name', '\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00')
218f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('vm_addr', 0)
228f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('vm_size', 0)
238f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('file_offset', 256)
248f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('file_size', 0)
258f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('maxprot', 7)
268f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('initprot', 7)
278f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('num_sections', 1)
288f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('flags', 0)
298f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('sections', [
308f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     # Section 0
318f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:    (('section_name', '__text\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00')
328f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('segment_name', '__TEXT\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00')
338f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('address', 0)
348f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('size', 0)
358f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('offset', 256)
368f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('alignment', 0)
378f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('reloc_offset', 0)
388f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('num_reloc', 0)
398f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('flags', 0x80000000)
408f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('reserved1', 0)
418f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('reserved2', 0)
428f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:    ),
438f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('_relocations', [
448f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ])
458f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ])
468f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:  ),
478f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   # Load Command 1
488f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:  (('command', 2)
498f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('size', 24)
508f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('symoff', 256)
518f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('nsyms', 4)
528f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('stroff', 304)
538f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('strsize', 48)
548f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('_string_data', '\x00sym_comm_B\x00sym_comm_A\x00sym_comm_C\x00sym_comm_D\x00\x00\x00\x00')
558f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('_symbols', [
568f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     # Symbol 0
578f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:    (('n_strx', 12)
588f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_type', 0x1)
598f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_sect', 0)
608f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_desc', 0)
618f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_value', 4)
628f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('_string', 'sym_comm_A')
638f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:    ),
648f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     # Symbol 1
658f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:    (('n_strx', 1)
668f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_type', 0x1)
678f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_sect', 0)
688f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_desc', 0)
698f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_value', 2)
708f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('_string', 'sym_comm_B')
718f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:    ),
728f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     # Symbol 2
738f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:    (('n_strx', 23)
748f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_type', 0x1)
758f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_sect', 0)
768f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_desc', 544)
778f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_value', 8)
788f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('_string', 'sym_comm_C')
798f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:    ),
808f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     # Symbol 3
818f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:    (('n_strx', 34)
828f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_type', 0x1)
838f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_sect', 0)
848f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_desc', 768)
858f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('n_value', 2)
868f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:     ('_string', 'sym_comm_D')
878f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:    ),
888f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ])
898f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:  ),
908f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   # Load Command 2
918f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:  (('command', 11)
928f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('size', 80)
938f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('ilocalsym', 0)
948f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('nlocalsym', 0)
958f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('iextdefsym', 0)
968f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('nextdefsym', 0)
978f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('iundefsym', 0)
988f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('nundefsym', 4)
998f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('tocoff', 0)
1008f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('ntoc', 0)
1018f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('modtaboff', 0)
1028f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('nmodtab', 0)
1038f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('extrefsymoff', 0)
1048f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('nextrefsyms', 0)
1058f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('indirectsymoff', 0)
1068f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('nindirectsyms', 0)
1078f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('extreloff', 0)
1088f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('nextrel', 0)
1098f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('locreloff', 0)
1108f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('nlocrel', 0)
1118f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ('_indirect_symbols', [
1128f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:   ])
1138f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK:  ),
1148f4d146c340c9423271ebd7bb3fd32b880000bc9Daniel Dunbar// CHECK: ])
115