[gdb/testsuite] Fix DW_AT_decl_file in gdb.trace tests

When running gdb.trace/{entry-values.exp,unavailable-dwarf-piece.exp} with
board cc-with-dwz, we run into two failures related to the DW_AT_decl_file
attribute:
- The encoding DW_FOR_sdata is used for DW_AT_decl_file, while the attribute
  is required to have a an "unsigned integer constant" value.
- The DW_AT_decl_file attributes refer to a file with index one, while there's
  no such file.

Fix this by using DW_FOR_udata and the value 0, meaning "no file specified".

Tested on x86_64-linux with board native-gdbserver.

gdb/testsuite/ChangeLog:

2019-06-24  Tom de Vries  <tdevries@suse.de>

	* gdb.trace/entry-values.exp: Use DW_FORM_udata instead of
	DW_FOR_sdata for DW_AT_decl_file.  Use 0 for DW_AT_decl_file.
	* gdb.trace/unavailable-dwarf-piece.exp: Same.
This commit is contained in:
Tom de Vries 2019-06-24 13:29:23 +02:00
parent 385b97d3ac
commit 824eacee59
3 changed files with 12 additions and 6 deletions

View File

@ -1,3 +1,9 @@
2019-06-24 Tom de Vries <tdevries@suse.de>
* gdb.trace/entry-values.exp: Use DW_FORM_udata instead of
DW_FOR_sdata for DW_AT_decl_file. Use 0 for DW_AT_decl_file.
* gdb.trace/unavailable-dwarf-piece.exp: Same.
2019-06-24 Tom de Vries <tdevries@suse.de>
* gdb.dwarf2/inlined_subroutine-inheritance.exp:

View File

@ -109,7 +109,7 @@ Dwarf::assemble $asm_file {
}
foo_label: subprogram {
{decl_file 1 sdata}
{decl_file 0 udata}
{MACRO_AT_func { foo ${srcdir}/${subdir}/${srcfile} }}
} {
formal_parameter {
@ -126,7 +126,7 @@ Dwarf::assemble $asm_file {
subprogram {
{name bar}
{decl_file 1 sdata}
{decl_file 0 udata}
{low_pc $bar_start addr}
{high_pc "$bar_start + $bar_length" addr}
{GNU_all_call_sites 1 sdata}

View File

@ -44,7 +44,7 @@ Dwarf::assemble $asm_file {
struct_s_label: DW_TAG_structure_type {
{name s}
{byte_size 3 DW_FORM_sdata}
{decl_file 1 DW_FORM_sdata}
{decl_file 0 DW_FORM_udata}
{decl_line 1 DW_FORM_sdata}
} {
DW_TAG_member {
@ -73,7 +73,7 @@ Dwarf::assemble $asm_file {
struct_t_label: DW_TAG_structure_type {
{name t}
{byte_size 3 DW_FORM_sdata}
{decl_file 1 DW_FORM_sdata}
{decl_file 0 DW_FORM_udata}
{decl_line 1 DW_FORM_sdata}
} {
DW_TAG_member {
@ -174,7 +174,7 @@ Dwarf::assemble $asm_file {
DW_TAG_subprogram {
{name foo}
{decl_file 1 sdata}
{decl_file 0 udata}
{low_pc foo_start_lbl addr}
{high_pc foo_end_lbl addr}
} {
@ -219,7 +219,7 @@ Dwarf::assemble $asm_file {
DW_TAG_subprogram {
{name bar}
{decl_file 1 sdata}
{decl_file 0 udata}
{low_pc bar_start_lbl addr}
{high_pc bar_end_lbl addr}
} {