diff options
author | Joshua Peraza <jperaza@chromium.org> | 2018-08-16 13:42:04 -0700 |
---|---|---|
committer | Joshua Peraza <jperaza@chromium.org> | 2018-08-17 04:26:39 +0000 |
commit | 6ee298a346237f88a938e96c038802b729b51e9d (patch) | |
tree | b36b8d7fbf2e898c217767be7afe5c17c4a4c043 | |
parent | Fix Windows client_tests GYP build after 88d8114fda3e (diff) | |
download | breakpad-6ee298a346237f88a938e96c038802b729b51e9d.tar.xz |
Treat high_pc as an address for DW_FORM_GNU_addr_index
The high_pc is an address and has already been read from .debug_addr
before being passed into FuncHandler::ProcessAttributeUnsigned.
Bug:870908
Change-Id: I950098e360b5193f26bf767b8fa0a5f9d59e66ce
Reviewed-on: https://chromium-review.googlesource.com/1178760
Reviewed-by: Mark Mentovai <mark@chromium.org>
-rw-r--r-- | src/common/dwarf_cu_to_module.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/common/dwarf_cu_to_module.cc b/src/common/dwarf_cu_to_module.cc index f5a03b42..527a7046 100644 --- a/src/common/dwarf_cu_to_module.cc +++ b/src/common/dwarf_cu_to_module.cc @@ -573,7 +573,8 @@ void DwarfCUToModule::FuncHandler::Finish() { if (!ranges_) { // Make high_pc_ an address, if it isn't already. - if (high_pc_form_ != dwarf2reader::DW_FORM_addr) { + if (high_pc_form_ != dwarf2reader::DW_FORM_addr && + high_pc_form_ != dwarf2reader::DW_FORM_GNU_addr_index) { high_pc_ += low_pc_; } |