xref: /llvm-project/llvm/test/tools/llvm-readobj/MachO/sections.test (revision 55c81d4282c5da0189711261a11537bc8a7fe85c)
1## Check how we print sections.
2
3## Show that llvm-readobj prints MachO all section types properly.
4# RUN: yaml2obj --docnum=1 %s -o %t1
5# RUN: llvm-readobj --sections %t1 | FileCheck %s
6
7# CHECK:  Type: Regular (0x0)
8# CHECK:  Type: ZeroFill (0x1)
9# CHECK:  Type: CStringLiterals (0x2)
10# CHECK:  Type: 4ByteLiterals (0x3)
11# CHECK:  Type: 8ByteLiterals (0x4)
12# CHECK:  Type: LiteralPointers (0x5)
13# CHECK:  Type: NonLazySymbolPointers (0x6)
14# CHECK:  Type: LazySymbolPointers (0x7)
15# CHECK:  Type: SymbolStubs (0x8)
16# CHECK:  Type: ModInitFuncPointers (0x9)
17# CHECK:  Type: ModTermFuncPointers (0xA)
18# CHECK:  Type: Coalesced (0xB)
19# CHECK:  Type: GBZeroFill (0xC)
20# CHECK:  Type: Interposing (0xD)
21# CHECK:  Type: 16ByteLiterals (0xE)
22# CHECK:  Type: DTraceDOF (0xF)
23# CHECK:  Type: LazyDylibSymbolPointers (0x10)
24# CHECK:  Type: ThreadLocalRegular (0x11)
25# CHECK:  Type: ThreadLocalZerofill (0x12)
26# CHECK:  Type: ThreadLocalVariables (0x13)
27# CHECK:  Type: ThreadLocalVariablePointers (0x14)
28# CHECK:  Type: ThreadLocalInitFunctionPointers (0x15)
29
30--- !mach-o
31FileHeader:
32  magic:           0xFEEDFACF
33  cputype:         0x01000007
34  cpusubtype:      0x80000003
35  filetype:        0x00000002
36  ncmds:           1
37  sizeofcmds:      1832
38  flags:           0x00002000
39  reserved:        0x00000000
40LoadCommands:
41  - cmd:             LC_SEGMENT_64
42    cmdsize:         1832
43    segname:         ''
44    vmaddr:          0x0000000000001000
45    vmsize:          4096
46    fileoff:         0
47    filesize:        4096
48    maxprot:         7
49    initprot:        7
50    nsects:          22
51    flags:           0
52    Sections:
53      - sectname:        ''
54        segname:         ''
55        addr:            0x000000000000000
56        size:            0
57        offset:          0x00000000
58        align:           0
59        reloff:          0x00000000
60        nreloc:          0
61        flags:           0x00000000
62        reserved1:       0x00000000
63        reserved2:       0x00000000
64        reserved3:       0x00000000
65      - sectname:        ''
66        segname:         ''
67        addr:            0x000000000000000
68        size:            0
69        offset:          0x00000000
70        align:           0
71        reloff:          0x00000000
72        nreloc:          0
73        flags:           0x00000001
74        reserved1:       0x00000000
75        reserved2:       0x00000000
76        reserved3:       0x00000000
77      - sectname:        ''
78        segname:         ''
79        addr:            0x000000000000000
80        size:            0
81        offset:          0x00000000
82        align:           0
83        reloff:          0x00000000
84        nreloc:          0
85        flags:           0x00000002
86        reserved1:       0x00000000
87        reserved2:       0x00000000
88        reserved3:       0x00000000
89      - sectname:        ''
90        segname:         ''
91        addr:            0x000000000000000
92        size:            0
93        offset:          0x00000000
94        align:           0
95        reloff:          0x00000000
96        nreloc:          0
97        flags:           0x00000003
98        reserved1:       0x00000000
99        reserved2:       0x00000000
100        reserved3:       0x00000000
101      - sectname:        ''
102        segname:         ''
103        addr:            0x000000000000000
104        size:            0
105        offset:          0x00000000
106        align:           0
107        reloff:          0x00000000
108        nreloc:          0
109        flags:           0x00000004
110        reserved1:       0x00000000
111        reserved2:       0x00000000
112        reserved3:       0x00000000
113      - sectname:        ''
114        segname:         ''
115        addr:            0x000000000000000
116        size:            0
117        offset:          0x00000000
118        align:           0
119        reloff:          0x00000000
120        nreloc:          0
121        flags:           0x00000005
122        reserved1:       0x00000000
123        reserved2:       0x00000000
124        reserved3:       0x00000000
125      - sectname:        ''
126        segname:         ''
127        addr:            0x000000000000000
128        size:            0
129        offset:          0x00000000
130        align:           0
131        reloff:          0x00000000
132        nreloc:          0
133        flags:           0x00000006
134        reserved1:       0x00000000
135        reserved2:       0x00000000
136        reserved3:       0x00000000
137      - sectname:        ''
138        segname:         ''
139        addr:            0x000000000000000
140        size:            0
141        offset:          0x00000000
142        align:           0
143        reloff:          0x00000000
144        nreloc:          0
145        flags:           0x00000007
146        reserved1:       0x00000000
147        reserved2:       0x00000000
148        reserved3:       0x00000000
149      - sectname:        ''
150        segname:         ''
151        addr:            0x000000000000000
152        size:            0
153        offset:          0x00000000
154        align:           0
155        reloff:          0x00000000
156        nreloc:          0
157        flags:           0x00000008
158        reserved1:       0x00000000
159        reserved2:       0x00000000
160        reserved3:       0x00000000
161      - sectname:        ''
162        segname:         ''
163        addr:            0x000000000000000
164        size:            0
165        offset:          0x00000000
166        align:           0
167        reloff:          0x00000000
168        nreloc:          0
169        flags:           0x00000009
170        reserved1:       0x00000000
171        reserved2:       0x00000000
172        reserved3:       0x00000000
173      - sectname:        ''
174        segname:         ''
175        addr:            0x000000000000000
176        size:            0
177        offset:          0x00000000
178        align:           0
179        reloff:          0x00000000
180        nreloc:          0
181        flags:           0x0000000a
182        reserved1:       0x00000000
183        reserved2:       0x00000000
184        reserved3:       0x00000000
185      - sectname:        ''
186        segname:         ''
187        addr:            0x000000000000000
188        size:            0
189        offset:          0x00000000
190        align:           0
191        reloff:          0x00000000
192        nreloc:          0
193        flags:           0x0000000b
194        reserved1:       0x00000000
195        reserved2:       0x00000000
196        reserved3:       0x00000000
197      - sectname:        ''
198        segname:         ''
199        addr:            0x000000000000000
200        size:            0
201        offset:          0x00000000
202        align:           0
203        reloff:          0x00000000
204        nreloc:          0
205        flags:           0x0000000c
206        reserved1:       0x00000000
207        reserved2:       0x00000000
208        reserved3:       0x00000000
209      - sectname:        ''
210        segname:         ''
211        addr:            0x000000000000000
212        size:            0
213        offset:          0x00000000
214        align:           0
215        reloff:          0x00000000
216        nreloc:          0
217        flags:           0x0000000d
218        reserved1:       0x00000000
219        reserved2:       0x00000000
220        reserved3:       0x00000000
221      - sectname:        ''
222        segname:         ''
223        addr:            0x000000000000000
224        size:            0
225        offset:          0x00000000
226        align:           0
227        reloff:          0x00000000
228        nreloc:          0
229        flags:           0x0000000e
230        reserved1:       0x00000000
231        reserved2:       0x00000000
232        reserved3:       0x00000000
233      - sectname:        ''
234        segname:         ''
235        addr:            0x000000000000000
236        size:            0
237        offset:          0x00000000
238        align:           0
239        reloff:          0x00000000
240        nreloc:          0
241        flags:           0x0000000f
242        reserved1:       0x00000000
243        reserved2:       0x00000000
244        reserved3:       0x00000000
245      - sectname:        ''
246        segname:         ''
247        addr:            0x000000000000000
248        size:            0
249        offset:          0x00000000
250        align:           0
251        reloff:          0x00000000
252        nreloc:          0
253        flags:           0x00000010
254        reserved1:       0x00000000
255        reserved2:       0x00000000
256        reserved3:       0x00000000
257      - sectname:        ''
258        segname:         ''
259        addr:            0x000000000000000
260        size:            0
261        offset:          0x00000000
262        align:           0
263        reloff:          0x00000000
264        nreloc:          0
265        flags:           0x00000011
266        reserved1:       0x00000000
267        reserved2:       0x00000000
268        reserved3:       0x00000000
269      - sectname:        ''
270        segname:         ''
271        addr:            0x000000000000000
272        size:            0
273        offset:          0x00000000
274        align:           0
275        reloff:          0x00000000
276        nreloc:          0
277        flags:           0x00000012
278        reserved1:       0x00000000
279        reserved2:       0x00000000
280        reserved3:       0x00000000
281      - sectname:        ''
282        segname:         ''
283        addr:            0x000000000000000
284        size:            0
285        offset:          0x00000000
286        align:           0
287        reloff:          0x00000000
288        nreloc:          0
289        flags:           0x00000013
290        reserved1:       0x00000000
291        reserved2:       0x00000000
292        reserved3:       0x00000000
293      - sectname:        ''
294        segname:         ''
295        addr:            0x000000000000000
296        size:            0
297        offset:          0x00000000
298        align:           0
299        reloff:          0x00000000
300        nreloc:          0
301        flags:           0x00000014
302        reserved1:       0x00000000
303        reserved2:       0x00000000
304        reserved3:       0x00000000
305      - sectname:        ''
306        segname:         ''
307        addr:            0x000000000000000
308        size:            0
309        offset:          0x00000000
310        align:           0
311        reloff:          0x00000000
312        nreloc:          0
313        flags:           0x00000015
314        reserved1:       0x00000000
315        reserved2:       0x00000000
316        reserved3:       0x00000000
317
318## Check that we can print sections for other targets.
319
320# RUN: llvm-readobj --sections %p/Inputs/trivial.obj.macho-i386 \
321# RUN:   | FileCheck %s --check-prefix MACHO-I386
322# RUN: llvm-readobj --sections %p/Inputs/trivial.obj.macho-x86-64 \
323# RUN:   | FileCheck %s --check-prefix MACHO-X86-64
324# RUN: llvm-readobj --sections %p/Inputs/trivial.obj.macho-ppc \
325# RUN:   | FileCheck %s --check-prefix MACHO-PPC
326# RUN: llvm-readobj --sections %p/Inputs/trivial.obj.macho-ppc64 \
327# RUN:   | FileCheck %s --check-prefix MACHO-PPC64
328# RUN: llvm-readobj --sections %p/Inputs/trivial.obj.macho-arm \
329# RUN:   | FileCheck %s --check-prefix MACHO-ARM
330
331# MACHO-I386:      Sections [
332# MACHO-I386-NEXT:   Section {
333# MACHO-I386-NEXT:     Index: 0
334# MACHO-I386-NEXT:     Name: __text (5F 5F 74 65 78 74 00 00 00 00 00 00 00 00 00 00)
335# MACHO-I386-NEXT:     Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)
336# MACHO-I386-NEXT:     Address: 0x0
337# MACHO-I386-NEXT:     Size: 0x22
338# MACHO-I386-NEXT:     Offset: 324
339# MACHO-I386-NEXT:     Alignment: 4
340# MACHO-I386-NEXT:     RelocationOffset: 0x174
341# MACHO-I386-NEXT:     RelocationCount: 4
342# MACHO-I386-NEXT:     Type: Regular (0x0)
343# MACHO-I386-NEXT:     Attributes [ (0x800004)
344# MACHO-I386-NEXT:       PureInstructions (0x800000)
345# MACHO-I386-NEXT:       SomeInstructions (0x4)
346# MACHO-I386-NEXT:     ]
347# MACHO-I386-NEXT:     Reserved1: 0x0
348# MACHO-I386-NEXT:     Reserved2: 0x0
349# MACHO-I386-NEXT:   }
350# MACHO-I386-NEXT:   Section {
351# MACHO-I386-NEXT:     Index: 1
352# MACHO-I386-NEXT:     Name: __cstring (5F 5F 63 73 74 72 69 6E 67 00 00 00 00 00 00 00)
353# MACHO-I386-NEXT:     Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)
354# MACHO-I386-NEXT:     Address: 0x22
355# MACHO-I386-NEXT:     Size: 0xD
356# MACHO-I386-NEXT:     Offset: 358
357# MACHO-I386-NEXT:     Alignment: 0
358# MACHO-I386-NEXT:     RelocationOffset: 0x0
359# MACHO-I386-NEXT:     RelocationCount: 0
360# MACHO-I386-NEXT:     Type: CStringLiterals (0x2)
361# MACHO-I386-NEXT:     Attributes [ (0x0)
362# MACHO-I386-NEXT:     ]
363# MACHO-I386-NEXT:     Reserved1: 0x0
364# MACHO-I386-NEXT:     Reserved2: 0x0
365# MACHO-I386-NEXT:   }
366
367# MACHO-X86-64:     Sections [
368# MACHO-X86-64-NEXT:  Section {
369# MACHO-X86-64-NEXT:    Index: 0
370# MACHO-X86-64-NEXT:    Name: __text (5F 5F 74 65 78 74 00 00 00 00 00 00 00 00 00 00)
371# MACHO-X86-64-NEXT:    Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)
372# MACHO-X86-64-NEXT:    Address: 0x0
373# MACHO-X86-64-NEXT:    Size: 0x16
374# MACHO-X86-64-NEXT:    Offset: 368
375# MACHO-X86-64-NEXT:    Alignment: 4
376# MACHO-X86-64-NEXT:    RelocationOffset: 0x194
377# MACHO-X86-64-NEXT:    RelocationCount: 3
378# MACHO-X86-64-NEXT:    Type: Regular (0x0)
379# MACHO-X86-64-NEXT:    Attributes [ (0x800004)
380# MACHO-X86-64-NEXT:      PureInstructions (0x800000)
381# MACHO-X86-64-NEXT:      SomeInstructions (0x4)
382# MACHO-X86-64-NEXT:    ]
383# MACHO-X86-64-NEXT:    Reserved1: 0x0
384# MACHO-X86-64-NEXT:    Reserved2: 0x0
385# MACHO-X86-64-NEXT:    Reserved3: 0x0
386# MACHO-X86-64-NEXT:  }
387# MACHO-X86-64-NEXT:  Section {
388# MACHO-X86-64-NEXT:    Index: 1
389# MACHO-X86-64-NEXT:    Name: __cstring (5F 5F 63 73 74 72 69 6E 67 00 00 00 00 00 00 00)
390# MACHO-X86-64-NEXT:    Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)
391# MACHO-X86-64-NEXT:    Address: 0x16
392# MACHO-X86-64-NEXT:    Size: 0xD
393# MACHO-X86-64-NEXT:    Offset: 390
394# MACHO-X86-64-NEXT:    Alignment: 0
395# MACHO-X86-64-NEXT:    RelocationOffset: 0x0
396# MACHO-X86-64-NEXT:    RelocationCount: 0
397# MACHO-X86-64-NEXT:    Type: CStringLiterals (0x2)
398# MACHO-X86-64-NEXT:    Attributes [ (0x0)
399# MACHO-X86-64-NEXT:    ]
400# MACHO-X86-64-NEXT:    Reserved1: 0x0
401# MACHO-X86-64-NEXT:    Reserved2: 0x0
402# MACHO-X86-64-NEXT:    Reserved3: 0x0
403# MACHO-X86-64-NEXT:  }
404# MACHO-X86-64-NEXT:]
405
406# MACHO-PPC: Sections [
407# MACHO-PPC-NEXT:   Section {
408# MACHO-PPC-NEXT:     Index: 0
409# MACHO-PPC-NEXT:     Name: __text (5F 5F 74 65 78 74 00 00 00 00 00 00 00 00 00 00)
410# MACHO-PPC-NEXT:     Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)
411# MACHO-PPC-NEXT:     Address: 0x0
412# MACHO-PPC-NEXT:     Size: 0x3C
413# MACHO-PPC-NEXT:     Offset: 528
414# MACHO-PPC-NEXT:     Alignment: 2
415# MACHO-PPC-NEXT:     RelocationOffset: 0x27C
416# MACHO-PPC-NEXT:     RelocationCount: 5
417# MACHO-PPC-NEXT:     Type: Regular (0x0)
418# MACHO-PPC-NEXT:     Attributes [ (0x800004)
419# MACHO-PPC-NEXT:       PureInstructions (0x800000)
420# MACHO-PPC-NEXT:       SomeInstructions (0x4)
421# MACHO-PPC-NEXT:     ]
422# MACHO-PPC-NEXT:     Reserved1: 0x0
423# MACHO-PPC-NEXT:     Reserved2: 0x0
424# MACHO-PPC-NEXT:   }
425# MACHO-PPC-NEXT:   Section {
426# MACHO-PPC-NEXT:     Index: 1
427# MACHO-PPC-NEXT:     Name: __picsymbolstub1 (5F 5F 70 69 63 73 79 6D 62 6F 6C 73 74 75 62 31)
428# MACHO-PPC-NEXT:     Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)
429# MACHO-PPC-NEXT:     Address: 0x40
430# MACHO-PPC-NEXT:     Size: 0x20
431# MACHO-PPC-NEXT:     Offset: 592
432# MACHO-PPC-NEXT:     Alignment: 5
433# MACHO-PPC-NEXT:     RelocationOffset: 0x2A4
434# MACHO-PPC-NEXT:     RelocationCount: 4
435# MACHO-PPC-NEXT:     Type: SymbolStubs (0x8)
436# MACHO-PPC-NEXT:     Attributes [ (0x800004)
437# MACHO-PPC-NEXT:       PureInstructions (0x800000)
438# MACHO-PPC-NEXT:       SomeInstructions (0x4)
439# MACHO-PPC-NEXT:     ]
440# MACHO-PPC-NEXT:     Reserved1: 0x0
441# MACHO-PPC-NEXT:     Reserved2: 0x20
442# MACHO-PPC-NEXT:   }
443# MACHO-PPC-NEXT:   Section {
444# MACHO-PPC-NEXT:     Index: 2
445# MACHO-PPC-NEXT:     Name: __data (5F 5F 64 61 74 61 00 00 00 00 00 00 00 00 00 00)
446# MACHO-PPC-NEXT:     Segment: __DATA (5F 5F 44 41 54 41 00 00 00 00 00 00 00 00 00 00)
447# MACHO-PPC-NEXT:     Address: 0x60
448# MACHO-PPC-NEXT:     Size: 0x4
449# MACHO-PPC-NEXT:     Offset: 624
450# MACHO-PPC-NEXT:     Alignment: 2
451# MACHO-PPC-NEXT:     RelocationOffset: 0x0
452# MACHO-PPC-NEXT:     RelocationCount: 0
453# MACHO-PPC-NEXT:     Type: Regular (0x0)
454# MACHO-PPC-NEXT:     Attributes [ (0x0)
455# MACHO-PPC-NEXT:     ]
456# MACHO-PPC-NEXT:     Reserved1: 0x0
457# MACHO-PPC-NEXT:     Reserved2: 0x0
458# MACHO-PPC-NEXT:   }
459# MACHO-PPC-NEXT:   Section {
460# MACHO-PPC-NEXT:     Index: 3
461# MACHO-PPC-NEXT:     Name: __nl_symbol_ptr (5F 5F 6E 6C 5F 73 79 6D 62 6F 6C 5F 70 74 72 00)
462# MACHO-PPC-NEXT:     Segment: __DATA (5F 5F 44 41 54 41 00 00 00 00 00 00 00 00 00 00)
463# MACHO-PPC-NEXT:     Address: 0x64
464# MACHO-PPC-NEXT:     Size: 0x4
465# MACHO-PPC-NEXT:     Offset: 628
466# MACHO-PPC-NEXT:     Alignment: 2
467# MACHO-PPC-NEXT:     RelocationOffset: 0x0
468# MACHO-PPC-NEXT:     RelocationCount: 0
469# MACHO-PPC-NEXT:     Type: NonLazySymbolPointers (0x6)
470# MACHO-PPC-NEXT:     Attributes [ (0x0)
471# MACHO-PPC-NEXT:     ]
472# MACHO-PPC-NEXT:     Reserved1: 0x1
473# MACHO-PPC-NEXT:     Reserved2: 0x0
474# MACHO-PPC-NEXT:   }
475# MACHO-PPC-NEXT:   Section {
476# MACHO-PPC-NEXT:     Index: 4
477# MACHO-PPC-NEXT:     Name: __la_symbol_ptr (5F 5F 6C 61 5F 73 79 6D 62 6F 6C 5F 70 74 72 00)
478# MACHO-PPC-NEXT:     Segment: __DATA (5F 5F 44 41 54 41 00 00 00 00 00 00 00 00 00 00)
479# MACHO-PPC-NEXT:     Address: 0x68
480# MACHO-PPC-NEXT:     Size: 0x4
481# MACHO-PPC-NEXT:     Offset: 632
482# MACHO-PPC-NEXT:     Alignment: 2
483# MACHO-PPC-NEXT:     RelocationOffset: 0x2C4
484# MACHO-PPC-NEXT:     RelocationCount: 1
485# MACHO-PPC-NEXT:     Type: LazySymbolPointers (0x7)
486# MACHO-PPC-NEXT:     Attributes [ (0x0)
487# MACHO-PPC-NEXT:     ]
488# MACHO-PPC-NEXT:     Reserved1: 0x2
489# MACHO-PPC-NEXT:     Reserved2: 0x0
490# MACHO-PPC-NEXT:   }
491# MACHO-PPC-NEXT: ]
492
493# MACHO-PPC64: Sections [
494# MACHO-PPC64-NEXT:   Section {
495# MACHO-PPC64-NEXT:     Index: 0
496# MACHO-PPC64-NEXT:     Name: __text (5F 5F 74 65 78 74 00 00 00 00 00 00 00 00 00 00)
497# MACHO-PPC64-NEXT:     Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)
498# MACHO-PPC64-NEXT:     Address: 0x0
499# MACHO-PPC64-NEXT:     Size: 0x3C
500# MACHO-PPC64-NEXT:     Offset: 608
501# MACHO-PPC64-NEXT:     Alignment: 2
502# MACHO-PPC64-NEXT:     RelocationOffset: 0x2D4
503# MACHO-PPC64-NEXT:     RelocationCount: 5
504# MACHO-PPC64-NEXT:     Type: Regular (0x0)
505# MACHO-PPC64-NEXT:     Attributes [ (0x800004)
506# MACHO-PPC64-NEXT:       PureInstructions (0x800000)
507# MACHO-PPC64-NEXT:       SomeInstructions (0x4)
508# MACHO-PPC64-NEXT:     ]
509# MACHO-PPC64-NEXT:     Reserved1: 0x0
510# MACHO-PPC64-NEXT:     Reserved2: 0x0
511# MACHO-PPC64-NEXT:     Reserved3: 0x0
512# MACHO-PPC64-NEXT:   }
513# MACHO-PPC64-NEXT:   Section {
514# MACHO-PPC64-NEXT:     Index: 1
515# MACHO-PPC64-NEXT:     Name: __picsymbolstub1 (5F 5F 70 69 63 73 79 6D 62 6F 6C 73 74 75 62 31)
516# MACHO-PPC64-NEXT:     Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)
517# MACHO-PPC64-NEXT:     Address: 0x40
518# MACHO-PPC64-NEXT:     Size: 0x20
519# MACHO-PPC64-NEXT:     Offset: 672
520# MACHO-PPC64-NEXT:     Alignment: 5
521# MACHO-PPC64-NEXT:     RelocationOffset: 0x2FC
522# MACHO-PPC64-NEXT:     RelocationCount: 4
523# MACHO-PPC64-NEXT:     Type: SymbolStubs (0x8)
524# MACHO-PPC64-NEXT:     Attributes [ (0x800004)
525# MACHO-PPC64-NEXT:       PureInstructions (0x800000)
526# MACHO-PPC64-NEXT:       SomeInstructions (0x4)
527# MACHO-PPC64-NEXT:     ]
528# MACHO-PPC64-NEXT:     Reserved1: 0x0
529# MACHO-PPC64-NEXT:     Reserved2: 0x20
530# MACHO-PPC64-NEXT:     Reserved3: 0x0
531# MACHO-PPC64-NEXT:   }
532# MACHO-PPC64-NEXT:   Section {
533# MACHO-PPC64-NEXT:     Index: 2
534# MACHO-PPC64-NEXT:     Name: __data (5F 5F 64 61 74 61 00 00 00 00 00 00 00 00 00 00)
535# MACHO-PPC64-NEXT:     Segment: __DATA (5F 5F 44 41 54 41 00 00 00 00 00 00 00 00 00 00)
536# MACHO-PPC64-NEXT:     Address: 0x60
537# MACHO-PPC64-NEXT:     Size: 0x4
538# MACHO-PPC64-NEXT:     Offset: 704
539# MACHO-PPC64-NEXT:     Alignment: 2
540# MACHO-PPC64-NEXT:     RelocationOffset: 0x0
541# MACHO-PPC64-NEXT:     RelocationCount: 0
542# MACHO-PPC64-NEXT:     Type: Regular (0x0)
543# MACHO-PPC64-NEXT:     Attributes [ (0x0)
544# MACHO-PPC64-NEXT:     ]
545# MACHO-PPC64-NEXT:     Reserved1: 0x0
546# MACHO-PPC64-NEXT:     Reserved2: 0x0
547# MACHO-PPC64-NEXT:     Reserved3: 0x0
548# MACHO-PPC64-NEXT:   }
549# MACHO-PPC64-NEXT:   Section {
550# MACHO-PPC64-NEXT:     Index: 3
551# MACHO-PPC64-NEXT:     Name: __nl_symbol_ptr (5F 5F 6E 6C 5F 73 79 6D 62 6F 6C 5F 70 74 72 00)
552# MACHO-PPC64-NEXT:     Segment: __DATA (5F 5F 44 41 54 41 00 00 00 00 00 00 00 00 00 00)
553# MACHO-PPC64-NEXT:     Address: 0x64
554# MACHO-PPC64-NEXT:     Size: 0x8
555# MACHO-PPC64-NEXT:     Offset: 708
556# MACHO-PPC64-NEXT:     Alignment: 2
557# MACHO-PPC64-NEXT:     RelocationOffset: 0x0
558# MACHO-PPC64-NEXT:     RelocationCount: 0
559# MACHO-PPC64-NEXT:     Type: NonLazySymbolPointers (0x6)
560# MACHO-PPC64-NEXT:     Attributes [ (0x0)
561# MACHO-PPC64-NEXT:     ]
562# MACHO-PPC64-NEXT:     Reserved1: 0x1
563# MACHO-PPC64-NEXT:     Reserved2: 0x0
564# MACHO-PPC64-NEXT:     Reserved3: 0x0
565# MACHO-PPC64-NEXT:   }
566# MACHO-PPC64-NEXT:   Section {
567# MACHO-PPC64-NEXT:     Index: 4
568# MACHO-PPC64-NEXT:     Name: __la_symbol_ptr (5F 5F 6C 61 5F 73 79 6D 62 6F 6C 5F 70 74 72 00)
569# MACHO-PPC64-NEXT:     Segment: __DATA (5F 5F 44 41 54 41 00 00 00 00 00 00 00 00 00 00)
570# MACHO-PPC64-NEXT:     Address: 0x6C
571# MACHO-PPC64-NEXT:     Size: 0x8
572# MACHO-PPC64-NEXT:     Offset: 716
573# MACHO-PPC64-NEXT:     Alignment: 2
574# MACHO-PPC64-NEXT:     RelocationOffset: 0x31C
575# MACHO-PPC64-NEXT:     RelocationCount: 1
576# MACHO-PPC64-NEXT:     Type: LazySymbolPointers (0x7)
577# MACHO-PPC64-NEXT:     Attributes [ (0x0)
578# MACHO-PPC64-NEXT:     ]
579# MACHO-PPC64-NEXT:     Reserved1: 0x2
580# MACHO-PPC64-NEXT:     Reserved2: 0x0
581# MACHO-PPC64-NEXT:     Reserved3: 0x0
582# MACHO-PPC64-NEXT:   }
583# MACHO-PPC64-NEXT: ]
584
585# MACHO-ARM:      Sections [
586# MACHO-ARM-NEXT:   Section {
587# MACHO-ARM-NEXT:    Index: 0
588# MACHO-ARM-NEXT:    Name: __text (5F 5F 74 65 78 74 00 00 00 00 00 00 00 00 00 00)
589# MACHO-ARM-NEXT:    Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)
590# MACHO-ARM-NEXT:    Address: 0x0
591# MACHO-ARM-NEXT:    Size: 0x3C
592# MACHO-ARM-NEXT:    Offset: 664
593# MACHO-ARM-NEXT:    Alignment: 2
594# MACHO-ARM-NEXT:    RelocationOffset: 0x2E0
595# MACHO-ARM-NEXT:    RelocationCount: 9
596# MACHO-ARM-NEXT:    Type: Regular (0x0)
597# MACHO-ARM-NEXT:    Attributes [ (0x800004)
598# MACHO-ARM-NEXT:      PureInstructions (0x800000)
599# MACHO-ARM-NEXT:      SomeInstructions (0x4)
600# MACHO-ARM-NEXT:    ]
601# MACHO-ARM-NEXT:    Reserved1: 0x0
602# MACHO-ARM-NEXT:    Reserved2: 0x0
603# MACHO-ARM-NEXT:  }
604# MACHO-ARM-NEXT:  Section {
605# MACHO-ARM-NEXT:    Index: 1
606# MACHO-ARM-NEXT:    Name: __textcoal_nt (5F 5F 74 65 78 74 63 6F 61 6C 5F 6E 74 00 00 00)
607# MACHO-ARM-NEXT:    Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)
608# MACHO-ARM-NEXT:    Address: 0x3C
609# MACHO-ARM-NEXT:    Size: 0x0
610# MACHO-ARM-NEXT:    Offset: 724
611# MACHO-ARM-NEXT:    Alignment: 0
612# MACHO-ARM-NEXT:    RelocationOffset: 0x0
613# MACHO-ARM-NEXT:    RelocationCount: 0
614# MACHO-ARM-NEXT:    Type: Coalesced (0xB)
615# MACHO-ARM-NEXT:    Attributes [ (0x800000)
616# MACHO-ARM-NEXT:      PureInstructions (0x800000)
617# MACHO-ARM-NEXT:    ]
618# MACHO-ARM-NEXT:    Reserved1: 0x0
619# MACHO-ARM-NEXT:    Reserved2: 0x0
620# MACHO-ARM-NEXT:  }
621# MACHO-ARM-NEXT:  Section {
622# MACHO-ARM-NEXT:    Index: 2
623# MACHO-ARM-NEXT:    Name: __const_coal (5F 5F 63 6F 6E 73 74 5F 63 6F 61 6C 00 00 00 00)
624# MACHO-ARM-NEXT:    Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)
625# MACHO-ARM-NEXT:    Address: 0x3C
626# MACHO-ARM-NEXT:    Size: 0x0
627# MACHO-ARM-NEXT:    Offset: 724
628# MACHO-ARM-NEXT:    Alignment: 0
629# MACHO-ARM-NEXT:    RelocationOffset: 0x0
630# MACHO-ARM-NEXT:    RelocationCount: 0
631# MACHO-ARM-NEXT:    Type: Coalesced (0xB)
632# MACHO-ARM-NEXT:    Attributes [ (0x0)
633# MACHO-ARM-NEXT:    ]
634# MACHO-ARM-NEXT:    Reserved1: 0x0
635# MACHO-ARM-NEXT:    Reserved2: 0x0
636# MACHO-ARM-NEXT:  }
637# MACHO-ARM-NEXT:  Section {
638# MACHO-ARM-NEXT:    Index: 3
639# MACHO-ARM-NEXT:    Name: __picsymbolstub4 (5F 5F 70 69 63 73 79 6D 62 6F 6C 73 74 75 62 34)
640# MACHO-ARM-NEXT:    Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)
641# MACHO-ARM-NEXT:    Address: 0x3C
642# MACHO-ARM-NEXT:    Size: 0x0
643# MACHO-ARM-NEXT:    Offset: 724
644# MACHO-ARM-NEXT:    Alignment: 0
645# MACHO-ARM-NEXT:    RelocationOffset: 0x0
646# MACHO-ARM-NEXT:    RelocationCount: 0
647# MACHO-ARM-NEXT:    Type: SymbolStubs (0x8)
648# MACHO-ARM-NEXT:    Attributes [ (0x0)
649# MACHO-ARM-NEXT:    ]
650# MACHO-ARM-NEXT:    Reserved1: 0x0
651# MACHO-ARM-NEXT:    Reserved2: 0x10
652# MACHO-ARM-NEXT:  }
653# MACHO-ARM-NEXT:  Section {
654# MACHO-ARM-NEXT:    Index: 4
655# MACHO-ARM-NEXT:    Name: __StaticInit (5F 5F 53 74 61 74 69 63 49 6E 69 74 00 00 00 00)
656# MACHO-ARM-NEXT:    Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)
657# MACHO-ARM-NEXT:    Address: 0x3C
658# MACHO-ARM-NEXT:    Size: 0x0
659# MACHO-ARM-NEXT:    Offset: 724
660# MACHO-ARM-NEXT:    Alignment: 0
661# MACHO-ARM-NEXT:    RelocationOffset: 0x0
662# MACHO-ARM-NEXT:    RelocationCount: 0
663# MACHO-ARM-NEXT:    Type: Regular (0x0)
664# MACHO-ARM-NEXT:    Attributes [ (0x800000)
665# MACHO-ARM-NEXT:      PureInstructions (0x800000)
666# MACHO-ARM-NEXT:    ]
667# MACHO-ARM-NEXT:    Reserved1: 0x0
668# MACHO-ARM-NEXT:    Reserved2: 0x0
669# MACHO-ARM-NEXT:  }
670# MACHO-ARM-NEXT:  Section {
671# MACHO-ARM-NEXT:    Index: 5
672# MACHO-ARM-NEXT:    Name: __data (5F 5F 64 61 74 61 00 00 00 00 00 00 00 00 00 00)
673# MACHO-ARM-NEXT:    Segment: __DATA (5F 5F 44 41 54 41 00 00 00 00 00 00 00 00 00 00)
674# MACHO-ARM-NEXT:    Address: 0x3C
675# MACHO-ARM-NEXT:    Size: 0x4
676# MACHO-ARM-NEXT:    Offset: 724
677# MACHO-ARM-NEXT:    Alignment: 2
678# MACHO-ARM-NEXT:    RelocationOffset: 0x0
679# MACHO-ARM-NEXT:    RelocationCount: 0
680# MACHO-ARM-NEXT:    Type: Regular (0x0)
681# MACHO-ARM-NEXT:    Attributes [ (0x0)
682# MACHO-ARM-NEXT:    ]
683# MACHO-ARM-NEXT:    Reserved1: 0x0
684# MACHO-ARM-NEXT:    Reserved2: 0x0
685# MACHO-ARM-NEXT:  }
686# MACHO-ARM-NEXT:  Section {
687# MACHO-ARM-NEXT:    Index: 6
688# MACHO-ARM-NEXT:    Name: __nl_symbol_ptr (5F 5F 6E 6C 5F 73 79 6D 62 6F 6C 5F 70 74 72 00)
689# MACHO-ARM-NEXT:    Segment: __DATA (5F 5F 44 41 54 41 00 00 00 00 00 00 00 00 00 00)
690# MACHO-ARM-NEXT:    Address: 0x40
691# MACHO-ARM-NEXT:    Size: 0x8
692# MACHO-ARM-NEXT:    Offset: 728
693# MACHO-ARM-NEXT:    Alignment: 2
694# MACHO-ARM-NEXT:    RelocationOffset: 0x0
695# MACHO-ARM-NEXT:    RelocationCount: 0
696# MACHO-ARM-NEXT:    Type: NonLazySymbolPointers (0x6)
697# MACHO-ARM-NEXT:    Attributes [ (0x0)
698# MACHO-ARM-NEXT:    ]
699# MACHO-ARM-NEXT:    Reserved1: 0x0
700# MACHO-ARM-NEXT:    Reserved2: 0x0
701# MACHO-ARM-NEXT:  }
702# MACHO-ARM-NEXT: ]
703