diff options
-rw-r--r-- | gdb/ChangeLog | 2 | ||||
-rw-r--r-- | gdb/dwarf2read.c | 4 |
2 files changed, 6 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 82eaa82..9dc0441 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -7,6 +7,8 @@ macros for accessing ranges in struct block. (make_blockranges): New declaration. block.c (make_blockranges): New function. + * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES + for block. 2018-08-23 Xavier Roirand <roirand@adacore.com> diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c index 81a0087..8834d08 100644 --- a/gdb/dwarf2read.c +++ b/gdb/dwarf2read.c @@ -14846,6 +14846,7 @@ dwarf2_record_block_ranges (struct die_info *die, struct block *block, unsigned long offset = (DW_UNSND (attr) + (need_ranges_base ? cu->ranges_base : 0)); + std::vector<blockrange> blockvec; dwarf2_ranges_process (offset, cu, [&] (CORE_ADDR start, CORE_ADDR end) { @@ -14854,7 +14855,10 @@ dwarf2_record_block_ranges (struct die_info *die, struct block *block, start = gdbarch_adjust_dwarf2_addr (gdbarch, start); end = gdbarch_adjust_dwarf2_addr (gdbarch, end); cu->builder->record_block_range (block, start, end - 1); + blockvec.emplace_back (start, end); }); + + BLOCK_RANGES(block) = make_blockranges (objfile, blockvec); } } |