1 // RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | llvm-readobj -s -sr -sd | FileCheck %s
11 .cfi_personality 0x00, foo
24 .cfi_personality 0x00, foo
31 .cfi_personality 0x02, foo
37 .cfi_personality 0x03, foo
43 .cfi_personality 0x04, foo
49 .cfi_personality 0x0a, foo
55 .cfi_personality 0x0b, foo
61 .cfi_personality 0x0c, foo
67 .cfi_personality 0x08, foo
73 .cfi_personality 0x10, foo
79 .cfi_personality 0x12, foo
85 .cfi_personality 0x13, foo
91 .cfi_personality 0x14, foo
97 .cfi_personality 0x1a, foo
103 .cfi_personality 0x1b, foo
109 .cfi_personality 0x1c, foo
115 .cfi_personality 0x18, foo
121 .cfi_personality 0x80, foo
127 .cfi_personality 0x82, foo
133 .cfi_personality 0x83, foo
139 .cfi_personality 0x84, foo
145 .cfi_personality 0x8a, foo
151 .cfi_personality 0x8b, foo
157 .cfi_personality 0x8c, foo
163 .cfi_personality 0x88, foo
169 .cfi_personality 0x90, foo
175 .cfi_personality 0x92, foo
181 .cfi_personality 0x93, foo
187 .cfi_personality 0x94, foo
193 .cfi_personality 0x9a, foo
199 .cfi_personality 0x9b, foo
205 .cfi_personality 0x9c, foo
211 .cfi_personality 0x98, foo
217 // CHECK-NEXT: Name: .eh_frame
218 // CHECK-NEXT: Type: SHT_PROGBITS
219 // CHECK-NEXT: Flags [
220 // CHECK-NEXT: SHF_ALLOC
222 // CHECK-NEXT: Address: 0x0
223 // CHECK-NEXT: Offset: 0x68
224 // CHECK-NEXT: Size: 1736
225 // CHECK-NEXT: Link: 0
226 // CHECK-NEXT: Info: 0
227 // CHECK-NEXT: AddressAlignment: 8
228 // CHECK-NEXT: EntrySize: 0
229 // CHECK-NEXT: Relocations [
230 // CHECK-NEXT: 0x20 R_X86_64_PC32 .text 0x0
231 // CHECK-NEXT: 0x29 R_X86_64_32 bar 0x0
232 // CHECK-NEXT: 0x43 R_X86_64_64 foo 0x0
233 // CHECK-NEXT: 0x5C R_X86_64_PC32 .text 0x1
234 // CHECK-NEXT: 0x65 R_X86_64_32 bar 0x0
235 // CHECK-NEXT: 0x74 R_X86_64_PC32 .text 0x2
236 // CHECK-NEXT: 0x7D R_X86_64_32 bar 0x0
237 // CHECK-NEXT: 0x97 R_X86_64_64 foo 0x0
238 // CHECK-NEXT: 0xB0 R_X86_64_PC32 .text 0x3
239 // CHECK-NEXT: 0xB9 R_X86_64_16 bar 0x0
240 // CHECK-NEXT: 0xCE R_X86_64_16 foo 0x0
241 // CHECK-NEXT: 0xE0 R_X86_64_PC32 .text 0x4
242 // CHECK-NEXT: 0xFE R_X86_64_32 foo 0x0
243 // CHECK-NEXT: 0x110 R_X86_64_PC32 .text 0x5
244 // CHECK-NEXT: 0x12E R_X86_64_64 foo 0x0
245 // CHECK-NEXT: 0x144 R_X86_64_PC32 .text 0x6
246 // CHECK-NEXT: 0x162 R_X86_64_16 foo 0x0
247 // CHECK-NEXT: 0x174 R_X86_64_PC32 .text 0x7
248 // CHECK-NEXT: 0x192 R_X86_64_32 foo 0x0
249 // CHECK-NEXT: 0x1A4 R_X86_64_PC32 .text 0x8
250 // CHECK-NEXT: 0x1C2 R_X86_64_64 foo 0x0
251 // CHECK-NEXT: 0x1D8 R_X86_64_PC32 .text 0x9
252 // CHECK-NEXT: 0x1F6 R_X86_64_64 foo 0x0
253 // CHECK-NEXT: 0x20C R_X86_64_PC32 .text 0xA
254 // CHECK-NEXT: 0x22A R_X86_64_PC64 foo 0x0
255 // CHECK-NEXT: 0x240 R_X86_64_PC32 .text 0xB
256 // CHECK-NEXT: 0x25E R_X86_64_PC16 foo 0x0
257 // CHECK-NEXT: 0x270 R_X86_64_PC32 .text 0xC
258 // CHECK-NEXT: 0x28E R_X86_64_PC32 foo 0x0
259 // CHECK-NEXT: 0x2A0 R_X86_64_PC32 .text 0xD
260 // CHECK-NEXT: 0x2BE R_X86_64_PC64 foo 0x0
261 // CHECK-NEXT: 0x2D4 R_X86_64_PC32 .text 0xE
262 // CHECK-NEXT: 0x2F2 R_X86_64_PC16 foo 0x0
263 // CHECK-NEXT: 0x304 R_X86_64_PC32 .text 0xF
264 // CHECK-NEXT: 0x322 R_X86_64_PC32 foo 0x0
265 // CHECK-NEXT: 0x334 R_X86_64_PC32 .text 0x10
266 // CHECK-NEXT: 0x352 R_X86_64_PC64 foo 0x0
267 // CHECK-NEXT: 0x368 R_X86_64_PC32 .text 0x11
268 // CHECK-NEXT: 0x386 R_X86_64_PC64 foo 0x0
269 // CHECK-NEXT: 0x39C R_X86_64_PC32 .text 0x12
270 // CHECK-NEXT: 0x3BA R_X86_64_64 foo 0x0
271 // CHECK-NEXT: 0x3D0 R_X86_64_PC32 .text 0x13
272 // CHECK-NEXT: 0x3EE R_X86_64_16 foo 0x0
273 // CHECK-NEXT: 0x400 R_X86_64_PC32 .text 0x14
274 // CHECK-NEXT: 0x41E R_X86_64_32 foo 0x0
275 // CHECK-NEXT: 0x430 R_X86_64_PC32 .text 0x15
276 // CHECK-NEXT: 0x44E R_X86_64_64 foo 0x0
277 // CHECK-NEXT: 0x464 R_X86_64_PC32 .text 0x16
278 // CHECK-NEXT: 0x482 R_X86_64_16 foo 0x0
279 // CHECK-NEXT: 0x494 R_X86_64_PC32 .text 0x17
280 // CHECK-NEXT: 0x4B2 R_X86_64_32 foo 0x0
281 // CHECK-NEXT: 0x4C4 R_X86_64_PC32 .text 0x18
282 // CHECK-NEXT: 0x4E2 R_X86_64_64 foo 0x0
283 // CHECK-NEXT: 0x4F8 R_X86_64_PC32 .text 0x19
284 // CHECK-NEXT: 0x516 R_X86_64_64 foo 0x0
285 // CHECK-NEXT: 0x52C R_X86_64_PC32 .text 0x1A
286 // CHECK-NEXT: 0x54A R_X86_64_PC64 foo 0x0
287 // CHECK-NEXT: 0x560 R_X86_64_PC32 .text 0x1B
288 // CHECK-NEXT: 0x57E R_X86_64_PC16 foo 0x0
289 // CHECK-NEXT: 0x590 R_X86_64_PC32 .text 0x1C
290 // CHECK-NEXT: 0x5AE R_X86_64_PC32 foo 0x0
291 // CHECK-NEXT: 0x5C0 R_X86_64_PC32 .text 0x1D
292 // CHECK-NEXT: 0x5DE R_X86_64_PC64 foo 0x0
293 // CHECK-NEXT: 0x5F4 R_X86_64_PC32 .text 0x1E
294 // CHECK-NEXT: 0x612 R_X86_64_PC16 foo 0x0
295 // CHECK-NEXT: 0x624 R_X86_64_PC32 .text 0x1F
296 // CHECK-NEXT: 0x642 R_X86_64_PC32 foo 0x0
297 // CHECK-NEXT: 0x654 R_X86_64_PC32 .text 0x20
298 // CHECK-NEXT: 0x672 R_X86_64_PC64 foo 0x0
299 // CHECK-NEXT: 0x688 R_X86_64_PC32 .text 0x21
300 // CHECK-NEXT: 0x6A6 R_X86_64_PC64 foo 0x0
301 // CHECK-NEXT: 0x6BC R_X86_64_PC32 .text 0x22
303 // CHECK-NEXT: SectionData (
304 // CHECK-NEXT: 0000: 14000000 00000000 017A4C52 00017810
305 // CHECK-NEXT: 0010: 02031B0C 07089001 14000000 1C000000
306 // CHECK-NEXT: 0020: 00000000 01000000 04000000 00000000
307 // CHECK-NEXT: 0030: 20000000 00000000 017A504C 52000178
308 // CHECK-NEXT: 0040: 100B0000 00000000 00000003 1B0C0708
309 // CHECK-NEXT: 0050: 90010000 14000000 28000000 00000000
310 // CHECK-NEXT: 0060: 01000000 04000000 00000000 14000000
311 // CHECK-NEXT: 0070: 70000000 00000000 01000000 04000000
312 // CHECK-NEXT: 0080: 00000000 20000000 00000000 017A504C
313 // CHECK-NEXT: 0090: 52000178 100B0000 00000000 00000002
314 // CHECK-NEXT: 00A0: 1B0C0708 90010000 10000000 28000000
315 // CHECK-NEXT: 00B0: 00000000 01000000 02000000 18000000
316 // CHECK-NEXT: 00C0: 00000000 017A5052 00017810 04020000
317 // CHECK-NEXT: 00D0: 1B0C0708 90010000 10000000 20000000
318 // CHECK-NEXT: 00E0: 00000000 01000000 00000000 18000000
319 // CHECK-NEXT: 00F0: 00000000 017A5052 00017810 06030000
320 // CHECK-NEXT: 0100: 00001B0C 07089001 10000000 20000000
321 // CHECK-NEXT: 0110: 00000000 01000000 00000000 1C000000
322 // CHECK-NEXT: 0120: 00000000 017A5052 00017810 0A040000
323 // CHECK-NEXT: 0130: 00000000 00001B0C 07089001 10000000
324 // CHECK-NEXT: 0140: 24000000 00000000 01000000 00000000
325 // CHECK-NEXT: 0150: 18000000 00000000 017A5052 00017810
326 // CHECK-NEXT: 0160: 040A0000 1B0C0708 90010000 10000000
327 // CHECK-NEXT: 0170: 20000000 00000000 01000000 00000000
328 // CHECK-NEXT: 0180: 18000000 00000000 017A5052 00017810
329 // CHECK-NEXT: 0190: 060B0000 00001B0C 07089001 10000000
330 // CHECK-NEXT: 01A0: 20000000 00000000 01000000 00000000
331 // CHECK-NEXT: 01B0: 1C000000 00000000 017A5052 00017810
332 // CHECK-NEXT: 01C0: 0A0C0000 00000000 00001B0C 07089001
333 // CHECK-NEXT: 01D0: 10000000 24000000 00000000 01000000
334 // CHECK-NEXT: 01E0: 00000000 1C000000 00000000 017A5052
335 // CHECK-NEXT: 01F0: 00017810 0A080000 00000000 00001B0C
336 // CHECK-NEXT: 0200: 07089001 10000000 24000000 00000000
337 // CHECK-NEXT: 0210: 01000000 00000000 1C000000 00000000
338 // CHECK-NEXT: 0220: 017A5052 00017810 0A100000 00000000
339 // CHECK-NEXT: 0230: 00001B0C 07089001 10000000 24000000
340 // CHECK-NEXT: 0240: 00000000 01000000 00000000 18000000
341 // CHECK-NEXT: 0250: 00000000 017A5052 00017810 04120000
342 // CHECK-NEXT: 0260: 1B0C0708 90010000 10000000 20000000
343 // CHECK-NEXT: 0270: 00000000 01000000 00000000 18000000
344 // CHECK-NEXT: 0280: 00000000 017A5052 00017810 06130000
345 // CHECK-NEXT: 0290: 00001B0C 07089001 10000000 20000000
346 // CHECK-NEXT: 02A0: 00000000 01000000 00000000 1C000000
347 // CHECK-NEXT: 02B0: 00000000 017A5052 00017810 0A140000
348 // CHECK-NEXT: 02C0: 00000000 00001B0C 07089001 10000000
349 // CHECK-NEXT: 02D0: 24000000 00000000 01000000 00000000
350 // CHECK-NEXT: 02E0: 18000000 00000000 017A5052 00017810
351 // CHECK-NEXT: 02F0: 041A0000 1B0C0708 90010000 10000000
352 // CHECK-NEXT: 0300: 20000000 00000000 01000000 00000000
353 // CHECK-NEXT: 0310: 18000000 00000000 017A5052 00017810
354 // CHECK-NEXT: 0320: 061B0000 00001B0C 07089001 10000000
355 // CHECK-NEXT: 0330: 20000000 00000000 01000000 00000000
356 // CHECK-NEXT: 0340: 1C000000 00000000 017A5052 00017810
357 // CHECK-NEXT: 0350: 0A1C0000 00000000 00001B0C 07089001
358 // CHECK-NEXT: 0360: 10000000 24000000 00000000 01000000
359 // CHECK-NEXT: 0370: 00000000 1C000000 00000000 017A5052
360 // CHECK-NEXT: 0380: 00017810 0A180000 00000000 00001B0C
361 // CHECK-NEXT: 0390: 07089001 10000000 24000000 00000000
362 // CHECK-NEXT: 03A0: 01000000 00000000 1C000000 00000000
363 // CHECK-NEXT: 03B0: 017A5052 00017810 0A800000 00000000
364 // CHECK-NEXT: 03C0: 00001B0C 07089001 10000000 24000000
365 // CHECK-NEXT: 03D0: 00000000 01000000 00000000 18000000
366 // CHECK-NEXT: 03E0: 00000000 017A5052 00017810 04820000
367 // CHECK-NEXT: 03F0: 1B0C0708 90010000 10000000 20000000
368 // CHECK-NEXT: 0400: 00000000 01000000 00000000 18000000
369 // CHECK-NEXT: 0410: 00000000 017A5052 00017810 06830000
370 // CHECK-NEXT: 0420: 00001B0C 07089001 10000000 20000000
371 // CHECK-NEXT: 0430: 00000000 01000000 00000000 1C000000
372 // CHECK-NEXT: 0440: 00000000 017A5052 00017810 0A840000
373 // CHECK-NEXT: 0450: 00000000 00001B0C 07089001 10000000
374 // CHECK-NEXT: 0460: 24000000 00000000 01000000 00000000
375 // CHECK-NEXT: 0470: 18000000 00000000 017A5052 00017810
376 // CHECK-NEXT: 0480: 048A0000 1B0C0708 90010000 10000000
377 // CHECK-NEXT: 0490: 20000000 00000000 01000000 00000000
378 // CHECK-NEXT: 04A0: 18000000 00000000 017A5052 00017810
379 // CHECK-NEXT: 04B0: 068B0000 00001B0C 07089001 10000000
380 // CHECK-NEXT: 04C0: 20000000 00000000 01000000 00000000
381 // CHECK-NEXT: 04D0: 1C000000 00000000 017A5052 00017810
382 // CHECK-NEXT: 04E0: 0A8C0000 00000000 00001B0C 07089001
383 // CHECK-NEXT: 04F0: 10000000 24000000 00000000 01000000
384 // CHECK-NEXT: 0500: 00000000 1C000000 00000000 017A5052
385 // CHECK-NEXT: 0510: 00017810 0A880000 00000000 00001B0C
386 // CHECK-NEXT: 0520: 07089001 10000000 24000000 00000000
387 // CHECK-NEXT: 0530: 01000000 00000000 1C000000 00000000
388 // CHECK-NEXT: 0540: 017A5052 00017810 0A900000 00000000
389 // CHECK-NEXT: 0550: 00001B0C 07089001 10000000 24000000
390 // CHECK-NEXT: 0560: 00000000 01000000 00000000 18000000
391 // CHECK-NEXT: 0570: 00000000 017A5052 00017810 04920000
392 // CHECK-NEXT: 0580: 1B0C0708 90010000 10000000 20000000
393 // CHECK-NEXT: 0590: 00000000 01000000 00000000 18000000
394 // CHECK-NEXT: 05A0: 00000000 017A5052 00017810 06930000
395 // CHECK-NEXT: 05B0: 00001B0C 07089001 10000000 20000000
396 // CHECK-NEXT: 05C0: 00000000 01000000 00000000 1C000000
397 // CHECK-NEXT: 05D0: 00000000 017A5052 00017810 0A940000
398 // CHECK-NEXT: 05E0: 00000000 00001B0C 07089001 10000000
399 // CHECK-NEXT: 05F0: 24000000 00000000 01000000 00000000
400 // CHECK-NEXT: 0600: 18000000 00000000 017A5052 00017810
401 // CHECK-NEXT: 0610: 049A0000 1B0C0708 90010000 10000000
402 // CHECK-NEXT: 0620: 20000000 00000000 01000000 00000000
403 // CHECK-NEXT: 0630: 18000000 00000000 017A5052 00017810
404 // CHECK-NEXT: 0640: 069B0000 00001B0C 07089001 10000000
405 // CHECK-NEXT: 0650: 20000000 00000000 01000000 00000000
406 // CHECK-NEXT: 0660: 1C000000 00000000 017A5052 00017810
407 // CHECK-NEXT: 0670: 0A9C0000 00000000 00001B0C 07089001
408 // CHECK-NEXT: 0680: 10000000 24000000 00000000 01000000
409 // CHECK-NEXT: 0690: 00000000 1C000000 00000000 017A5052
410 // CHECK-NEXT: 06A0: 00017810 0A980000 00000000 00001B0C
411 // CHECK-NEXT: 06B0: 07089001 10000000 24000000 00000000
412 // CHECK-NEXT: 06C0: 01000000 00000000
418 // CHECK-NEXT: Name: .rela.eh_frame
419 // CHECK-NEXT: Type: SHT_RELA
420 // CHECK-NEXT: Flags [
422 // CHECK-NEXT: Address: 0x0
423 // CHECK-NEXT: Offset: 0xE30
424 // CHECK-NEXT: Size: 1728
425 // CHECK-NEXT: Link: 7
426 // CHECK-NEXT: Info: 4
427 // CHECK-NEXT: AddressAlignment: 8
428 // CHECK-NEXT: EntrySize: 24
429 // CHECK-NEXT: Relocations [