llvm/test/DebugInfo/dwarfdump-test.test
Alexey Samsonov eceb5b9977 Add basic support for .debug_ranges section to LLVM's DebugInfo library.
This section (introduced in DWARF-3) is used to define instruction address
ranges for functions that are not contiguous and can't be described
by low_pc/high_pc attributes (this is the usual case for inlined subroutines).
The patch is the first step to support fetching complete inlining info from DWARF.

Reviewed by Benjamin Kramer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162657 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-27 07:17:47 +00:00

57 lines
2.4 KiB
Plaintext

RUN: llvm-dwarfdump %p/Inputs/dwarfdump-test.elf-x86-64 \
RUN: --address=0x400589 --functions | FileCheck %s -check-prefix MAIN
RUN: llvm-dwarfdump %p/Inputs/dwarfdump-test.elf-x86-64 \
RUN: --address=0x400558 --functions | FileCheck %s -check-prefix FUNCTION
RUN: llvm-dwarfdump %p/Inputs/dwarfdump-test.elf-x86-64 \
RUN: --address=0x4005b6 --functions | FileCheck %s -check-prefix CTOR_WITH_SPEC
RUN: llvm-dwarfdump %p/Inputs/dwarfdump-test2.elf-x86-64 \
RUN: --address=0x4004b8 --functions | FileCheck %s -check-prefix MANY_CU_1
RUN: llvm-dwarfdump %p/Inputs/dwarfdump-test2.elf-x86-64 \
RUN: --address=0x4004c4 --functions | FileCheck %s -check-prefix MANY_CU_2
RUN: llvm-dwarfdump %p/Inputs/dwarfdump-test3.elf-x86-64 \
RUN: --address=0x580 --functions | FileCheck %s -check-prefix ABS_ORIGIN_1
RUN: llvm-dwarfdump %p/Inputs/dwarfdump-test3.elf-x86-64 \
RUN: --address=0x573 --functions | FileCheck %s -check-prefix INCLUDE_TEST_1
RUN: llvm-dwarfdump %p/Inputs/dwarfdump-test3.elf-x86-64 \
RUN: --address=0x56d --functions | FileCheck %s -check-prefix INCLUDE_TEST_2
RUN: llvm-dwarfdump %p/Inputs/dwarfdump-test4.elf-x86-64 \
RUN: --address=0x55c --functions \
RUN: | FileCheck %s -check-prefix MANY_SEQ_IN_LINE_TABLE
RUN: llvm-dwarfdump %p/Inputs/dwarfdump-test4.elf-x86-64 \
RUN: | FileCheck %s -check-prefix DEBUG_RANGES
MAIN: main
MAIN-NEXT: /tmp/dbginfo{{[/\\]}}dwarfdump-test.cc:16:10
FUNCTION: _Z1fii
FUNCTION-NEXT: /tmp/dbginfo{{[/\\]}}dwarfdump-test.cc:11:18
CTOR_WITH_SPEC: _ZN10DummyClassC1Ei
CTOR_WITH_SPEC-NEXT: /tmp/dbginfo{{[/\\]}}dwarfdump-test.cc:4:30
MANY_CU_1: a
MANY_CU_1-NEXT: /tmp/dbginfo{{[/\\]}}a.cc:2:0
MANY_CU_2: main
MANY_CU_2-NEXT: /tmp/dbginfo{{[/\\]}}main.cc:4:0
ABS_ORIGIN_1: C
ABS_ORIGIN_1-NEXT: /tmp/dbginfo{{[/\\]}}def2.cc:4:0
INCLUDE_TEST_1: _Z3do2v
INCLUDE_TEST_1-NEXT: /tmp/dbginfo{{[/\\]}}include{{[/\\]}}decl2.h:1:0
INCLUDE_TEST_2: _Z3do1v
INCLUDE_TEST_2-NEXT: /tmp/include{{[/\\]}}decl.h:5:0
MANY_SEQ_IN_LINE_TABLE: _Z1cv
MANY_SEQ_IN_LINE_TABLE-NEXT: /tmp/dbginfo/sequences{{[/\\]}}c.cc:2:0
DEBUG_RANGES: .debug_ranges contents:
DEBUG_RANGES-NEXT: 00000000 000000000000055c 0000000000000567
DEBUG_RANGES-NEXT: 00000000 0000000000000567 000000000000056d
DEBUG_RANGES-NEXT: 00000000 <End of list>
DEBUG_RANGES-NEXT: 00000030 0000000000000570 000000000000057b
DEBUG_RANGES-NEXT: 00000030 0000000000000567 000000000000056d
DEBUG_RANGES-NEXT: 00000030 <End of list>