OLD | NEW |
1 // Copyright (c) 2010 Google Inc. All Rights Reserved. | 1 // Copyright (c) 2010 Google Inc. All Rights Reserved. |
2 // | 2 // |
3 // Redistribution and use in source and binary forms, with or without | 3 // Redistribution and use in source and binary forms, with or without |
4 // modification, are permitted provided that the following conditions are | 4 // modification, are permitted provided that the following conditions are |
5 // met: | 5 // met: |
6 // | 6 // |
7 // * Redistributions of source code must retain the above copyright | 7 // * Redistributions of source code must retain the above copyright |
8 // notice, this list of conditions and the following disclaimer. | 8 // notice, this list of conditions and the following disclaimer. |
9 // * Redistributions in binary form must reproduce the above | 9 // * Redistributions in binary form must reproduce the above |
10 // copyright notice, this list of conditions and the following disclaimer | 10 // copyright notice, this list of conditions and the following disclaimer |
(...skipping 621 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
632 dwp_byte_reader_.reset(new ByteReader(reader_->GetEndianness())); | 632 dwp_byte_reader_.reset(new ByteReader(reader_->GetEndianness())); |
633 dwp_byte_reader_->SetAddressSize(width); | 633 dwp_byte_reader_->SetAddressSize(width); |
634 dwp_reader_.reset(new DwpReader(*dwp_byte_reader_, elf)); | 634 dwp_reader_.reset(new DwpReader(*dwp_byte_reader_, elf)); |
635 dwp_reader_->Initialize(); | 635 dwp_reader_->Initialize(); |
636 } else { | 636 } else { |
637 delete elf; | 637 delete elf; |
638 } | 638 } |
639 } | 639 } |
640 } | 640 } |
641 bool found_in_dwp = false; | 641 bool found_in_dwp = false; |
642 if (dwp_reader_ != NULL) { | 642 if (dwp_reader_) { |
643 // If we have a .dwp file, read the debug sections for the requested CU. | 643 // If we have a .dwp file, read the debug sections for the requested CU. |
644 SectionMap sections; | 644 SectionMap sections; |
645 dwp_reader_->ReadDebugSectionsForCU(dwo_id_, §ions); | 645 dwp_reader_->ReadDebugSectionsForCU(dwo_id_, §ions); |
646 if (!sections.empty()) { | 646 if (!sections.empty()) { |
647 found_in_dwp = true; | 647 found_in_dwp = true; |
648 CompilationUnit dwp_comp_unit(dwp_path_, sections, 0, | 648 CompilationUnit dwp_comp_unit(dwp_path_, sections, 0, |
649 dwp_byte_reader_.get(), handler_); | 649 dwp_byte_reader_.get(), handler_); |
650 dwp_comp_unit.SetSplitDwarf(addr_buffer_, addr_buffer_length_, addr_base_, | 650 dwp_comp_unit.SetSplitDwarf(addr_buffer_, addr_buffer_length_, addr_base_, |
651 ranges_base_, dwo_id_); | 651 ranges_base_, dwo_id_); |
652 dwp_comp_unit.Start(); | 652 dwp_comp_unit.Start(); |
(...skipping 2072 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2725 uint64 insn_offset) { | 2725 uint64 insn_offset) { |
2726 fprintf(stderr, | 2726 fprintf(stderr, |
2727 "%s: CFI %s at offset 0x%llx in section '%s':" | 2727 "%s: CFI %s at offset 0x%llx in section '%s':" |
2728 " the DW_CFA_restore_state instruction at offset 0x%llx" | 2728 " the DW_CFA_restore_state instruction at offset 0x%llx" |
2729 " would clear the CFA rule in effect\n", | 2729 " would clear the CFA rule in effect\n", |
2730 filename_.c_str(), CallFrameInfo::KindName(kind), offset, | 2730 filename_.c_str(), CallFrameInfo::KindName(kind), offset, |
2731 section_.c_str(), insn_offset); | 2731 section_.c_str(), insn_offset); |
2732 } | 2732 } |
2733 | 2733 |
2734 } // namespace dwarf2reader | 2734 } // namespace dwarf2reader |
OLD | NEW |