xref: /llvm-project/bolt/test/X86/Inputs/dwarf4-split-dwarf-no-address-helper.s (revision 1a1324a303f856bb6cfd0a2bca00736c2b5bc187)
1# Manually modified to remove low_pc/high_pc and base_address
2# int helper(int i) {
3#   return ++i;
4# }
5	.text
6	.file	"helper.cpp"
7	.globl	_Z6helperi                      # -- Begin function _Z6helperi
8	.p2align	4, 0x90
9	.type	_Z6helperi,@function
10_Z6helperi:                             # @_Z6helperi
11.Lfunc_begin0:
12	.file	1 "." "helper.cpp"
13	.loc	1 1 0                           # helper.cpp:1:0
14	.cfi_startproc
15# %bb.0:                                # %entry
16	pushq	%rbp
17	.cfi_def_cfa_offset 16
18	.cfi_offset %rbp, -16
19	movq	%rsp, %rbp
20	.cfi_def_cfa_register %rbp
21	movl	%edi, -4(%rbp)
22.Ltmp0:
23	.loc	1 2 10 prologue_end             # helper.cpp:2:10
24	movl	-4(%rbp), %eax
25	addl	$1, %eax
26	movl	%eax, -4(%rbp)
27	.loc	1 2 3 is_stmt 0                 # helper.cpp:2:3
28	popq	%rbp
29	.cfi_def_cfa %rsp, 8
30	retq
31.Ltmp1:
32.Lfunc_end0:
33	.size	_Z6helperi, .Lfunc_end0-_Z6helperi
34	.cfi_endproc
35                                        # -- End function
36	.section	.debug_abbrev,"",@progbits
37	.byte	1                               # Abbreviation Code
38	.byte	17                              # DW_TAG_compile_unit
39	.byte	0                               # DW_CHILDREN_no
40	.byte	16                              # DW_AT_stmt_list
41	.byte	23                              # DW_FORM_sec_offset
42	.byte	27                              # DW_AT_comp_dir
43	.byte	14                              # DW_FORM_strp
44	.ascii	"\264B"                         # DW_AT_GNU_pubnames
45	.byte	25                              # DW_FORM_flag_present
46	.ascii	"\260B"                         # DW_AT_GNU_dwo_name
47	.byte	14                              # DW_FORM_strp
48	.ascii	"\261B"                         # DW_AT_GNU_dwo_id
49	.byte	7                               # DW_FORM_data8
50	.byte	0                               # EOM(1)
51	.byte	0                               # EOM(2)
52	.byte	0                               # EOM(3)
53	.section	.debug_info,"",@progbits
54.Lcu_begin0:
55	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit
56.Ldebug_info_start0:
57	.short	4                               # DWARF version number
58	.long	.debug_abbrev                   # Offset Into Abbrev. Section
59	.byte	8                               # Address Size (in bytes)
60	.byte	1                               # Abbrev [1] 0xb:0x25 DW_TAG_compile_unit
61	.long	.Lline_table_start0             # DW_AT_stmt_list
62	.long	.Lskel_string0                  # DW_AT_comp_dir
63                                        # DW_AT_GNU_pubnames
64	.long	.Lskel_string1                  # DW_AT_GNU_dwo_name
65	.quad	2738718332032343034             # DW_AT_GNU_dwo_id
66.Ldebug_info_end0:
67	.section	.debug_str,"MS",@progbits,1
68.Lskel_string0:
69	.asciz	"." # string offset=0
70.Lskel_string1:
71	.asciz	"helper.dwo"                    # string offset=38
72	.section	.debug_str.dwo,"eMS",@progbits,1
73.Linfo_string0:
74	.asciz	"_Z6helperi"                    # string offset=0
75.Linfo_string1:
76	.asciz	"helper"                        # string offset=11
77.Linfo_string2:
78	.asciz	"int"                           # string offset=18
79.Linfo_string3:
80	.asciz	"i"                             # string offset=22
81.Linfo_string4:
82	.asciz	"clang version 15.0.0" # string offset=24
83.Linfo_string5:
84	.asciz	"helper.cpp"                    # string offset=158
85.Linfo_string6:
86	.asciz	"helper.dwo"                    # string offset=169
87	.section	.debug_str_offsets.dwo,"e",@progbits
88	.long	0
89	.long	11
90	.long	18
91	.long	22
92	.long	24
93	.long	158
94	.long	169
95	.section	.debug_info.dwo,"e",@progbits
96	.long	.Ldebug_info_dwo_end0-.Ldebug_info_dwo_start0 # Length of Unit
97.Ldebug_info_dwo_start0:
98	.short	4                               # DWARF version number
99	.long	0                               # Offset Into Abbrev. Section
100	.byte	8                               # Address Size (in bytes)
101	.byte	1                               # Abbrev [1] 0xb:0x2f DW_TAG_compile_unit
102	.byte	4                               # DW_AT_producer
103	.short	33                              # DW_AT_language
104	.byte	5                               # DW_AT_name
105	.byte	6                               # DW_AT_GNU_dwo_name
106	.quad	2738718332032343034             # DW_AT_GNU_dwo_id
107	.byte	2                               # Abbrev [2] 0x19:0x1c DW_TAG_subprogram
108	.byte	1                               # DW_AT_frame_base
109	.byte	86
110	.byte	0                               # DW_AT_linkage_name
111	.byte	1                               # DW_AT_name
112	.byte	1                               # DW_AT_decl_file
113	.byte	1                               # DW_AT_decl_line
114	.long	48                              # DW_AT_type
115                                        # DW_AT_external
116	.byte	3                               # Abbrev [3] 0x29:0xb DW_TAG_formal_parameter
117	.byte	2                               # DW_AT_location
118	.byte	145
119	.byte	124
120	.byte	3                               # DW_AT_name
121	.byte	1                               # DW_AT_decl_file
122	.byte	1                               # DW_AT_decl_line
123	.long	48                              # DW_AT_type
124	.byte	0                               # End Of Children Mark
125	.byte	4                               # Abbrev [4] 0x35:0x4 DW_TAG_base_type
126	.byte	2                               # DW_AT_name
127	.byte	5                               # DW_AT_encoding
128	.byte	4                               # DW_AT_byte_size
129	.byte	0                               # End Of Children Mark
130.Ldebug_info_dwo_end0:
131	.section	.debug_abbrev.dwo,"e",@progbits
132	.byte	1                               # Abbreviation Code
133	.byte	17                              # DW_TAG_compile_unit
134	.byte	1                               # DW_CHILDREN_yes
135	.byte	37                              # DW_AT_producer
136	.ascii	"\202>"                         # DW_FORM_GNU_str_index
137	.byte	19                              # DW_AT_language
138	.byte	5                               # DW_FORM_data2
139	.byte	3                               # DW_AT_name
140	.ascii	"\202>"                         # DW_FORM_GNU_str_index
141	.ascii	"\260B"                         # DW_AT_GNU_dwo_name
142	.ascii	"\202>"                         # DW_FORM_GNU_str_index
143	.ascii	"\261B"                         # DW_AT_GNU_dwo_id
144	.byte	7                               # DW_FORM_data8
145	.byte	0                               # EOM(1)
146	.byte	0                               # EOM(2)
147	.byte	2                               # Abbreviation Code
148	.byte	46                              # DW_TAG_subprogram
149	.byte	1                               # DW_CHILDREN_yes
150	.byte	64                              # DW_AT_frame_base
151	.byte	24                              # DW_FORM_exprloc
152	.byte	110                             # DW_AT_linkage_name
153	.ascii	"\202>"                         # DW_FORM_GNU_str_index
154	.byte	3                               # DW_AT_name
155	.ascii	"\202>"                         # DW_FORM_GNU_str_index
156	.byte	58                              # DW_AT_decl_file
157	.byte	11                              # DW_FORM_data1
158	.byte	59                              # DW_AT_decl_line
159	.byte	11                              # DW_FORM_data1
160	.byte	73                              # DW_AT_type
161	.byte	19                              # DW_FORM_ref4
162	.byte	63                              # DW_AT_external
163	.byte	25                              # DW_FORM_flag_present
164	.byte	0                               # EOM(1)
165	.byte	0                               # EOM(2)
166	.byte	3                               # Abbreviation Code
167	.byte	5                               # DW_TAG_formal_parameter
168	.byte	0                               # DW_CHILDREN_no
169	.byte	2                               # DW_AT_location
170	.byte	24                              # DW_FORM_exprloc
171	.byte	3                               # DW_AT_name
172	.ascii	"\202>"                         # DW_FORM_GNU_str_index
173	.byte	58                              # DW_AT_decl_file
174	.byte	11                              # DW_FORM_data1
175	.byte	59                              # DW_AT_decl_line
176	.byte	11                              # DW_FORM_data1
177	.byte	73                              # DW_AT_type
178	.byte	19                              # DW_FORM_ref4
179	.byte	0                               # EOM(1)
180	.byte	0                               # EOM(2)
181	.byte	4                               # Abbreviation Code
182	.byte	36                              # DW_TAG_base_type
183	.byte	0                               # DW_CHILDREN_no
184	.byte	3                               # DW_AT_name
185	.ascii	"\202>"                         # DW_FORM_GNU_str_index
186	.byte	62                              # DW_AT_encoding
187	.byte	11                              # DW_FORM_data1
188	.byte	11                              # DW_AT_byte_size
189	.byte	11                              # DW_FORM_data1
190	.byte	0                               # EOM(1)
191	.byte	0                               # EOM(2)
192	.byte	0                               # EOM(3)
193	.section	.debug_addr,"",@progbits
194.Laddr_table_base0:
195	.quad	.Lfunc_begin0
196	.section	.debug_gnu_pubnames,"",@progbits
197	.long	.LpubNames_end0-.LpubNames_start0 # Length of Public Names Info
198.LpubNames_start0:
199	.short	2                               # DWARF Version
200	.long	.Lcu_begin0                     # Offset of Compilation Unit Info
201	.long	48                              # Compilation Unit Length
202	.long	25                              # DIE offset
203	.byte	48                              # Attributes: FUNCTION, EXTERNAL
204	.asciz	"helper"                        # External Name
205	.long	0                               # End Mark
206.LpubNames_end0:
207	.section	.debug_gnu_pubtypes,"",@progbits
208	.long	.LpubTypes_end0-.LpubTypes_start0 # Length of Public Types Info
209.LpubTypes_start0:
210	.short	2                               # DWARF Version
211	.long	.Lcu_begin0                     # Offset of Compilation Unit Info
212	.long	48                              # Compilation Unit Length
213	.long	53                              # DIE offset
214	.byte	144                             # Attributes: TYPE, STATIC
215	.asciz	"int"                           # External Name
216	.long	0                               # End Mark
217.LpubTypes_end0:
218	.ident	"clang version 15.0.0"
219	.section	".note.GNU-stack","",@progbits
220	.addrsig
221	.section	.debug_line,"",@progbits
222.Lline_table_start0:
223