xref: /llvm-project/bolt/test/X86/dwarf4-df-inlined-subroutine-lowpc-0.test (revision 11791ae7b0b05b8bd8d806331ff51da618912cf8)
1; RUN: rm -rf %t
2; RUN: mkdir %t
3; RUN: cd %t
4; RUN: llvm-mc -dwarf-version=4 -filetype=obj -triple x86_64-unknown-linux %p/Inputs/dwarf4-df-inlined-subroutine-lowpc-0-main.s \
5; RUN: -split-dwarf-file=main.dwo -o main.o
6; RUN: %clang %cflags -gdwarf-4 -gsplit-dwarf=split main.o -o main.exe
7; RUN: llvm-bolt main.exe -o main.exe.bolt --update-debug-sections
8; RUN: llvm-dwarfdump --debug-addr main.exe.bolt > log.txt
9; RUN: llvm-dwarfdump --debug-info --verbose --show-form main.dwo.dwo >> log.txt
10; RUN: cat log.txt | FileCheck -check-prefix=BOLT-MAIN %s
11
12;; Tests whether BOLT handles correctly DW_TAG_inlined_subroutine when DW_AT_low_pc is 0,
13;; and split dwarf is enabled.
14
15; BOLT-MAIN: 0x
16; BOLT-MAIN: 0x
17; BOLT-MAIN: 0x
18; BOLT-MAIN: 0x0000000000000000
19; BOLT-MAIN: DW_TAG_inlined_subroutine
20; BOLT-MAIN: DW_AT_abstract_origin [DW_FORM_ref4]
21; BOLT-MAIN-SAME: (cu + 0x0043 => {0x00000043} "_Z7doStuffi")
22; BOLT-MAIN: DW_AT_low_pc [DW_FORM_GNU_addr_index]
23; BOLT-MAIN-SAME: (indexed (00000003) address = <unresolved>)
24; BOLT-MAIN: DW_AT_high_pc [DW_FORM_data4] (0x00000015)
25; BOLT-MAIN: DW_TAG_inlined_subroutine
26; BOLT-MAIN: DW_AT_abstract_origin [DW_FORM_ref4]
27; BOLT-MAIN-SAME: (cu + 0x005a => {0x0000005a} "_Z11doStuffSamei")
28; BOLT-MAIN: DW_AT_low_pc [DW_FORM_GNU_addr_index]
29; BOLT-MAIN-SAME: (indexed (00000003) address = <unresolved>)
30; BOLT-MAIN: DW_AT_high_pc [DW_FORM_data4] (0x0000000f)
31