aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom de Vries <tdevries@suse.de>2021-08-27 16:38:53 +0200
committerTom de Vries <tdevries@suse.de>2021-08-27 16:38:53 +0200
commit1d4a20b5769453ba69bd94c7731fc268fa21ff9a (patch)
treedd0b759f89c9333ed50177f92edf4169dbe0eb1d
parent9f63756509bc44663c9d15c7b9578cedb406e356 (diff)
downloadgdb-1d4a20b5769453ba69bd94c7731fc268fa21ff9a.zip
gdb-1d4a20b5769453ba69bd94c7731fc268fa21ff9a.tar.gz
gdb-1d4a20b5769453ba69bd94c7731fc268fa21ff9a.tar.bz2
[gdb/testsuite] Add .debug_aranges in more test-cases
A couple of test-cases fail when run with target board cc-with-debug-names due to missing .debug_aranges entries for the CUs added by the dwarf assembler. Add a .debug_aranges entry for those CUs. Tested on x86_64-linux.
-rw-r--r--gdb/testsuite/gdb.dwarf2/dw2-ranges-base.exp8
-rw-r--r--gdb/testsuite/gdb.dwarf2/frame-inlined-in-outer-frame.exp6
-rw-r--r--gdb/testsuite/gdb.dwarf2/template-specification-full-name.exp11
3 files changed, 22 insertions, 3 deletions
diff --git a/gdb/testsuite/gdb.dwarf2/dw2-ranges-base.exp b/gdb/testsuite/gdb.dwarf2/dw2-ranges-base.exp
index 4a9634e..e65b4c8 100644
--- a/gdb/testsuite/gdb.dwarf2/dw2-ranges-base.exp
+++ b/gdb/testsuite/gdb.dwarf2/dw2-ranges-base.exp
@@ -52,7 +52,7 @@ Dwarf::assemble $asm_file {
# this information being correct (w.r.t. funtion / argument types)
# just so long as the compilation using makes use of the
# .debug_ranges data then the test achieves its objective.
- cu {} {
+ cu { label cu_label } {
compile_unit {
{language @DW_LANG_C}
{name dw-ranges-base.c}
@@ -123,6 +123,12 @@ Dwarf::assemble $asm_file {
range 0 [lindex $frame3_func 1]
}
}
+
+ aranges {} cu_label {
+ arange [lindex $main_func 0] [lindex $main_func 1]
+ arange [lindex $frame2_func 0] [lindex $frame2_func 1]
+ arange [lindex $frame3_func 0] [lindex $frame3_func 1]
+ }
}
if { [prepare_for_testing "failed to prepare" ${testfile} \
diff --git a/gdb/testsuite/gdb.dwarf2/frame-inlined-in-outer-frame.exp b/gdb/testsuite/gdb.dwarf2/frame-inlined-in-outer-frame.exp
index 76b90f2..ff12cd7 100644
--- a/gdb/testsuite/gdb.dwarf2/frame-inlined-in-outer-frame.exp
+++ b/gdb/testsuite/gdb.dwarf2/frame-inlined-in-outer-frame.exp
@@ -43,7 +43,7 @@ Dwarf::assemble $dwarf_asm {
# See the comment in the .S file for the equivalent C program this is meant
# to represent.
- cu { addr_size 4 } {
+ cu { label cu_label addr_size 4 } {
DW_TAG_compile_unit {
{DW_AT_name $srcfile}
{DW_AT_stmt_list $stmt_list DW_FORM_sec_offset}
@@ -93,6 +93,10 @@ Dwarf::assemble $dwarf_asm {
include_dir "/some/directory"
file_name "/some/directory/file.c" 0
}
+
+ aranges {} cu_label {
+ arange __cu_low_pc __cu_high_pc
+ }
}
if { [build_executable ${testfile}.exp ${testfile} "$srcfile $dwarf_asm" \
diff --git a/gdb/testsuite/gdb.dwarf2/template-specification-full-name.exp b/gdb/testsuite/gdb.dwarf2/template-specification-full-name.exp
index cf61e33..5c59777 100644
--- a/gdb/testsuite/gdb.dwarf2/template-specification-full-name.exp
+++ b/gdb/testsuite/gdb.dwarf2/template-specification-full-name.exp
@@ -28,9 +28,14 @@ if {![dwarf2_support]} {
standard_testfile main.c .S
+lassign [function_range main ${srcdir}/${subdir}/${srcfile}] \
+ main_start main_length
+
set asm_file [standard_output_file $srcfile2]
Dwarf::assemble $asm_file {
- cu {} {
+ global main_start main_length
+
+ cu { label cu_start } {
DW_TAG_compile_unit {
{DW_AT_language @DW_LANG_C_plus_plus}
} {
@@ -62,6 +67,10 @@ Dwarf::assemble $asm_file {
}
}
}
+
+ aranges {} cu_start {
+ arange "$main_start" "$main_length"
+ }
}
if { [prepare_for_testing "failed to prepare" ${testfile} \