From 164e3873cf41d01a9a67396575dceef7489cee64 Mon Sep 17 00:00:00 2001 From: Tom de Vries Date: Mon, 24 Jun 2019 18:26:10 +0200 Subject: [PATCH] [gdb/testsuite] Fix label reference in implptr-64bit.exp When running gdb.dwarf2/implptr-64bit.exp with board cc-with-dwz-m, we run into: ... dwz: dwz.c:2363: checksum_die: \ Assertion `\ ((!op_multifile && !rd_multifile && !fi_multifile) || cu != die_cu (ref)) \ && (!op_multifile || cu->cu_chunk == die_cu (ref)->cu_chunk)' failed. cc-with-tweaks.sh: line 218: 13030 Aborted \ $DWZ -m ${output_file}.dwz "$output_file" ${output_file}.alt > /dev/null ... In other words, PR dwz/24170. The trigger for the dwz PR is when intra-CU references are encoded using section-relative encoding DW_FORM_ref_addr, but could have been encoded using CU-relative encoding DW_FORM_ref4. Fix the intra-CU '%' label reference in implptr-64bit.exp. Tested on x86_64-linux. gdb/testsuite/ChangeLog: 2019-06-24 Tom de Vries * gdb.dwarf2/implptr-64bit.exp: Fix intra-CU '%' label reference. --- gdb/testsuite/ChangeLog | 4 ++++ gdb/testsuite/gdb.dwarf2/implptr-64bit.exp | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index a8e47553e45..5b702011a77 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2019-06-24 Tom de Vries + + * gdb.dwarf2/implptr-64bit.exp: Fix intra-CU '%' label reference. + 2019-06-24 Tom de Vries * gdb.trace/entry-values.exp: Use DW_FORM_udata instead of diff --git a/gdb/testsuite/gdb.dwarf2/implptr-64bit.exp b/gdb/testsuite/gdb.dwarf2/implptr-64bit.exp index b023ca0f12f..3e675016d05 100644 --- a/gdb/testsuite/gdb.dwarf2/implptr-64bit.exp +++ b/gdb/testsuite/gdb.dwarf2/implptr-64bit.exp @@ -84,7 +84,7 @@ proc test { dwarf_version offset_size addr_size ref_addr_size two_cu } { { name main } { low_pc main addr } { high_pc "main+0x100" addr } - { type %$int_label } + { type :$int_label } { external 1 flag } } { DW_TAG_variable { -- 2.30.2