From: Tom de Vries Date: Fri, 30 Sep 2022 03:58:43 +0000 (+0200) Subject: [gdb/testsuite] Add aranges to gdb.dwarf2/dw2-dir-file-name.exp X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=511f4ff4d9bcaed1ed53ee64211d7c9f80f07fed;p=binutils-gdb.git [gdb/testsuite] Add aranges to gdb.dwarf2/dw2-dir-file-name.exp Since commit 52b920c5d20 ("[gdb/testsuite] Fix gdb.dwarf2/dw2-dir-file-name.exp for ppc64le"), the test-case fails with target board cc-with-debug-names, due to missing .debug_aranges info. Add the missing .debug_aranges info. Also add a file_id option to Dwarf::assemble, to make it possible to contribute to an already open file. Tested on x86_64-linux. --- diff --git a/gdb/testsuite/gdb.dwarf2/dw2-dir-file-name.exp b/gdb/testsuite/gdb.dwarf2/dw2-dir-file-name.exp index 3827ed744b5..d9d34440b16 100644 --- a/gdb/testsuite/gdb.dwarf2/dw2-dir-file-name.exp +++ b/gdb/testsuite/gdb.dwarf2/dw2-dir-file-name.exp @@ -317,6 +317,22 @@ puts -nonewline $f "\ " out_compdir out_cu +Dwarf::assemble { add_dummy_cus 0 file_id $f } { + global func_info_names + + foreach name $func_info_names { + global ${name}_start + global ${name}_end + set name_start [set ${name}_start] + set name_end [set ${name}_end] + + set cu_label .L${name}_begin + aranges {} cu_label { + arange {} $name_start "$name_end - $name_start" + } + } +} + puts $f " .section .debug_line" out_compdir out_line diff --git a/gdb/testsuite/lib/dwarf.exp b/gdb/testsuite/lib/dwarf.exp index 6db0ed28deb..b85ec290299 100644 --- a/gdb/testsuite/lib/dwarf.exp +++ b/gdb/testsuite/lib/dwarf.exp @@ -3193,6 +3193,9 @@ namespace eval Dwarf { # - the name of the file where the generated assembly # code is written. # default = "". + # file_id + # - open file where the generated assemble core is written. + # default = "". # add_dummy_cus <0|1> # - Whether to add dummy CUs before and after the CUs # added in the BODY. @@ -3233,6 +3236,7 @@ namespace eval Dwarf { parse_options { { filename "" } + { file_id "" } { add_dummy_cus 1 } } @@ -3241,7 +3245,12 @@ namespace eval Dwarf { set _initialized 1 } - set _output_file [open $filename w] + if { $file_id != "" } { + set _output_file $file_id + } else { + set _output_file [open $filename w] + } + set _cu_count -1 _empty_array _deferred_output set _defer "" @@ -3274,7 +3283,9 @@ namespace eval Dwarf { _write_deferred_output - catch {close $_output_file} + if { $file_id == "" } { + catch {close $_output_file} + } set _output_file {} } }