xref: /llvm-project/bolt/test/X86/dwarf4-df-do-no-convert-low-pc-high-pc-to-ranges.test (revision 11791ae7b0b05b8bd8d806331ff51da618912cf8)
1; REQUIRES: system-linux
2
3; RUN: rm -rf %t
4; RUN: mkdir %t
5; RUN: cd %t
6
7; RUN: llvm-mc -split-dwarf-file=main.dwo -dwarf-version=4 -filetype=obj -triple x86_64-unknown-linux %p/Inputs/dwarf4-df-do-no-convert-low-pc-high-pc-to-ranges.s -o main.o
8; RUN: %clang %cflags -gsplit-dwarf=split main.o -o main.exe -Wl,-q
9; RUN: llvm-bolt main.exe -o main.exe.bolt --update-debug-sections
10; RUN: llvm-dwarfdump --show-form --verbose --debug-info main.dwo | FileCheck --check-prefix=PRECHECK %s
11; RUN: llvm-dwarfdump --show-form --verbose --debug-info main.dwo.dwo | FileCheck --check-prefix=POSTCHECK %s
12
13;; This test checks that we do not convert low_pc/high_pc to ranges for DW_TAG_inlined_subroutine,
14;; when there is only one output range entry.
15
16; PRECHECK: DW_TAG_inlined_subroutine
17; PRECHECK: DW_AT_abstract_origin
18; PRECHECK: DW_AT_low_pc [DW_FORM_GNU_addr_index] (indexed (00000001)
19; PRECHECK: DW_AT_high_pc [DW_FORM_data4] (0x00000002)
20
21; POSTCHECK: DW_TAG_inlined_subroutine
22; POSTCHECK: DW_AT_abstract_origin
23; POSTCHECK: DW_AT_low_pc [DW_FORM_GNU_addr_index] (indexed (00000003)
24; POSTCHECK: DW_AT_high_pc [DW_FORM_data4] (0x00000002)
25