From 5dd8762ad1a47548394c76ead1b56fc5dab64628 Mon Sep 17 00:00:00 2001 From: Cary Coutant Date: Wed, 29 Feb 2012 21:22:29 +0000 Subject: * dwarf_reader.cc (Sized_dwarf_line_info::Sized_dwarf_line_info): Call Object::decompressed_section_contents. * dwarf_reader.h (Sized_dwarf_line_info::~Sized_dwarf_line_info): New dtor. (Sized_dwarf_line_info::buffer_start_): New data member. * merge.cc (Output_merge_data::do_add_input_section): Call Object::decompressed_section_contents. (Output_merge_string::do_add_input_section): Likewise. * object.cc (need_decompressed_section): New function. (build_compressed_section_map): Decompress sections needed later. (Sized_relobj_file::do_decompressed_section_contents): New function. (Sized_relobj_file::do_discard_decompressed_sections): New function. * object.h (Object::decompressed_section_contents): New function. (Object::discard_decompressed_sections): New function. (Object::do_decompressed_section_contents): New function. (Object::do_discard_decompressed_sections): New function. (Compressed_section_info): New type. (Compressed_section_map): Include decompressed section contents. (Sized_relobj_file::do_decompressed_section_contents): New function. (Sized_relobj_file::do_discard_decompressed_sections): New function. --- gold/readsyms.cc | 2 ++ 1 file changed, 2 insertions(+) (limited to 'gold/readsyms.cc') diff --git a/gold/readsyms.cc b/gold/readsyms.cc index 9974722..8e52ccb 100644 --- a/gold/readsyms.cc +++ b/gold/readsyms.cc @@ -602,6 +602,7 @@ Add_symbols::run(Workqueue*) if (!this->input_objects_->add_object(this->object_)) { + this->object_->discard_decompressed_sections(); gold_assert(this->sd_ != NULL); delete this->sd_; this->sd_ = NULL; @@ -632,6 +633,7 @@ Add_symbols::run(Workqueue*) } this->object_->layout(this->symtab_, this->layout_, this->sd_); this->object_->add_symbols(this->symtab_, this->sd_, this->layout_); + this->object_->discard_decompressed_sections(); delete this->sd_; this->sd_ = NULL; this->object_->release(); -- cgit v1.1