1 # RUN: yaml2obj %s | not llvm-dwarfdump --verify - | FileCheck %s --implicit-check-not=error:
3 # CHECK: error: DIE has DW_AT_decl_file with invalid encoding{{[[:space:]]}}
4 # CHECK-NEXT: 0x0000001a: DW_TAG_subprogram
5 # CHECK-NEXT: DW_AT_name [DW_FORM_strp] ( .debug_str[0x0000000d] = "main")
6 # CHECK-NEXT: DW_AT_low_pc [DW_FORM_addr] (0x0000000000001000)
7 # CHECK-NEXT: DW_AT_high_pc [DW_FORM_addr] (0x0000000000002000)
8 # CHECK-NEXT: DW_AT_decl_file [DW_FORM_strp] ( .debug_str[0x00000012] = "")
9 # CHECK-NEXT: DW_AT_call_line [DW_FORM_data1] (5){{[[:space:]]}}
10 # CHECK-NEXT: error: DIE has DW_AT_call_file with invalid encoding{{[[:space:]]}}
11 # CHECK-NEXT: 0x00000034: DW_TAG_inlined_subroutine
12 # CHECK-NEXT: DW_AT_name [DW_FORM_strp] ( .debug_str[0x00000013] = "inline1")
13 # CHECK-NEXT: DW_AT_low_pc [DW_FORM_addr] (0x0000000000001100)
14 # CHECK-NEXT: DW_AT_high_pc [DW_FORM_data4] (0x00000100)
15 # CHECK-NEXT: DW_AT_call_file [DW_FORM_strp] ( .debug_str[0x00000012] = "")
16 # CHECK-NEXT: DW_AT_call_line [DW_FORM_data1] (10){{[[:space:]]}}
17 # CHECK-NEXT: error: DIE has DW_AT_decl_file with invalid encoding{{[[:space:]]}}
18 # CHECK-NEXT: 0x0000004a: DW_TAG_subprogram
19 # CHECK-NEXT: DW_AT_name [DW_FORM_strp] ( .debug_str[0x0000001b] = "foo")
20 # CHECK-NEXT: DW_AT_low_pc [DW_FORM_addr] (0x0000000000002000)
21 # CHECK-NEXT: DW_AT_high_pc [DW_FORM_addr] (0x0000000000003000)
22 # CHECK-NEXT: DW_AT_decl_file [DW_FORM_sdata] (2)
23 # CHECK-NEXT: DW_AT_decl_line [DW_FORM_sdata] (3)
24 # CHECK-NEXT: DW_AT_call_file [DW_FORM_sdata] (4)
25 # CHECK-NEXT: DW_AT_call_line [DW_FORM_sdata] (5){{[[:space:]]}}
26 # CHECK-NEXT: error: DIE has DW_AT_decl_line with invalid encoding{{[[:space:]]}}
27 # CHECK-NEXT: 0x0000004a: DW_TAG_subprogram
28 # CHECK-NEXT: DW_AT_name [DW_FORM_strp] ( .debug_str[0x0000001b] = "foo")
29 # CHECK-NEXT: DW_AT_low_pc [DW_FORM_addr] (0x0000000000002000)
30 # CHECK-NEXT: DW_AT_high_pc [DW_FORM_addr] (0x0000000000003000)
31 # CHECK-NEXT: DW_AT_decl_file [DW_FORM_sdata] (2)
32 # CHECK-NEXT: DW_AT_decl_line [DW_FORM_sdata] (3)
33 # CHECK-NEXT: DW_AT_call_file [DW_FORM_sdata] (4)
34 # CHECK-NEXT: DW_AT_call_line [DW_FORM_sdata] (5){{[[:space:]]}}
35 # CHECK-NEXT: error: DIE has DW_AT_call_file with invalid encoding{{[[:space:]]}}
36 # CHECK-NEXT: 0x0000004a: DW_TAG_subprogram
37 # CHECK-NEXT: DW_AT_name [DW_FORM_strp] ( .debug_str[0x0000001b] = "foo")
38 # CHECK-NEXT: DW_AT_low_pc [DW_FORM_addr] (0x0000000000002000)
39 # CHECK-NEXT: DW_AT_high_pc [DW_FORM_addr] (0x0000000000003000)
40 # CHECK-NEXT: DW_AT_decl_file [DW_FORM_sdata] (2)
41 # CHECK-NEXT: DW_AT_decl_line [DW_FORM_sdata] (3)
42 # CHECK-NEXT: DW_AT_call_file [DW_FORM_sdata] (4)
43 # CHECK-NEXT: DW_AT_call_line [DW_FORM_sdata] (5){{[[:space:]]}}
44 # CHECK-NEXT: error: DIE has DW_AT_call_line with invalid encoding{{[[:space:]]}}
45 # CHECK-NEXT: 0x0000004a: DW_TAG_subprogram
46 # CHECK-NEXT: DW_AT_name [DW_FORM_strp] ( .debug_str[0x0000001b] = "foo")
47 # CHECK-NEXT: DW_AT_low_pc [DW_FORM_addr] (0x0000000000002000)
48 # CHECK-NEXT: DW_AT_high_pc [DW_FORM_addr] (0x0000000000003000)
49 # CHECK-NEXT: DW_AT_decl_file [DW_FORM_sdata] (2)
50 # CHECK-NEXT: DW_AT_decl_line [DW_FORM_sdata] (3)
51 # CHECK-NEXT: DW_AT_call_file [DW_FORM_sdata] (4)
52 # CHECK-NEXT: DW_AT_call_line [DW_FORM_sdata] (5){{[[:space:]]}}
53 # CHECK-NEXT: Verifying dwo Units...
54 # CHECK-NEXT: Verifying .debug_line...
55 # CHECK-NEXT: Verifying .debug_str_offsets...
56 # CHECK-NEXT: error: Aggregated error counts:
57 # CHECK-NEXT: error: Invalid encoding in DW_AT_decl_file occurred 4 time(s).
58 # CHECK-NEXT: error: Invalid file index in DW_AT_call_line occurred 1 time(s).
59 # CHECK-NEXT: error: Invalid file index in DW_AT_decl_line occurred 1 time(s).
76 - Code: 0x0000000000000001
77 Tag: DW_TAG_compile_unit
78 Children: DW_CHILDREN_yes
80 - Attribute: DW_AT_name
82 - Attribute: DW_AT_language
84 - Attribute: DW_AT_low_pc
86 - Code: 0x0000000000000002
87 Tag: DW_TAG_subprogram
88 Children: DW_CHILDREN_yes
90 - Attribute: DW_AT_name
92 - Attribute: DW_AT_low_pc
94 - Attribute: DW_AT_high_pc
96 - Attribute: DW_AT_decl_file
98 - Attribute: DW_AT_call_line
100 - Code: 0x0000000000000003
101 Tag: DW_TAG_inlined_subroutine
102 Children: DW_CHILDREN_no
104 - Attribute: DW_AT_name
106 - Attribute: DW_AT_low_pc
108 - Attribute: DW_AT_high_pc
110 - Attribute: DW_AT_call_file
112 - Attribute: DW_AT_call_line
114 - Code: 0x0000000000000004
115 Tag: DW_TAG_subprogram
116 Children: DW_CHILDREN_no
118 - Attribute: DW_AT_name
120 - Attribute: DW_AT_low_pc
122 - Attribute: DW_AT_high_pc
124 - Attribute: DW_AT_decl_file
126 - Attribute: DW_AT_decl_line
128 - Attribute: DW_AT_call_file
130 - Attribute: DW_AT_call_line
133 - Length: 0x0000000000000061
135 AbbrOffset: 0x0000000000000000
138 - AbbrCode: 0x00000001
140 - Value: 0x0000000000000001
141 - Value: 0x0000000000000002
142 - Value: 0x0000000000000000
143 - AbbrCode: 0x00000002
145 - Value: 0x000000000000000D
146 - Value: 0x0000000000001000
147 - Value: 0x0000000000002000
148 - Value: 0x0000000000000012
149 - Value: 0x0000000000000005
150 - AbbrCode: 0x00000003
152 - Value: 0x0000000000000013
153 - Value: 0x0000000000001100
154 - Value: 0x0000000000000100
155 - Value: 0x0000000000000012
156 - Value: 0x000000000000000A
157 - AbbrCode: 0x00000004
159 - Value: 0x000000000000001B
160 - Value: 0x0000000000002000
161 - Value: 0x0000000000003000
162 - Value: 0x0000000000000002
163 - Value: 0x0000000000000003
164 - Value: 0x0000000000000004
165 - Value: 0x0000000000000005
166 - AbbrCode: 0x00000000
168 - AbbrCode: 0x00000000