Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / bolt / test / X86 / Inputs / dwarf4-df-no-base.s
blob8599dd04e759148c8b763aa353aeb4e51693451e
1 # int foo() { return 0; }
2 # int main() { return foo(); }
3 # clang++ -ffunction-sections -g2 -gdwarf-4 -gsplit-dwarf -S main.cpp
5 .text
6 .file "main.cpp"
7 .section .text._Z3foov,"ax",@progbits
8 .globl _Z3foov # -- Begin function _Z3foov
9 .p2align 4, 0x90
10 .type _Z3foov,@function
11 _Z3foov: # @_Z3foov
12 .Lfunc_begin0:
13 .file 1 "." "main.cpp"
14 .loc 1 1 0 # main.cpp:1:0
15 .cfi_startproc
16 # %bb.0: # %entry
17 pushq %rbp
18 .cfi_def_cfa_offset 16
19 .cfi_offset %rbp, -16
20 movq %rsp, %rbp
21 .cfi_def_cfa_register %rbp
22 .Ltmp0:
23 .loc 1 1 13 prologue_end # main.cpp:1:13
24 xorl %eax, %eax
25 .loc 1 1 13 epilogue_begin is_stmt 0 # main.cpp:1:13
26 popq %rbp
27 .cfi_def_cfa %rsp, 8
28 retq
29 .Ltmp1:
30 .Lfunc_end0:
31 .size _Z3foov, .Lfunc_end0-_Z3foov
32 .cfi_endproc
33 # -- End function
34 .section .text.main,"ax",@progbits
35 .globl main # -- Begin function main
36 .p2align 4, 0x90
37 .type main,@function
38 main: # @main
39 .Lfunc_begin1:
40 .loc 1 2 0 is_stmt 1 # main.cpp:2:0
41 .cfi_startproc
42 # %bb.0: # %entry
43 pushq %rbp
44 .cfi_def_cfa_offset 16
45 .cfi_offset %rbp, -16
46 movq %rsp, %rbp
47 .cfi_def_cfa_register %rbp
48 subq $16, %rsp
49 movl $0, -4(%rbp)
50 .Ltmp2:
51 .loc 1 2 21 prologue_end # main.cpp:2:21
52 callq _Z3foov
53 .loc 1 2 14 epilogue_begin is_stmt 0 # main.cpp:2:14
54 addq $16, %rsp
55 popq %rbp
56 .cfi_def_cfa %rsp, 8
57 retq
58 .Ltmp3:
59 .Lfunc_end1:
60 .size main, .Lfunc_end1-main
61 .cfi_endproc
62 # -- End function
63 .section .debug_abbrev,"",@progbits
64 .byte 1 # Abbreviation Code
65 .byte 17 # DW_TAG_compile_unit
66 .byte 0 # DW_CHILDREN_no
67 .byte 16 # DW_AT_stmt_list
68 .byte 23 # DW_FORM_sec_offset
69 .byte 27 # DW_AT_comp_dir
70 .byte 14 # DW_FORM_strp
71 .ascii "\264B" # DW_AT_GNU_pubnames
72 .byte 25 # DW_FORM_flag_present
73 .ascii "\260B" # DW_AT_GNU_dwo_name
74 .byte 14 # DW_FORM_strp
75 .ascii "\261B" # DW_AT_GNU_dwo_id
76 .byte 7 # DW_FORM_data8
77 .byte 17 # DW_AT_low_pc
78 .byte 1 # DW_FORM_addr
79 .byte 85 # DW_AT_ranges
80 .byte 23 # DW_FORM_sec_offset
81 .ascii "\263B" # DW_AT_GNU_addr_base
82 .byte 23 # DW_FORM_sec_offset
83 .byte 0 # EOM(1)
84 .byte 0 # EOM(2)
85 .byte 0 # EOM(3)
86 .section .debug_info,"",@progbits
87 .Lcu_begin0:
88 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit
89 .Ldebug_info_start0:
90 .short 4 # DWARF version number
91 .long .debug_abbrev # Offset Into Abbrev. Section
92 .byte 8 # Address Size (in bytes)
93 .byte 1 # Abbrev [1] 0xb:0x25 DW_TAG_compile_unit
94 .long .Lline_table_start0 # DW_AT_stmt_list
95 .long .Lskel_string0 # DW_AT_comp_dir
96 # DW_AT_GNU_pubnames
97 .long .Lskel_string1 # DW_AT_GNU_dwo_name
98 .quad -252790171939032967 # DW_AT_GNU_dwo_id
99 .quad 0 # DW_AT_low_pc
100 .long .Ldebug_ranges0 # DW_AT_ranges
101 .long .Laddr_table_base0 # DW_AT_GNU_addr_base
102 .Ldebug_info_end0:
103 .section .debug_ranges,"",@progbits
104 .Ldebug_ranges0:
105 .quad .Lfunc_begin0
106 .quad .Lfunc_end0
107 .quad .Lfunc_begin1
108 .quad .Lfunc_end1
109 .quad 0
110 .quad 0
111 .section .debug_str,"MS",@progbits,1
112 .Lskel_string0:
113 .asciz "." # string offset=0
114 .Lskel_string1:
115 .asciz "main.dwo" # string offset=58
116 .section .debug_str.dwo,"eMS",@progbits,1
117 .Linfo_string0:
118 .asciz "_Z3foov" # string offset=0
119 .Linfo_string1:
120 .asciz "foo" # string offset=8
121 .Linfo_string2:
122 .asciz "int" # string offset=12
123 .Linfo_string3:
124 .asciz "main" # string offset=16
125 .Linfo_string4:
126 .asciz "clang version 17.0.0 (https://github.com/llvm/llvm-project.git 640e07c49037cca41a1bfbeb916b569d8c950aea)" # string offset=21
127 .Linfo_string5:
128 .asciz "main.cpp" # string offset=126
129 .Linfo_string6:
130 .asciz "main.dwo" # string offset=135
131 .section .debug_str_offsets.dwo,"e",@progbits
132 .long 0
133 .long 8
134 .long 12
135 .long 16
136 .long 21
137 .long 126
138 .long 135
139 .section .debug_info.dwo,"e",@progbits
140 .long .Ldebug_info_dwo_end0-.Ldebug_info_dwo_start0 # Length of Unit
141 .Ldebug_info_dwo_start0:
142 .short 4 # DWARF version number
143 .long 0 # Offset Into Abbrev. Section
144 .byte 8 # Address Size (in bytes)
145 .byte 1 # Abbrev [1] 0xb:0x32 DW_TAG_compile_unit
146 .byte 4 # DW_AT_producer
147 .short 33 # DW_AT_language
148 .byte 5 # DW_AT_name
149 .byte 6 # DW_AT_GNU_dwo_name
150 .quad -252790171939032967 # DW_AT_GNU_dwo_id
151 .byte 2 # Abbrev [2] 0x19:0x10 DW_TAG_subprogram
152 .byte 0 # DW_AT_low_pc
153 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc
154 .byte 1 # DW_AT_frame_base
155 .byte 86
156 .byte 0 # DW_AT_linkage_name
157 .byte 1 # DW_AT_name
158 .byte 1 # DW_AT_decl_file
159 .byte 1 # DW_AT_decl_line
160 .long 56 # DW_AT_type
161 # DW_AT_external
162 .byte 3 # Abbrev [3] 0x29:0xf DW_TAG_subprogram
163 .byte 1 # DW_AT_low_pc
164 .long .Lfunc_end1-.Lfunc_begin1 # DW_AT_high_pc
165 .byte 1 # DW_AT_frame_base
166 .byte 86
167 .byte 3 # DW_AT_name
168 .byte 1 # DW_AT_decl_file
169 .byte 2 # DW_AT_decl_line
170 .long 56 # DW_AT_type
171 # DW_AT_external
172 .byte 4 # Abbrev [4] 0x38:0x4 DW_TAG_base_type
173 .byte 2 # DW_AT_name
174 .byte 5 # DW_AT_encoding
175 .byte 4 # DW_AT_byte_size
176 .byte 0 # End Of Children Mark
177 .Ldebug_info_dwo_end0:
178 .section .debug_abbrev.dwo,"e",@progbits
179 .byte 1 # Abbreviation Code
180 .byte 17 # DW_TAG_compile_unit
181 .byte 1 # DW_CHILDREN_yes
182 .byte 37 # DW_AT_producer
183 .ascii "\202>" # DW_FORM_GNU_str_index
184 .byte 19 # DW_AT_language
185 .byte 5 # DW_FORM_data2
186 .byte 3 # DW_AT_name
187 .ascii "\202>" # DW_FORM_GNU_str_index
188 .ascii "\260B" # DW_AT_GNU_dwo_name
189 .ascii "\202>" # DW_FORM_GNU_str_index
190 .ascii "\261B" # DW_AT_GNU_dwo_id
191 .byte 7 # DW_FORM_data8
192 .byte 0 # EOM(1)
193 .byte 0 # EOM(2)
194 .byte 2 # Abbreviation Code
195 .byte 46 # DW_TAG_subprogram
196 .byte 0 # DW_CHILDREN_no
197 .byte 17 # DW_AT_low_pc
198 .ascii "\201>" # DW_FORM_GNU_addr_index
199 .byte 18 # DW_AT_high_pc
200 .byte 6 # DW_FORM_data4
201 .byte 64 # DW_AT_frame_base
202 .byte 24 # DW_FORM_exprloc
203 .byte 110 # DW_AT_linkage_name
204 .ascii "\202>" # DW_FORM_GNU_str_index
205 .byte 3 # DW_AT_name
206 .ascii "\202>" # DW_FORM_GNU_str_index
207 .byte 58 # DW_AT_decl_file
208 .byte 11 # DW_FORM_data1
209 .byte 59 # DW_AT_decl_line
210 .byte 11 # DW_FORM_data1
211 .byte 73 # DW_AT_type
212 .byte 19 # DW_FORM_ref4
213 .byte 63 # DW_AT_external
214 .byte 25 # DW_FORM_flag_present
215 .byte 0 # EOM(1)
216 .byte 0 # EOM(2)
217 .byte 3 # Abbreviation Code
218 .byte 46 # DW_TAG_subprogram
219 .byte 0 # DW_CHILDREN_no
220 .byte 17 # DW_AT_low_pc
221 .ascii "\201>" # DW_FORM_GNU_addr_index
222 .byte 18 # DW_AT_high_pc
223 .byte 6 # DW_FORM_data4
224 .byte 64 # DW_AT_frame_base
225 .byte 24 # DW_FORM_exprloc
226 .byte 3 # DW_AT_name
227 .ascii "\202>" # DW_FORM_GNU_str_index
228 .byte 58 # DW_AT_decl_file
229 .byte 11 # DW_FORM_data1
230 .byte 59 # DW_AT_decl_line
231 .byte 11 # DW_FORM_data1
232 .byte 73 # DW_AT_type
233 .byte 19 # DW_FORM_ref4
234 .byte 63 # DW_AT_external
235 .byte 25 # DW_FORM_flag_present
236 .byte 0 # EOM(1)
237 .byte 0 # EOM(2)
238 .byte 4 # Abbreviation Code
239 .byte 36 # DW_TAG_base_type
240 .byte 0 # DW_CHILDREN_no
241 .byte 3 # DW_AT_name
242 .ascii "\202>" # DW_FORM_GNU_str_index
243 .byte 62 # DW_AT_encoding
244 .byte 11 # DW_FORM_data1
245 .byte 11 # DW_AT_byte_size
246 .byte 11 # DW_FORM_data1
247 .byte 0 # EOM(1)
248 .byte 0 # EOM(2)
249 .byte 0 # EOM(3)
250 .section .debug_addr,"",@progbits
251 .Laddr_table_base0:
252 .quad .Lfunc_begin0
253 .quad .Lfunc_begin1
254 .section .debug_gnu_pubnames,"",@progbits
255 .long .LpubNames_end0-.LpubNames_start0 # Length of Public Names Info
256 .LpubNames_start0:
257 .short 2 # DWARF Version
258 .long .Lcu_begin0 # Offset of Compilation Unit Info
259 .long 48 # Compilation Unit Length
260 .long 41 # DIE offset
261 .byte 48 # Attributes: FUNCTION, EXTERNAL
262 .asciz "main" # External Name
263 .long 25 # DIE offset
264 .byte 48 # Attributes: FUNCTION, EXTERNAL
265 .asciz "foo" # External Name
266 .long 0 # End Mark
267 .LpubNames_end0:
268 .section .debug_gnu_pubtypes,"",@progbits
269 .long .LpubTypes_end0-.LpubTypes_start0 # Length of Public Types Info
270 .LpubTypes_start0:
271 .short 2 # DWARF Version
272 .long .Lcu_begin0 # Offset of Compilation Unit Info
273 .long 48 # Compilation Unit Length
274 .long 56 # DIE offset
275 .byte 144 # Attributes: TYPE, STATIC
276 .asciz "int" # External Name
277 .long 0 # End Mark
278 .LpubTypes_end0:
279 .ident "clang version 17.0.0 (https://github.com/llvm/llvm-project.git 640e07c49037cca41a1bfbeb916b569d8c950aea)"
280 .section ".note.GNU-stack","",@progbits
281 .addrsig
282 .addrsig_sym _Z3foov
283 .section .debug_line,"",@progbits
284 .Lline_table_start0: