From: Tom de Vries Date: Mon, 8 Feb 2021 14:18:12 +0000 (+0100) Subject: [gdb/testsuite] Use DW_FORM_ref_addr in gdb.dwarf2/enqueued-cu-base-addr.exp X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4001d90ddecdfc0e89daa4eca17006e20ad626c0;p=binutils-gdb.git [gdb/testsuite] Use DW_FORM_ref_addr in gdb.dwarf2/enqueued-cu-base-addr.exp When running test-case gdb.dwarf2/enqueued-cu-base-addr.exp with target board cc-with-dwz, I get: ... gdb compile failed, dwz: enqueued-cu-base-addr: \ Couldn't find DIE at [100] referenced by DW_AT_type from DIE at [d8] ... At 0xd8 we have DIE: ... <1>: Abbrev Number: 3 (DW_TAG_variable) DW_AT_name : foo
DW_AT_type : <0x100> DW_AT_const_value : 1 ... referring to: ... <1><100>: Abbrev Number: 3 (DW_TAG_base_type) <101> DW_AT_byte_size : 4 <102> DW_AT_encoding : 5 (signed) <103> DW_AT_name : int ... The reference is inter-CU, but the used abbrev uses DW_FORM_ref4: ... 3 DW_TAG_variable [no children] DW_AT_name DW_FORM_string DW_AT_type DW_FORM_ref4 DW_AT_const_value DW_FORM_sdata DW_AT value: 0 DW_FORM value: 0 ... which is for intra-CU references. Fix this by using a '%' instead of a ':' label prefix in the dwarf assembly. Tested on x86_64-linux. gdb/testsuite/ChangeLog: 2021-02-08 Tom de Vries * gdb.dwarf2/enqueued-cu-base-addr.exp: Fix inter-CU reference. --- diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 3e622adb4d0..8aa739749f0 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2021-02-08 Tom de Vries + + * gdb.dwarf2/enqueued-cu-base-addr.exp: Fix inter-CU reference. + 2021-02-08 Andrew Burgess * gdb.python/tui-window-disabled.c: New file. diff --git a/gdb/testsuite/gdb.dwarf2/enqueued-cu-base-addr.exp b/gdb/testsuite/gdb.dwarf2/enqueued-cu-base-addr.exp index 2b93bc87feb..3cf6b079908 100644 --- a/gdb/testsuite/gdb.dwarf2/enqueued-cu-base-addr.exp +++ b/gdb/testsuite/gdb.dwarf2/enqueued-cu-base-addr.exp @@ -50,7 +50,7 @@ Dwarf::assemble $asm_file { } { DW_TAG_variable { {name foo} - {type :$int_label} + {type %$int_label} {const_value 1 DW_FORM_sdata} } }