OSDN Git Service

PR 10980
authorian <ian>
Wed, 6 Jan 2010 06:52:50 +0000 (06:52 +0000)
committerian <ian>
Wed, 6 Jan 2010 06:52:50 +0000 (06:52 +0000)
commit068cff0724618512625a8f51887b1c11e974f4a8
treead309c4cc1a112a39c393197d3047c6743a3e9c9
parent8b237fa8393a8fb04f4280e5863c95a87dc1e062
PR 10980
* options.h (class General_options): Add --cref.
* main.cc (main): Print cref table if --cref.  Don't close mapfile
until after printing cref table.
* cref.cc: Include "symtab.h".
(class Cref_inputs): Define Cref_table_compare and Cref_table.
(Cref_table_compare::operator()): New function.
(Cref_inputs::gather_cref): New function.
(filecol): New static const.
(Cref_inputs::print_cref): New function.
(Cref::print_cref): New function.
* cref.h: Include <cstdio>.
(class Cref): Update declarations.
* mapfile.h (Mapfile::file): New function.
* object.h (class Object): Define Symbols.  Declare virtual
do_get_global_symbols.
(Object::get_global_symbols): New function.
* object.cc (Input_objects::add_object): Pass object to cref_ if
--cref.
(Input_objects::archive_start): Likewise.
(Input_objects::archive_stop): Likewise.
(Input_objects::print_cref): New function.
* dynobj.h (Sized_dynobj::do_get_global_symbols): New function.
* dynobj.cc (big_endian>::do_add_symbols): Create symbols_ if
--cref.
* plugin.cc (Sized_pluginobj::do_get_global_symbols): New
function.
* plugin.h (class Sized_pluginobj): Update declarations.
12 files changed:
gold/ChangeLog
gold/cref.cc
gold/cref.h
gold/dynobj.cc
gold/dynobj.h
gold/main.cc
gold/mapfile.h
gold/object.cc
gold/object.h
gold/options.h
gold/plugin.cc
gold/plugin.h