summaryrefslogtreecommitdiff
path: root/gold/plugin.h
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>2010-01-05 21:52:50 +0000
committerIan Lance Taylor <ian@airs.com>2010-01-05 21:52:50 +0000
commit7d6258c030129a1c24e3b18ff2414030bc37bfe0 (patch)
tree46b16e3f963cacc79f7b1275fac175cf7cc7429c /gold/plugin.h
parent5e5ca4fd3afebd674e0f55344e83ba43bf5128ef (diff)
downloadbinutils-redhat-7d6258c030129a1c24e3b18ff2414030bc37bfe0.tar.gz
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.
Diffstat (limited to 'gold/plugin.h')
-rw-r--r--gold/plugin.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/gold/plugin.h b/gold/plugin.h
index fa6e594d37..635ed6f861 100644
--- a/gold/plugin.h
+++ b/gold/plugin.h
@@ -1,6 +1,6 @@
// plugin.h -- plugin manager for gold -*- C++ -*-
-// Copyright 2008, 2009 Free Software Foundation, Inc.
+// Copyright 2008, 2009, 2010 Free Software Foundation, Inc.
// Written by Cary Coutant <ccoutant@google.com>.
// This file is part of gold.
@@ -415,6 +415,10 @@ class Sized_pluginobj : public Pluginobj
void
do_get_global_symbol_counts(const Symbol_table*, size_t*, size_t*) const;
+ // Get global symbols.
+ const Symbols*
+ do_get_global_symbols() const;
+
// Add placeholder symbols from a claimed file.
ld_plugin_status
add_symbols_from_plugin(int nsyms, const ld_plugin_symbol* syms);