[MIParser] Set RegClassOrRegBank during instruction parsing
[llvm-complete.git] / test / ObjectYAML / MachO / DWARF-debug_info.yaml
blob0ede72bd1f419875cc638606e39ea966422bae6a
1 # RUN: yaml2obj %s | obj2yaml | FileCheck %s
3 --- !mach-o
4 FileHeader:      
5   magic:           0xFEEDFACF
6   cputype:         0x01000007
7   cpusubtype:      0x00000003
8   filetype:        0x0000000A
9   ncmds:           5
10   sizeofcmds:      1800
11   flags:           0x00000000
12   reserved:        0x00000000
13 LoadCommands:    
14   - cmd:             LC_SEGMENT_64
15     cmdsize:         72
16     segname:         __PAGEZERO
17     vmaddr:          0
18     vmsize:          4294967296
19     fileoff:         0
20     filesize:        0
21     maxprot:         0
22     initprot:        0
23     nsects:          0
24     flags:           0
25   - cmd:             LC_SEGMENT_64
26     cmdsize:         472
27     segname:         __TEXT
28     vmaddr:          4294967296
29     vmsize:          4096
30     fileoff:         0
31     filesize:        0
32     maxprot:         7
33     initprot:        5
34     nsects:          5
35     flags:           0
36     Sections:        
37       - sectname:        __text
38         segname:         __TEXT
39         addr:            0x0000000100000F50
40         size:            52
41         offset:          0x00000000
42         align:           4
43         reloff:          0x00000000
44         nreloc:          0
45         flags:           0x80000400
46         reserved1:       0x00000000
47         reserved2:       0x00000000
48         reserved3:       0x00000000
49       - sectname:        __stubs
50         segname:         __TEXT
51         addr:            0x0000000100000F84
52         size:            6
53         offset:          0x00000000
54         align:           1
55         reloff:          0x00000000
56         nreloc:          0
57         flags:           0x80000408
58         reserved1:       0x00000000
59         reserved2:       0x00000006
60         reserved3:       0x00000000
61       - sectname:        __stub_helper
62         segname:         __TEXT
63         addr:            0x0000000100000F8C
64         size:            26
65         offset:          0x00000000
66         align:           2
67         reloff:          0x00000000
68         nreloc:          0
69         flags:           0x80000400
70         reserved1:       0x00000000
71         reserved2:       0x00000000
72         reserved3:       0x00000000
73       - sectname:        __cstring
74         segname:         __TEXT
75         addr:            0x0000000100000FA6
76         size:            14
77         offset:          0x00000000
78         align:           0
79         reloff:          0x00000000
80         nreloc:          0
81         flags:           0x00000002
82         reserved1:       0x00000000
83         reserved2:       0x00000000
84         reserved3:       0x00000000
85       - sectname:        __unwind_info
86         segname:         __TEXT
87         addr:            0x0000000100000FB4
88         size:            72
89         offset:          0x00000000
90         align:           2
91         reloff:          0x00000000
92         nreloc:          0
93         flags:           0x00000000
94         reserved1:       0x00000000
95         reserved2:       0x00000000
96         reserved3:       0x00000000
97   - cmd:             LC_SEGMENT_64
98     cmdsize:         232
99     segname:         __DATA
100     vmaddr:          4294971392
101     vmsize:          4096
102     fileoff:         0
103     filesize:        0
104     maxprot:         7
105     initprot:        3
106     nsects:          2
107     flags:           0
108     Sections:        
109       - sectname:        __nl_symbol_ptr
110         segname:         __DATA
111         addr:            0x0000000100001000
112         size:            16
113         offset:          0x00000000
114         align:           3
115         reloff:          0x00000000
116         nreloc:          0
117         flags:           0x00000006
118         reserved1:       0x00000001
119         reserved2:       0x00000000
120         reserved3:       0x00000000
121       - sectname:        __la_symbol_ptr
122         segname:         __DATA
123         addr:            0x0000000100001010
124         size:            8
125         offset:          0x00000000
126         align:           3
127         reloff:          0x00000000
128         nreloc:          0
129         flags:           0x00000007
130         reserved1:       0x00000003
131         reserved2:       0x00000000
132         reserved3:       0x00000000
133   - cmd:             LC_SEGMENT_64
134     cmdsize:         72
135     segname:         __LINKEDIT
136     vmaddr:          4294975488
137     vmsize:          4096
138     fileoff:         4096
139     filesize:        60
140     maxprot:         7
141     initprot:        1
142     nsects:          0
143     flags:           0
144   - cmd:             LC_SEGMENT_64
145     cmdsize:         952
146     segname:         __DWARF
147     vmaddr:          4294979584
148     vmsize:          4096
149     fileoff:         8192
150     filesize:        764
151     maxprot:         7
152     initprot:        3
153     nsects:          11
154     flags:           0
155     Sections:        
156       - sectname:        __debug_line
157         segname:         __DWARF
158         addr:            0x0000000100003000
159         size:            69
160         offset:          0x00002000
161         align:           0
162         reloff:          0x00000000
163         nreloc:          0
164         flags:           0x00000000
165         reserved1:       0x00000000
166         reserved2:       0x00000000
167         reserved3:       0x00000000
168       - sectname:        __debug_pubnames
169         segname:         __DWARF
170         addr:            0x0000000100003045
171         size:            27
172         offset:          0x00002045
173         align:           0
174         reloff:          0x00000000
175         nreloc:          0
176         flags:           0x00000000
177         reserved1:       0x00000000
178         reserved2:       0x00000000
179         reserved3:       0x00000000
180       - sectname:        __debug_pubtypes
181         segname:         __DWARF
182         addr:            0x0000000100003060
183         size:            35
184         offset:          0x00002060
185         align:           0
186         reloff:          0x00000000
187         nreloc:          0
188         flags:           0x00000000
189         reserved1:       0x00000000
190         reserved2:       0x00000000
191         reserved3:       0x00000000
192       - sectname:        __debug_aranges
193         segname:         __DWARF
194         addr:            0x0000000100003083
195         size:            48
196         offset:          0x00002083
197         align:           0
198         reloff:          0x00000000
199         nreloc:          0
200         flags:           0x00000000
201         reserved1:       0x00000000
202         reserved2:       0x00000000
203         reserved3:       0x00000000
204       - sectname:        __debug_info
205         segname:         __DWARF
206         addr:            0x00000001000030B3
207         size:            121
208         offset:          0x000020B3
209         align:           0
210         reloff:          0x00000000
211         nreloc:          0
212         flags:           0x00000000
213         reserved1:       0x00000000
214         reserved2:       0x00000000
215         reserved3:       0x00000000
216       - sectname:        __debug_abbrev
217         segname:         __DWARF
218         addr:            0x000000010000312C
219         size:            76
220         offset:          0x0000212C
221         align:           0
222         reloff:          0x00000000
223         nreloc:          0
224         flags:           0x00000000
225         reserved1:       0x00000000
226         reserved2:       0x00000000
227         reserved3:       0x00000000
228       - sectname:        __debug_str
229         segname:         __DWARF
230         addr:            0x0000000100003178
231         size:            142
232         offset:          0x00002178
233         align:           0
234         reloff:          0x00000000
235         nreloc:          0
236         flags:           0x00000000
237         reserved1:       0x00000000
238         reserved2:       0x00000000
239         reserved3:       0x00000000
240       - sectname:        __apple_names
241         segname:         __DWARF
242         addr:            0x0000000100003206
243         size:            60
244         offset:          0x00002206
245         align:           0
246         reloff:          0x00000000
247         nreloc:          0
248         flags:           0x00000000
249         reserved1:       0x00000000
250         reserved2:       0x00000000
251         reserved3:       0x00000000
252       - sectname:        __apple_namespac
253         segname:         __DWARF
254         addr:            0x0000000100003242
255         size:            36
256         offset:          0x00002242
257         align:           0
258         reloff:          0x00000000
259         nreloc:          0
260         flags:           0x00000000
261         reserved1:       0x00000000
262         reserved2:       0x00000000
263         reserved3:       0x00000000
264       - sectname:        __apple_types
265         segname:         __DWARF
266         addr:            0x0000000100003266
267         size:            114
268         offset:          0x00002266
269         align:           0
270         reloff:          0x00000000
271         nreloc:          0
272         flags:           0x00000000
273         reserved1:       0x00000000
274         reserved2:       0x00000000
275         reserved3:       0x00000000
276       - sectname:        __apple_objc
277         segname:         __DWARF
278         addr:            0x00000001000032D8
279         size:            36
280         offset:          0x000022D8
281         align:           0
282         reloff:          0x00000000
283         nreloc:          0
284         flags:           0x00000000
285         reserved1:       0x00000000
286         reserved2:       0x00000000
287         reserved3:       0x00000000
288 LinkEditData:    
289   NameList:        
290     - n_strx:          2
291       n_type:          0x0F
292       n_sect:          1
293       n_desc:          16
294       n_value:         4294967296
295     - n_strx:          22
296       n_type:          0x0F
297       n_sect:          1
298       n_desc:          0
299       n_value:         4294971216
300   StringTable:     
301     - ''
302     - ''
303     - __mh_execute_header
304     - _main
305 DWARF:           
306   debug_abbrev:    
307     - Code:            0x00000001
308       Tag:             DW_TAG_compile_unit
309       Children:        DW_CHILDREN_yes
310       Attributes:      
311         - Attribute:       DW_AT_producer
312           Form:            DW_FORM_strp
313         - Attribute:       DW_AT_language
314           Form:            DW_FORM_data2
315         - Attribute:       DW_AT_name
316           Form:            DW_FORM_strp
317         - Attribute:       DW_AT_stmt_list
318           Form:            DW_FORM_sec_offset
319         - Attribute:       DW_AT_comp_dir
320           Form:            DW_FORM_strp
321         - Attribute:       DW_AT_low_pc
322           Form:            DW_FORM_addr
323         - Attribute:       DW_AT_high_pc
324           Form:            DW_FORM_data4
325     - Code:            0x00000002
326       Tag:             DW_TAG_subprogram
327       Children:        DW_CHILDREN_yes
328       Attributes:      
329         - Attribute:       DW_AT_low_pc
330           Form:            DW_FORM_addr
331         - Attribute:       DW_AT_high_pc
332           Form:            DW_FORM_data4
333         - Attribute:       DW_AT_frame_base
334           Form:            DW_FORM_exprloc
335         - Attribute:       DW_AT_name
336           Form:            DW_FORM_strp
337         - Attribute:       DW_AT_decl_file
338           Form:            DW_FORM_data1
339         - Attribute:       DW_AT_decl_line
340           Form:            DW_FORM_data1
341         - Attribute:       DW_AT_prototyped
342           Form:            DW_FORM_flag_present
343         - Attribute:       DW_AT_type
344           Form:            DW_FORM_ref4
345         - Attribute:       DW_AT_external
346           Form:            DW_FORM_flag_present
347     - Code:            0x00000003
348       Tag:             DW_TAG_formal_parameter
349       Children:        DW_CHILDREN_no
350       Attributes:      
351         - Attribute:       DW_AT_location
352           Form:            DW_FORM_exprloc
353         - Attribute:       DW_AT_name
354           Form:            DW_FORM_strp
355         - Attribute:       DW_AT_decl_file
356           Form:            DW_FORM_data1
357         - Attribute:       DW_AT_decl_line
358           Form:            DW_FORM_data1
359         - Attribute:       DW_AT_type
360           Form:            DW_FORM_ref4
361     - Code:            0x00000004
362       Tag:             DW_TAG_base_type
363       Children:        DW_CHILDREN_no
364       Attributes:      
365         - Attribute:       DW_AT_name
366           Form:            DW_FORM_strp
367         - Attribute:       DW_AT_encoding
368           Form:            DW_FORM_data1
369         - Attribute:       DW_AT_byte_size
370           Form:            DW_FORM_data1
371     - Code:            0x00000005
372       Tag:             DW_TAG_pointer_type
373       Children:        DW_CHILDREN_no
374       Attributes:      
375         - Attribute:       DW_AT_type
376           Form:            DW_FORM_ref4
377   debug_aranges:   
378     - Length:          
379         TotalLength:     44
380       Version:         2
381       CuOffset:        0
382       AddrSize:        8
383       SegSize:         0
384       Descriptors:     
385         - Address:         0x0000000100000F50
386           Length:          52
387   debug_info:      
388     - Length:          
389         TotalLength:     117
390       Version:         4
391       AbbrOffset:      0
392       AddrSize:        8
393       Entries:         
394         - AbbrCode:        0x00000001
395           Values:          
396             - Value:           0x0000000000000001
397             - Value:           0x000000000000000C
398             - Value:           0x0000000000000038
399             - Value:           0x0000000000000000
400             - Value:           0x0000000000000046
401             - Value:           0x0000000100000F50
402             - Value:           0x0000000000000034
403         - AbbrCode:        0x00000002
404           Values:          
405             - Value:           0x0000000100000F50
406             - Value:           0x0000000000000034
407             - Value:           0x0000000000000001
408               BlockData:       
409                 - 0x56
410             - Value:           0x0000000000000076
411             - Value:           0x0000000000000001
412             - Value:           0x0000000000000003
413             - Value:           0x0000000000000001
414             - Value:           0x0000000000000060
415             - Value:           0x0000000000000001
416         - AbbrCode:        0x00000003
417           Values:          
418             - Value:           0x0000000000000002
419               BlockData:       
420                 - 0x91
421                 - 0x78
422             - Value:           0x000000000000007B
423             - Value:           0x0000000000000001
424             - Value:           0x0000000000000003
425             - Value:           0x0000000000000060
426         - AbbrCode:        0x00000003
427           Values:          
428             - Value:           0x0000000000000002
429               BlockData:       
430                 - 0x91
431                 - 0x70
432             - Value:           0x0000000000000080
433             - Value:           0x0000000000000001
434             - Value:           0x0000000000000003
435             - Value:           0x0000000000000067
436         - AbbrCode:        0x00000000
437           Values:          
438         - AbbrCode:        0x00000004
439           Values:          
440             - Value:           0x0000000000000085
441             - Value:           0x0000000000000005
442             - Value:           0x0000000000000004
443         - AbbrCode:        0x00000005
444           Values:          
445             - Value:           0x000000000000006C
446         - AbbrCode:        0x00000005
447           Values:          
448             - Value:           0x0000000000000071
449         - AbbrCode:        0x00000004
450           Values:          
451             - Value:           0x0000000000000089
452             - Value:           0x0000000000000006
453             - Value:           0x0000000000000001
454         - AbbrCode:        0x00000000
455           Values:          
456   debug_line:      
457     - Length:          
458         TotalLength:     65
459       Version:         2
460       PrologueLength:  36
461       MinInstLength:   1
462       DefaultIsStmt:   1
463       LineBase:        251
464       LineRange:       14
465       OpcodeBase:      13
466       StandardOpcodeLengths: 
467         - 0
468         - 1
469         - 1
470         - 1
471         - 1
472         - 0
473         - 0
474         - 0
475         - 1
476         - 0
477         - 0
478         - 1
479       IncludeDirs:     
480       Files:           
481         - Name:            hello_world.c
482           DirIdx:          0
483           ModTime:         0
484           Length:          0
485       Opcodes:         
486         - Opcode:          DW_LNS_extended_op
487           ExtLen:          9
488           SubOpcode:       DW_LNE_set_address
489           Data:            4294971216
490         - Opcode:          0x14
491           Data:            4294971216
492         - Opcode:          DW_LNS_set_column
493           Data:            3
494         - Opcode:          DW_LNS_set_prologue_end
495           Data:            3
496         - Opcode:          DW_LNS_const_add_pc
497           Data:            3
498         - Opcode:          0xBB
499           Data:            3
500         - Opcode:          0xBB
501           Data:            3
502         - Opcode:          DW_LNS_advance_pc
503           Data:            11
504         - Opcode:          DW_LNS_extended_op
505           ExtLen:          1
506           SubOpcode:       DW_LNE_end_sequence
507           Data:            11
512 #CHECK: DWARF:           
513 #CHECK:   debug_info:      
514 #CHECK:     - Length:          
515 #CHECK:         TotalLength:     117
516 #CHECK:       Version:         4
517 #CHECK:       AbbrOffset:      0
518 #CHECK:       AddrSize:        8
519 #CHECK:       Entries:         
520 #CHECK:         - AbbrCode:        0x00000001
521 #CHECK:           Values:          
522 #CHECK:             - Value:           0x0000000000000001
523 #CHECK:             - Value:           0x000000000000000C
524 #CHECK:             - Value:           0x0000000000000038
525 #CHECK:             - Value:           0x0000000000000000
526 #CHECK:             - Value:           0x0000000000000046
527 #CHECK:             - Value:           0x0000000100000F50
528 #CHECK:             - Value:           0x0000000000000034
529 #CHECK:         - AbbrCode:        0x00000002
530 #CHECK:           Values:          
531 #CHECK:             - Value:           0x0000000100000F50
532 #CHECK:             - Value:           0x0000000000000034
533 #CHECK:             - Value:           0x0000000000000001
534 #CHECK:               BlockData:       
535 #CHECK:                 - 0x56
536 #CHECK:             - Value:           0x0000000000000076
537 #CHECK:             - Value:           0x0000000000000001
538 #CHECK:             - Value:           0x0000000000000003
539 #CHECK:             - Value:           0x0000000000000001
540 #CHECK:             - Value:           0x0000000000000060
541 #CHECK:             - Value:           0x0000000000000001
542 #CHECK:         - AbbrCode:        0x00000003
543 #CHECK:           Values:          
544 #CHECK:             - Value:           0x0000000000000002
545 #CHECK:               BlockData:       
546 #CHECK:                 - 0x91
547 #CHECK:                 - 0x78
548 #CHECK:             - Value:           0x000000000000007B
549 #CHECK:             - Value:           0x0000000000000001
550 #CHECK:             - Value:           0x0000000000000003
551 #CHECK:             - Value:           0x0000000000000060
552 #CHECK:         - AbbrCode:        0x00000003
553 #CHECK:           Values:          
554 #CHECK:             - Value:           0x0000000000000002
555 #CHECK:               BlockData:       
556 #CHECK:                 - 0x91
557 #CHECK:                 - 0x70
558 #CHECK:             - Value:           0x0000000000000080
559 #CHECK:             - Value:           0x0000000000000001
560 #CHECK:             - Value:           0x0000000000000003
561 #CHECK:             - Value:           0x0000000000000067
562 #CHECK:         - AbbrCode:        0x00000000
563 #CHECK:           Values:          
564 #CHECK:         - AbbrCode:        0x00000004
565 #CHECK:           Values:          
566 #CHECK:             - Value:           0x0000000000000085
567 #CHECK:             - Value:           0x0000000000000005
568 #CHECK:             - Value:           0x0000000000000004
569 #CHECK:         - AbbrCode:        0x00000005
570 #CHECK:           Values:          
571 #CHECK:             - Value:           0x000000000000006C
572 #CHECK:         - AbbrCode:        0x00000005
573 #CHECK:           Values:          
574 #CHECK:             - Value:           0x0000000000000071
575 #CHECK:         - AbbrCode:        0x00000004
576 #CHECK:           Values:          
577 #CHECK:             - Value:           0x0000000000000089
578 #CHECK:             - Value:           0x0000000000000006
579 #CHECK:             - Value:           0x0000000000000001
580 #CHECK:         - AbbrCode:        0x00000000
581 #CHECK:           Values: