Fix Fission (broken by my previous patch)

Message ID CAENS6Ev8byUj2N+RNawNWmC8_f_zgEb6_b9hWfmAPrN5OX+CrA@mail.gmail.com
State New, archived
Headers

Commit Message

David Blaikie July 18, 2017, 12:11 a.m. UTC
  gdb/ChangeLog:

2017-07-17  David Blaikie  <dblaikie@gmail.com>

        * dwarf2read.c (create_cus_hash_table): re-add lost
initialization of dwo_cu's dwo_file

Turns out somewhere along the refactoring of the multiple-CU support
for Fission I broke the patch before submitting it (& seems to have
broken Fission support generally)

Syncing back to the point at which the patch was committed, the
previous test results on my machine are:

expected passes: 36137
unexpected failures: 416

with the previous (broken) patch committed:

expected passes: 36131
unexpected failures: 429

With this one line patch applied on top of the broken commit:

expected passes: 36144
unexpected failures: 416

(& all other result counts remained the same in all 3 cases)
  

Comments

Pedro Alves July 18, 2017, 3:14 p.m. UTC | #1
On 07/18/2017 01:11 AM, David Blaikie wrote:
> gdb/ChangeLog:
> 
> 2017-07-17  David Blaikie  <dblaikie@gmail.com>
> 
>         * dwarf2read.c (create_cus_hash_table): re-add lost
> initialization of dwo_cu's dwo_file

Thanks, merged.
  

Patch

diff --git gdb/dwarf2read.c gdb/dwarf2read.c
index 0fdcd42ee0..23fd19d8a0 100644
--- gdb/dwarf2read.c
+++ gdb/dwarf2read.c
@@ -9739,6 +9739,7 @@  create_cus_hash_table (struct dwo_file &dwo_file, dwarf2_section_info &section,
       per_cu.is_debug_types = 0;
       per_cu.sect_off = sect_offset (info_ptr - section.buffer);
       per_cu.section = &section;
+      create_dwo_cu_data.dwo_file = &dwo_file;
 
       init_cutu_and_read_dies_no_follow (
 	  &per_cu, &dwo_file, create_dwo_cu_reader, &create_dwo_cu_data);