This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [gold patch] incremental 7/18: restructure class Incremental_binary
- From: Ian Lance Taylor <iant at google dot com>
- To: Cary Coutant <ccoutant at google dot com>
- Cc: Binutils <binutils at sourceware dot org>
- Date: Tue, 05 Apr 2011 12:32:57 -0700
- Subject: Re: [gold patch] incremental 7/18: restructure class Incremental_binary
- References: <BANLkTi=A9muk9HwHY8vURMYHMu04hRWcjw@mail.gmail.com> <mcrhbakweuv.fsf@google.com> <BANLkTinikw+BdhcYLT3P1jq5y1A8FZEOJA@mail.gmail.com>
Cary Coutant <ccoutant@google.com> writes:
> * 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::find_incremental_inputs_sections):
> Rename do_find_incremental_inputs_sections to this.
> (Sized_incremental_binary::setup_readers): New function.
> (Sized_incremental_binary::do_check_inputs): Check
> has_incremental_info_ flag; move setup code to setup_readers;
> use input readers.
> (Sized_incremental_binary::do_file_is_unchanged): New function.
> (Sized_incremental_binary::do_get_input_reader): New function.
> * incremental.h (class Incremental_binary): Move to end of file.
> (Incremental_binary::file_is_unchanged): New function.
> (Incremental_binary::do_file_is_unchanged): New function.
> (Incremental_binary::Input_reader): New class.
> (Incremental_binary::get_input_reader): New function.
> (class Sized_incremental_binary): Move to end of file.
> (Sized_incremental_binary::Sized_incremental_binary): Setup the
> input section reader classes.
> (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::do_file_is_unchanged): New function.
> (Sized_incremental_binary::Sized_input_reader): New class.
> (Sized_incremental_binary::get_input_reader): New function.
> (Sized_incremental_binary::find_incremental_inputs_sections):
> Rename do_find_incremental_inputs_sections to this.
> (Sized_incremental_binary::setup_readers): New function.
> (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.
> - if (!do_find_incremental_inputs_sections(&inputs_shndx, &symtab_shndx,
> - &relocs_shndx, &plt_got_shndx,
> + if (!find_incremental_inputs_sections(&inputs_shndx, &symtab_shndx,
> + &relocs_shndx, &got_plt_shndx,
Add a this-> here.
> +// An object representing the ELF file we edit during an incremental build.
> +// Similar to Object or Dynobj, but operates on Output_file and contains
> +// method specific to file edition (TBD). This is the abstract parent class
> +// implemented in Sized_incremental_binary<size, big_endian> for a specific
> +// endianness and size.
Do you mean "editing" rather than "edition"?
This is OK with those changes.
Thanks.
Ian