xref: /llvm-project/bolt/test/X86/Inputs/dwarf5-cu-no-debug-addr-main.s (revision 1ee74064e0831c479a8d657ba87a7e8560d15d7a)
1# clang++ -g2 -gdwarf-5 main.cpp -S
2# int  main(){
3#   return 0;
4# }
5
6
7	.text
8	.file	"main.cpp"
9	.globl	main                            # -- Begin function main
10	.p2align	4, 0x90
11	.type	main,@function
12main:                                   # @main
13.Lfunc_begin0:
14	.file	0 "." "main.cpp" md5 0x1dc672a3317ca2ae06986e1275dcc6e7
15	.loc	0 1 0                           # main.cpp:1:0
16	.cfi_startproc
17# %bb.0:                                # %entry
18	pushq	%rbp
19	.cfi_def_cfa_offset 16
20	.cfi_offset %rbp, -16
21	movq	%rsp, %rbp
22	.cfi_def_cfa_register %rbp
23	movl	$0, -4(%rbp)
24.Ltmp0:
25	.loc	0 2 3 prologue_end              # main.cpp:2:3
26	xorl	%eax, %eax
27	popq	%rbp
28	.cfi_def_cfa %rsp, 8
29	retq
30.Ltmp1:
31.Lfunc_end0:
32	.size	main, .Lfunc_end0-main
33	.cfi_endproc
34                                        # -- End function
35	.section	.debug_abbrev,"",@progbits
36	.byte	1                               # Abbreviation Code
37	.byte	17                              # DW_TAG_compile_unit
38	.byte	1                               # DW_CHILDREN_yes
39	.byte	37                              # DW_AT_producer
40	.byte	37                              # DW_FORM_strx1
41	.byte	19                              # DW_AT_language
42	.byte	5                               # DW_FORM_data2
43	.byte	3                               # DW_AT_name
44	.byte	37                              # DW_FORM_strx1
45	.byte	114                             # DW_AT_str_offsets_base
46	.byte	23                              # DW_FORM_sec_offset
47	.byte	16                              # DW_AT_stmt_list
48	.byte	23                              # DW_FORM_sec_offset
49	.byte	27                              # DW_AT_comp_dir
50	.byte	37                              # DW_FORM_strx1
51	.byte	17                              # DW_AT_low_pc
52	.byte	27                              # DW_FORM_addrx
53	.byte	18                              # DW_AT_high_pc
54	.byte	6                               # DW_FORM_data4
55	.byte	115                             # DW_AT_addr_base
56	.byte	23                              # DW_FORM_sec_offset
57	.byte	0                               # EOM(1)
58	.byte	0                               # EOM(2)
59	.byte	2                               # Abbreviation Code
60	.byte	46                              # DW_TAG_subprogram
61	.byte	0                               # DW_CHILDREN_no
62	.byte	17                              # DW_AT_low_pc
63	.byte	27                              # DW_FORM_addrx
64	.byte	18                              # DW_AT_high_pc
65	.byte	6                               # DW_FORM_data4
66	.byte	64                              # DW_AT_frame_base
67	.byte	24                              # DW_FORM_exprloc
68	.byte	3                               # DW_AT_name
69	.byte	37                              # DW_FORM_strx1
70	.byte	58                              # DW_AT_decl_file
71	.byte	11                              # DW_FORM_data1
72	.byte	59                              # DW_AT_decl_line
73	.byte	11                              # DW_FORM_data1
74	.byte	73                              # DW_AT_type
75	.byte	19                              # DW_FORM_ref4
76	.byte	63                              # DW_AT_external
77	.byte	25                              # DW_FORM_flag_present
78	.byte	0                               # EOM(1)
79	.byte	0                               # EOM(2)
80	.byte	3                               # Abbreviation Code
81	.byte	36                              # DW_TAG_base_type
82	.byte	0                               # DW_CHILDREN_no
83	.byte	3                               # DW_AT_name
84	.byte	37                              # DW_FORM_strx1
85	.byte	62                              # DW_AT_encoding
86	.byte	11                              # DW_FORM_data1
87	.byte	11                              # DW_AT_byte_size
88	.byte	11                              # DW_FORM_data1
89	.byte	0                               # EOM(1)
90	.byte	0                               # EOM(2)
91	.byte	0                               # EOM(3)
92	.section	.debug_info,"",@progbits
93.Lcu_begin0:
94	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit
95.Ldebug_info_start0:
96	.short	5                               # DWARF version number
97	.byte	1                               # DWARF Unit Type
98	.byte	8                               # Address Size (in bytes)
99	.long	.debug_abbrev                   # Offset Into Abbrev. Section
100	.byte	1                               # Abbrev [1] 0xc:0x2b DW_TAG_compile_unit
101	.byte	0                               # DW_AT_producer
102	.short	33                              # DW_AT_language
103	.byte	1                               # DW_AT_name
104	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base
105	.long	.Lline_table_start0             # DW_AT_stmt_list
106	.byte	2                               # DW_AT_comp_dir
107	.byte	0                               # DW_AT_low_pc
108	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc
109	.long	.Laddr_table_base0              # DW_AT_addr_base
110	.byte	2                               # Abbrev [2] 0x23:0xf DW_TAG_subprogram
111	.byte	0                               # DW_AT_low_pc
112	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc
113	.byte	1                               # DW_AT_frame_base
114	.byte	86
115	.byte	3                               # DW_AT_name
116	.byte	0                               # DW_AT_decl_file
117	.byte	1                               # DW_AT_decl_line
118	.long	50                              # DW_AT_type
119                                        # DW_AT_external
120	.byte	3                               # Abbrev [3] 0x32:0x4 DW_TAG_base_type
121	.byte	4                               # DW_AT_name
122	.byte	5                               # DW_AT_encoding
123	.byte	4                               # DW_AT_byte_size
124	.byte	0                               # End Of Children Mark
125.Ldebug_info_end0:
126	.section	.debug_str_offsets,"",@progbits
127	.long	24                              # Length of String Offsets Set
128	.short	5
129	.short	0
130.Lstr_offsets_base0:
131	.section	.debug_str,"MS",@progbits,1
132.Linfo_string0:
133	.asciz	"clang version 16.0.0" # string offset=0
134.Linfo_string1:
135	.asciz	"main.cpp"                      # string offset=134
136.Linfo_string2:
137	.asciz	"." # string offset=143
138.Linfo_string3:
139	.asciz	"main"                          # string offset=181
140.Linfo_string4:
141	.asciz	"int"                           # string offset=186
142	.section	.debug_str_offsets,"",@progbits
143	.long	.Linfo_string0
144	.long	.Linfo_string1
145	.long	.Linfo_string2
146	.long	.Linfo_string3
147	.long	.Linfo_string4
148	.section	.debug_addr,"",@progbits
149	.long	.Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution
150.Ldebug_addr_start0:
151	.short	5                               # DWARF version number
152	.byte	8                               # Address size
153	.byte	0                               # Segment selector size
154.Laddr_table_base0:
155	.quad	.Lfunc_begin0
156.Ldebug_addr_end0:
157	.ident	"clang version 16.0.0"
158	.section	".note.GNU-stack","",@progbits
159	.addrsig
160	.section	.debug_line,"",@progbits
161.Lline_table_start0:
162