OSDN Git Service

PR 10980
authorian <ian>
Tue, 5 Jan 2010 21:52:50 +0000 (21:52 +0000)
committerian <ian>
Tue, 5 Jan 2010 21:52:50 +0000 (21:52 +0000)
commit6280260bb4ee34e5672c476118d65570414ed66b
tree75d3fe2b9c36f77e52e3df568c4546fdba42c1ee
parent4120c756d36ba0bc079efa5741fab80b33a21221
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