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