Follow up to d0858bffa11, add missing REQUIRES x86
[llvm-project.git] / llvm / test / tools / llvm-dwp / Inputs / overflow / debug_info_v5.s
blobe62edeb69029c589d0db048b9fc07d6ccbbf39c9
1 # Note: This file is compiled from the following code, for
2 # the purpose of creating an overflowed dwo section.
3 # After being compiled from source, section `.debug_info.dwo`
4 # is changed to have length (2^32 - 30) Bytes, and added
5 # padding with `.fill` directive, so it is likely to
6 # overflow when packed with other files.
7 #
8 # clang -g -S -gsplit-dwarf -gdwarf-5 hello.c
10 # #include <stdio.h>
11 # void hello() {
12 # printf("hello\n");
13 # }
15 .text
16 .file "hello.c"
17 .globl hello # -- Begin function hello
18 .p2align 4, 0x90
19 .type hello,@function
20 hello: # @hello
21 .Lfunc_begin0:
22 .file 0 "/xxxx/xxxxxxxxxx/xxxxxxxx/hello" "hello.c" md5 0x0b447232502f439981a2fe9f11255f42
23 .loc 0 3 0 # hello.c:3:0
24 .cfi_startproc
25 # %bb.0: # %entry
26 pushq %rbp
27 .cfi_def_cfa_offset 16
28 .cfi_offset %rbp, -16
29 movq %rsp, %rbp
30 .cfi_def_cfa_register %rbp
31 .Ltmp0:
32 .loc 0 4 5 prologue_end # hello.c:4:5
33 movabsq $.L.str, %rdi
34 movb $0, %al
35 callq printf
36 .loc 0 5 1 # hello.c:5:1
37 popq %rbp
38 .cfi_def_cfa %rsp, 8
39 retq
40 .Ltmp1:
41 .Lfunc_end0:
42 .size hello, .Lfunc_end0-hello
43 .cfi_endproc
44 # -- End function
45 .type .L.str,@object # @.str
46 .section .rodata.str1.1,"aMS",@progbits,1
47 .L.str:
48 .asciz "hello\n"
49 .size .L.str, 7
51 .section .debug_abbrev,"",@progbits
52 .byte 1 # Abbreviation Code
53 .byte 74 # DW_TAG_skeleton_unit
54 .byte 0 # DW_CHILDREN_no
55 .byte 16 # DW_AT_stmt_list
56 .byte 23 # DW_FORM_sec_offset
57 .byte 114 # DW_AT_str_offsets_base
58 .byte 23 # DW_FORM_sec_offset
59 .byte 27 # DW_AT_comp_dir
60 .byte 37 # DW_FORM_strx1
61 .ascii "\264B" # DW_AT_GNU_pubnames
62 .byte 25 # DW_FORM_flag_present
63 .byte 118 # DW_AT_dwo_name
64 .byte 37 # DW_FORM_strx1
65 .byte 17 # DW_AT_low_pc
66 .byte 27 # DW_FORM_addrx
67 .byte 18 # DW_AT_high_pc
68 .byte 6 # DW_FORM_data4
69 .byte 115 # DW_AT_addr_base
70 .byte 23 # DW_FORM_sec_offset
71 .byte 0 # EOM(1)
72 .byte 0 # EOM(2)
73 .byte 0 # EOM(3)
74 .section .debug_info,"",@progbits
75 .Lcu_begin0:
76 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit
77 .Ldebug_info_start0:
78 .short 5 # DWARF version number
79 .byte 4 # DWARF Unit Type
80 .byte 8 # Address Size (in bytes)
81 .long .debug_abbrev # Offset Into Abbrev. Section
82 .quad -94954012350180462
83 .byte 1 # Abbrev [1] 0x14:0x14 DW_TAG_skeleton_unit
84 .long .Lline_table_start0 # DW_AT_stmt_list
85 .long .Lstr_offsets_base0 # DW_AT_str_offsets_base
86 .byte 0 # DW_AT_comp_dir
87 # DW_AT_GNU_pubnames
88 .byte 1 # DW_AT_dwo_name
89 .byte 0 # DW_AT_low_pc
90 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc
91 .long .Laddr_table_base0 # DW_AT_addr_base
92 .Ldebug_info_end0:
93 .section .debug_str_offsets,"",@progbits
94 .long 12
95 .short 5
96 .short 0
97 .Lstr_offsets_base0:
98 .section .debug_str,"MS",@progbits,1
99 .Lskel_string0:
100 .asciz "/xxxx/xxxxxxxxxx/xxxxxxxx/hello" # string offset=0
101 .Lskel_string1:
102 .asciz "hello.dwo" # string offset=32
103 .section .debug_str_offsets,"",@progbits
104 .long .Lskel_string0
105 .long .Lskel_string1
106 .section .debug_str_offsets.dwo,"e",@progbits
107 .long 20
108 .short 5
109 .short 0
110 .section .debug_str.dwo,"eMS",@progbits,1
111 .Linfo_string0:
112 .asciz "hello" # string offset=0
113 .Linfo_string1:
114 .asciz "clang version 11.1.0 (https://github.com/llvm/llvm-project.git 1a0dc1e010bf5c8034bd4a53340fc0dc3e90549a)" # string offset=6
115 .Linfo_string2:
116 .asciz "hello.c" # string offset=111
117 .Linfo_string3:
118 .asciz "hello.dwo" # string offset=119
119 .section .debug_str_offsets.dwo,"e",@progbits
120 .long 0
121 .long 6
122 .long 111
123 .long 119
124 .section .debug_info.dwo,"e",@progbits
125 .long .Ldebug_info_dwo_end0-.Ldebug_info_dwo_start0 # Length of Unit
126 .Ldebug_info_dwo_start0:
127 .short 5 # DWARF version number
128 .byte 5 # DWARF Unit Type
129 .byte 8 # Address Size (in bytes)
130 .long 0 # Offset Into Abbrev. Section
131 .quad -94954012350180462
132 .byte 1 # Abbrev [1] 0x14:0x12 DW_TAG_compile_unit
133 .byte 1 # DW_AT_producer
134 .short 12 # DW_AT_language
135 .byte 2 # DW_AT_name
136 .byte 3 # DW_AT_dwo_name
137 .byte 2 # Abbrev [2] 0x1a:0xb DW_TAG_subprogram
138 .byte 0 # DW_AT_low_pc
139 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc
140 .byte 1 # DW_AT_frame_base
141 .byte 86
142 .byte 0 # DW_AT_name
143 .byte 0 # DW_AT_decl_file
144 .byte 3 # DW_AT_decl_line
145 # DW_AT_external
146 .byte 0 # End Of Children Mark
147 .fill 4294967233
148 .Ldebug_info_dwo_end0:
149 .section .debug_abbrev.dwo,"e",@progbits
150 .byte 1 # Abbreviation Code
151 .byte 17 # DW_TAG_compile_unit
152 .byte 1 # DW_CHILDREN_yes
153 .byte 37 # DW_AT_producer
154 .byte 37 # DW_FORM_strx1
155 .byte 19 # DW_AT_language
156 .byte 5 # DW_FORM_data2
157 .byte 3 # DW_AT_name
158 .byte 37 # DW_FORM_strx1
159 .byte 118 # DW_AT_dwo_name
160 .byte 37 # DW_FORM_strx1
161 .byte 0 # EOM(1)
162 .byte 0 # EOM(2)
163 .byte 2 # Abbreviation Code
164 .byte 46 # DW_TAG_subprogram
165 .byte 0 # DW_CHILDREN_no
166 .byte 17 # DW_AT_low_pc
167 .byte 27 # DW_FORM_addrx
168 .byte 18 # DW_AT_high_pc
169 .byte 6 # DW_FORM_data4
170 .byte 64 # DW_AT_frame_base
171 .byte 24 # DW_FORM_exprloc
172 .byte 3 # DW_AT_name
173 .byte 37 # DW_FORM_strx1
174 .byte 58 # DW_AT_decl_file
175 .byte 11 # DW_FORM_data1
176 .byte 59 # DW_AT_decl_line
177 .byte 11 # DW_FORM_data1
178 .byte 63 # DW_AT_external
179 .byte 25 # DW_FORM_flag_present
180 .byte 0 # EOM(1)
181 .byte 0 # EOM(2)
182 .byte 0 # EOM(3)
183 .section .debug_addr,"",@progbits
184 .long .Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution
185 .Ldebug_addr_start0:
186 .short 5 # DWARF version number
187 .byte 8 # Address size
188 .byte 0 # Segment selector size
189 .Laddr_table_base0:
190 .quad .Lfunc_begin0
191 .Ldebug_addr_end0:
192 .section .debug_gnu_pubnames,"",@progbits
193 .long .LpubNames_end0-.LpubNames_begin0 # Length of Public Names Info
194 .LpubNames_begin0:
195 .short 2 # DWARF Version
196 .long .Lcu_begin0 # Offset of Compilation Unit Info
197 .long 40 # Compilation Unit Length
198 .long 26 # DIE offset
199 .byte 48 # Attributes: FUNCTION, EXTERNAL
200 .asciz "hello" # External Name
201 .long 0 # End Mark
202 .LpubNames_end0:
203 .section .debug_gnu_pubtypes,"",@progbits
204 .long .LpubTypes_end0-.LpubTypes_begin0 # Length of Public Types Info
205 .LpubTypes_begin0:
206 .short 2 # DWARF Version
207 .long .Lcu_begin0 # Offset of Compilation Unit Info
208 .long 40 # Compilation Unit Length
209 .long 0 # End Mark
210 .LpubTypes_end0:
211 .ident "clang version 11.1.0 (https://github.com/llvm/llvm-project.git 1a0dc1e010bf5c8034bd4a53340fc0dc3e90549a)"
212 .section ".note.GNU-stack","",@progbits
213 .addrsig
214 .addrsig_sym printf
215 .section .debug_line,"",@progbits
216 .Lline_table_start0: