Ian Lance Taylor <i...@google.com> writes:

> 2011-01-18  Ian Lance Taylor  <i...@google.com>
>
>       * plugin.cc (class Plugin_rescan): Define new class.
>       (Plugin_manager::claim_file): Set any_claimed_.
>       (Plugin_manager::save_archive): New function.
>       (Plugin_manager::save_input_group): New function.
>       (Plugin_manager::all_symbols_read): Create Plugin_rescan task if
>       necessary.
>       (Plugin_manager::new_undefined_symbol): New function.
>       (Plugin_manager::rescan): New function.
>       (Plugin_manager::rescannable_defines): New function.
>       (Plugin_manager::add_input_file): Set any_added_.
>       * plugin.h (class Plugin_manager): define new fields rescannable_,
>       undefined_symbols_, any_claimed_, and any_added_.  Declare
>       Plugin_rescan as friend.  Declare new functions.
>       (Plugin_manager::Rescannable): Define type.
>       (Plugin_manager::Rescannable_list): Define type.
>       (Plugin_manager::Undefined_symbol_list): Define type.
>       (Plugin_manager::Plugin_manager): Initialize new fields.
>       * archive.cc (Archive::defines_symbol): New function.
>       (Add_archive_symbols::run): Pass archive to plugins if any.
>       * archive.h (class Archive): Declare defines_symbol.
>       * readsyms.cc (Input_group::~Input_group): New function.
>       (Finish_group::run): Pass input_group to plugins if any.
>       * readsyms.h (class Input_group): Declare destructor.
>       * symtab.cc (add_from_object): Pass undefined symbol to plugins if
>       any.

I have committed this gold patch to binutils mainline and binutils 2.21
branch.

Ian

Reply via email to