[gold patch 7/8] Restructure Incremental_binary.
Cary Coutant
ccoutant@google.com
Tue Sep 28 19:59:00 GMT 2010
This patch restructures the Incremental_binary class, adding proxy reader
classes that can be used by untemplated client code to access the
incremental info.
-cary
* incremental-dump.cc (dump_incremental_inputs): Change signature
to take a Sized_incremental_binary; change caller. Use readers
in Sized_incremental_binary.
* incremental.cc
(Sized_incremental_binary::do_find_incremental_inputs_sections):
Rename to find_incremental_inputs_sections.
(Sized_incremental_binary::setup_readers): New function.
(Sized_incremental_binary::do_check_inputs): Check
has_incremental_info_ flag; use input readers.
(Sized_incremental_binary::do_get_input_reader): New function.
* incremental.h (Incremental_inputs_reader): Add default constructor.
(Incremental_symtab_reader): Add default constructor.
(Incremental_symtab_reader::symbol_count): New function.
(Incremental_symtab_reader::len_): New data member.
(Incremental_relocs_reader): Add default constructor.
(Incremental_relocs_reader::reloc_count): New function.
(Incremental_relocs_reader::len_): New data member.
(Incremental_got_plt_reader): Add default constructor.
(Incremental_binary::find_incremental_inputs_sections): Remove.
(Incremental_binary::Input_reader): New class.
(Incremental_binary::get_input_reader): New function.
(Incremental_binary::do_get_input_reader): New function.
(Sized_incremental_binary::has_incremental_info): New function.
(Sized_incremental_binary::inputs_reader): New function.
(Sized_incremental_binary::symtab_reader): New function.
(Sized_incremental_binary::relocs_reader): New function.
(Sized_incremental_binary::got_plt_reader): New function.
(Sized_incremental_binary::Sized_input_reader): New class.
(Sized_incremental_binary::do_get_input_reader): New function.
(Sized_incremental_binary::do_find_incremental_inputs_sections):
Rename to find_incremental_inputs_sections.
(Sized_incremental_binary::has_incremental_info_): New data member.
(Sized_incremental_binary::inputs_reader_): New data member.
(Sized_incremental_binary::symtab_reader_): New data member.
(Sized_incremental_binary::relocs_reader_): New data member.
(Sized_incremental_binary::got_plt_reader_): New data member.
(Sized_incremental_binary::current_input_file_): New data member.
---
gold/incremental-dump.cc | 74 +++------
gold/incremental.cc | 76 ++++++---
gold/incremental.h | 413 ++++++++++++++++++++++++++++++----------------
3 files changed, 342 insertions(+), 221 deletions(-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 7
Type: text/x-patch
Size: 24269 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20100928/1f0a1f39/attachment.bin>
More information about the Binutils
mailing list