xref: /llvm-project/llvm/test/DebugInfo/X86/symbolize_function_start_v5.s (revision 3329cec2f79185bafd678f310fafadba2a8c76d2)
17cdd2623SDavid Blaikie# RUN: rm -rf %t
27cdd2623SDavid Blaikie# RUN: mkdir %t
37cdd2623SDavid Blaikie# RUN: llvm-mc -filetype=obj -triple=x86_64 -dwarf-version=4 %s -o %t/test.o -split-dwarf-file %t/test.dwo
47cdd2623SDavid Blaikie# RUN: cd %t
57cdd2623SDavid Blaikie# RUN: llvm-symbolizer --verbose 0x0 --obj=test.o | FileCheck --check-prefix=SYM %s
67cdd2623SDavid Blaikie# RUN: llvm-dwarfdump -lookup=0x1 test.o | FileCheck --check-prefix=LOOKUP %s
77cdd2623SDavid Blaikie
8*3329cec2SFangrui Song# SYM: Filename: .{{[/\\]}}test.c
9*3329cec2SFangrui Song# SYM: Function start filename: .{{[/\\]}}test.c
107cdd2623SDavid Blaikie
117cdd2623SDavid Blaikie# LOOKUP: Line info: line 0, column 0, start file 'test.c', start line 1
127cdd2623SDavid Blaikie
137cdd2623SDavid Blaikie	.text
147cdd2623SDavid Blaikie	.file	"test.c"
157cdd2623SDavid Blaikie	.globl	f1                              # -- Begin function f1
167cdd2623SDavid Blaikie	.p2align	4, 0x90
177cdd2623SDavid Blaikie	.type	f1,@function
187cdd2623SDavid Blaikief1:                                     # @f1
197cdd2623SDavid Blaikie.Lfunc_begin0:
207cdd2623SDavid Blaikie	.file	0 "./" "test.c" md5 0xde4c8c8bd673cd6151beb4570168727a
217cdd2623SDavid Blaikie	.loc	0 1 0                           # test.c:1:0
227cdd2623SDavid Blaikie	.cfi_startproc
237cdd2623SDavid Blaikie# %bb.0:                                # %entry
247cdd2623SDavid Blaikie	pushq	%rbp
257cdd2623SDavid Blaikie	.cfi_def_cfa_offset 16
267cdd2623SDavid Blaikie	.cfi_offset %rbp, -16
277cdd2623SDavid Blaikie	movq	%rsp, %rbp
287cdd2623SDavid Blaikie	.cfi_def_cfa_register %rbp
297cdd2623SDavid Blaikie.Ltmp0:
307cdd2623SDavid Blaikie	.loc	0 1 13 prologue_end             # test.c:1:13
317cdd2623SDavid Blaikie	popq	%rbp
327cdd2623SDavid Blaikie	.cfi_def_cfa %rsp, 8
337cdd2623SDavid Blaikie	retq
347cdd2623SDavid Blaikie.Ltmp1:
357cdd2623SDavid Blaikie.Lfunc_end0:
367cdd2623SDavid Blaikie	.size	f1, .Lfunc_end0-f1
377cdd2623SDavid Blaikie	.cfi_endproc
387cdd2623SDavid Blaikie                                        # -- End function
397cdd2623SDavid Blaikie	.section	.debug_abbrev,"",@progbits
407cdd2623SDavid Blaikie	.byte	1                               # Abbreviation Code
417cdd2623SDavid Blaikie	.byte	74                              # DW_TAG_skeleton_unit
427cdd2623SDavid Blaikie	.byte	0                               # DW_CHILDREN_no
437cdd2623SDavid Blaikie	.byte	16                              # DW_AT_stmt_list
447cdd2623SDavid Blaikie	.byte	23                              # DW_FORM_sec_offset
457cdd2623SDavid Blaikie	.byte	114                             # DW_AT_str_offsets_base
467cdd2623SDavid Blaikie	.byte	23                              # DW_FORM_sec_offset
477cdd2623SDavid Blaikie	.byte	27                              # DW_AT_comp_dir
487cdd2623SDavid Blaikie	.byte	37                              # DW_FORM_strx1
497cdd2623SDavid Blaikie	.ascii	"\264B"                         # DW_AT_GNU_pubnames
507cdd2623SDavid Blaikie	.byte	25                              # DW_FORM_flag_present
517cdd2623SDavid Blaikie	.byte	118                             # DW_AT_dwo_name
527cdd2623SDavid Blaikie	.byte	37                              # DW_FORM_strx1
537cdd2623SDavid Blaikie	.byte	17                              # DW_AT_low_pc
547cdd2623SDavid Blaikie	.byte	27                              # DW_FORM_addrx
557cdd2623SDavid Blaikie	.byte	18                              # DW_AT_high_pc
567cdd2623SDavid Blaikie	.byte	6                               # DW_FORM_data4
577cdd2623SDavid Blaikie	.byte	115                             # DW_AT_addr_base
587cdd2623SDavid Blaikie	.byte	23                              # DW_FORM_sec_offset
597cdd2623SDavid Blaikie	.byte	0                               # EOM(1)
607cdd2623SDavid Blaikie	.byte	0                               # EOM(2)
617cdd2623SDavid Blaikie	.byte	0                               # EOM(3)
627cdd2623SDavid Blaikie	.section	.debug_info,"",@progbits
637cdd2623SDavid Blaikie.Lcu_begin0:
647cdd2623SDavid Blaikie	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit
657cdd2623SDavid Blaikie.Ldebug_info_start0:
667cdd2623SDavid Blaikie	.short	5                               # DWARF version number
677cdd2623SDavid Blaikie	.byte	4                               # DWARF Unit Type
687cdd2623SDavid Blaikie	.byte	8                               # Address Size (in bytes)
697cdd2623SDavid Blaikie	.long	.debug_abbrev                   # Offset Into Abbrev. Section
707cdd2623SDavid Blaikie	.quad	-2320906069171721424
717cdd2623SDavid Blaikie	.byte	1                               # Abbrev [1] 0x14:0x14 DW_TAG_skeleton_unit
727cdd2623SDavid Blaikie	.long	.Lline_table_start0             # DW_AT_stmt_list
737cdd2623SDavid Blaikie	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base
747cdd2623SDavid Blaikie	.byte	0                               # DW_AT_comp_dir
757cdd2623SDavid Blaikie                                        # DW_AT_GNU_pubnames
767cdd2623SDavid Blaikie	.byte	1                               # DW_AT_dwo_name
777cdd2623SDavid Blaikie	.byte	0                               # DW_AT_low_pc
787cdd2623SDavid Blaikie	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc
797cdd2623SDavid Blaikie	.long	.Laddr_table_base0              # DW_AT_addr_base
807cdd2623SDavid Blaikie.Ldebug_info_end0:
817cdd2623SDavid Blaikie	.section	.debug_str_offsets,"",@progbits
827cdd2623SDavid Blaikie	.long	12                              # Length of String Offsets Set
837cdd2623SDavid Blaikie	.short	5
847cdd2623SDavid Blaikie	.short	0
857cdd2623SDavid Blaikie.Lstr_offsets_base0:
867cdd2623SDavid Blaikie	.section	.debug_str,"MS",@progbits,1
877cdd2623SDavid Blaikie.Lskel_string0:
887cdd2623SDavid Blaikie	.asciz	"./"                            # string offset=0
897cdd2623SDavid Blaikie.Lskel_string1:
907cdd2623SDavid Blaikie	.asciz	"./test.dwo"                    # string offset=3
917cdd2623SDavid Blaikie	.section	.debug_str_offsets,"",@progbits
927cdd2623SDavid Blaikie	.long	.Lskel_string0
937cdd2623SDavid Blaikie	.long	.Lskel_string1
947cdd2623SDavid Blaikie	.section	.debug_str_offsets.dwo,"e",@progbits
957cdd2623SDavid Blaikie	.long	20                              # Length of String Offsets Set
967cdd2623SDavid Blaikie	.short	5
977cdd2623SDavid Blaikie	.short	0
987cdd2623SDavid Blaikie	.section	.debug_str.dwo,"eMS",@progbits,1
997cdd2623SDavid Blaikie.Linfo_string0:
1007cdd2623SDavid Blaikie	.asciz	"f1"                            # string offset=0
1017cdd2623SDavid Blaikie.Linfo_string1:
1027cdd2623SDavid Blaikie	.asciz	"clang version 14.0.0 (git@github.com:llvm/llvm-project.git e7fdff403e849b18d93cd4a5cb760cba66a92c0b)" # string offset=3
1037cdd2623SDavid Blaikie.Linfo_string2:
1047cdd2623SDavid Blaikie	.asciz	"test.c"                        # string offset=104
1057cdd2623SDavid Blaikie.Linfo_string3:
1067cdd2623SDavid Blaikie	.asciz	"./test.dwo"                    # string offset=111
1077cdd2623SDavid Blaikie	.section	.debug_str_offsets.dwo,"e",@progbits
1087cdd2623SDavid Blaikie	.long	0
1097cdd2623SDavid Blaikie	.long	3
1107cdd2623SDavid Blaikie	.long	104
1117cdd2623SDavid Blaikie	.long	111
1127cdd2623SDavid Blaikie	.section	.debug_info.dwo,"e",@progbits
1137cdd2623SDavid Blaikie	.long	.Ldebug_info_dwo_end0-.Ldebug_info_dwo_start0 # Length of Unit
1147cdd2623SDavid Blaikie.Ldebug_info_dwo_start0:
1157cdd2623SDavid Blaikie	.short	5                               # DWARF version number
1167cdd2623SDavid Blaikie	.byte	5                               # DWARF Unit Type
1177cdd2623SDavid Blaikie	.byte	8                               # Address Size (in bytes)
1187cdd2623SDavid Blaikie	.long	0                               # Offset Into Abbrev. Section
1197cdd2623SDavid Blaikie	.quad	-2320906069171721424
1207cdd2623SDavid Blaikie	.byte	1                               # Abbrev [1] 0x14:0x12 DW_TAG_compile_unit
1217cdd2623SDavid Blaikie	.byte	1                               # DW_AT_producer
1227cdd2623SDavid Blaikie	.short	12                              # DW_AT_language
1237cdd2623SDavid Blaikie	.byte	2                               # DW_AT_name
1247cdd2623SDavid Blaikie	.byte	3                               # DW_AT_dwo_name
1257cdd2623SDavid Blaikie	.byte	2                               # Abbrev [2] 0x1a:0xb DW_TAG_subprogram
1267cdd2623SDavid Blaikie	.byte	0                               # DW_AT_low_pc
1277cdd2623SDavid Blaikie	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc
1287cdd2623SDavid Blaikie	.byte	1                               # DW_AT_frame_base
1297cdd2623SDavid Blaikie	.byte	86
1307cdd2623SDavid Blaikie	.byte	0                               # DW_AT_name
1317cdd2623SDavid Blaikie	.byte	0                               # DW_AT_decl_file
1327cdd2623SDavid Blaikie	.byte	1                               # DW_AT_decl_line
1337cdd2623SDavid Blaikie                                        # DW_AT_external
1347cdd2623SDavid Blaikie	.byte	0                               # End Of Children Mark
1357cdd2623SDavid Blaikie.Ldebug_info_dwo_end0:
1367cdd2623SDavid Blaikie	.section	.debug_abbrev.dwo,"e",@progbits
1377cdd2623SDavid Blaikie	.byte	1                               # Abbreviation Code
1387cdd2623SDavid Blaikie	.byte	17                              # DW_TAG_compile_unit
1397cdd2623SDavid Blaikie	.byte	1                               # DW_CHILDREN_yes
1407cdd2623SDavid Blaikie	.byte	37                              # DW_AT_producer
1417cdd2623SDavid Blaikie	.byte	37                              # DW_FORM_strx1
1427cdd2623SDavid Blaikie	.byte	19                              # DW_AT_language
1437cdd2623SDavid Blaikie	.byte	5                               # DW_FORM_data2
1447cdd2623SDavid Blaikie	.byte	3                               # DW_AT_name
1457cdd2623SDavid Blaikie	.byte	37                              # DW_FORM_strx1
1467cdd2623SDavid Blaikie	.byte	118                             # DW_AT_dwo_name
1477cdd2623SDavid Blaikie	.byte	37                              # DW_FORM_strx1
1487cdd2623SDavid Blaikie	.byte	0                               # EOM(1)
1497cdd2623SDavid Blaikie	.byte	0                               # EOM(2)
1507cdd2623SDavid Blaikie	.byte	2                               # Abbreviation Code
1517cdd2623SDavid Blaikie	.byte	46                              # DW_TAG_subprogram
1527cdd2623SDavid Blaikie	.byte	0                               # DW_CHILDREN_no
1537cdd2623SDavid Blaikie	.byte	17                              # DW_AT_low_pc
1547cdd2623SDavid Blaikie	.byte	27                              # DW_FORM_addrx
1557cdd2623SDavid Blaikie	.byte	18                              # DW_AT_high_pc
1567cdd2623SDavid Blaikie	.byte	6                               # DW_FORM_data4
1577cdd2623SDavid Blaikie	.byte	64                              # DW_AT_frame_base
1587cdd2623SDavid Blaikie	.byte	24                              # DW_FORM_exprloc
1597cdd2623SDavid Blaikie	.byte	3                               # DW_AT_name
1607cdd2623SDavid Blaikie	.byte	37                              # DW_FORM_strx1
1617cdd2623SDavid Blaikie	.byte	58                              # DW_AT_decl_file
1627cdd2623SDavid Blaikie	.byte	11                              # DW_FORM_data1
1637cdd2623SDavid Blaikie	.byte	59                              # DW_AT_decl_line
1647cdd2623SDavid Blaikie	.byte	11                              # DW_FORM_data1
1657cdd2623SDavid Blaikie	.byte	63                              # DW_AT_external
1667cdd2623SDavid Blaikie	.byte	25                              # DW_FORM_flag_present
1677cdd2623SDavid Blaikie	.byte	0                               # EOM(1)
1687cdd2623SDavid Blaikie	.byte	0                               # EOM(2)
1697cdd2623SDavid Blaikie	.byte	0                               # EOM(3)
1707cdd2623SDavid Blaikie	.section	.debug_addr,"",@progbits
1717cdd2623SDavid Blaikie	.long	.Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution
1727cdd2623SDavid Blaikie.Ldebug_addr_start0:
1737cdd2623SDavid Blaikie	.short	5                               # DWARF version number
1747cdd2623SDavid Blaikie	.byte	8                               # Address size
1757cdd2623SDavid Blaikie	.byte	0                               # Segment selector size
1767cdd2623SDavid Blaikie.Laddr_table_base0:
1777cdd2623SDavid Blaikie	.quad	.Lfunc_begin0
1787cdd2623SDavid Blaikie.Ldebug_addr_end0:
1797cdd2623SDavid Blaikie	.section	.debug_gnu_pubnames,"",@progbits
1807cdd2623SDavid Blaikie	.long	.LpubNames_end0-.LpubNames_start0 # Length of Public Names Info
1817cdd2623SDavid Blaikie.LpubNames_start0:
1827cdd2623SDavid Blaikie	.short	2                               # DWARF Version
1837cdd2623SDavid Blaikie	.long	.Lcu_begin0                     # Offset of Compilation Unit Info
1847cdd2623SDavid Blaikie	.long	40                              # Compilation Unit Length
1857cdd2623SDavid Blaikie	.long	26                              # DIE offset
1867cdd2623SDavid Blaikie	.byte	48                              # Attributes: FUNCTION, EXTERNAL
1877cdd2623SDavid Blaikie	.asciz	"f1"                            # External Name
1887cdd2623SDavid Blaikie	.long	0                               # End Mark
1897cdd2623SDavid Blaikie.LpubNames_end0:
1907cdd2623SDavid Blaikie	.section	.debug_gnu_pubtypes,"",@progbits
1917cdd2623SDavid Blaikie	.long	.LpubTypes_end0-.LpubTypes_start0 # Length of Public Types Info
1927cdd2623SDavid Blaikie.LpubTypes_start0:
1937cdd2623SDavid Blaikie	.short	2                               # DWARF Version
1947cdd2623SDavid Blaikie	.long	.Lcu_begin0                     # Offset of Compilation Unit Info
1957cdd2623SDavid Blaikie	.long	40                              # Compilation Unit Length
1967cdd2623SDavid Blaikie	.long	0                               # End Mark
1977cdd2623SDavid Blaikie.LpubTypes_end0:
1987cdd2623SDavid Blaikie	.ident	"clang version 14.0.0 (git@github.com:llvm/llvm-project.git e7fdff403e849b18d93cd4a5cb760cba66a92c0b)"
1997cdd2623SDavid Blaikie	.section	".note.GNU-stack","",@progbits
2007cdd2623SDavid Blaikie	.addrsig
2017cdd2623SDavid Blaikie	.section	.debug_line,"",@progbits
2027cdd2623SDavid Blaikie.Lline_table_start0:
203