aboutsummaryrefslogtreecommitdiff
path: root/gold/plugin.cc
diff options
context:
space:
mode:
authorCary Coutant <ccoutant@google.com>2011-10-10 17:38:07 +0000
committerCary Coutant <ccoutant@google.com>2011-10-10 17:38:07 +0000
commit53bbcc1bb8246868a785a77201a3245b07af87e0 (patch)
tree36e725a68ab2ae377b1c391a90fd58100ef0954f /gold/plugin.cc
parent397b129b2a1e3d186e62ff37ecdbc329bf6bbc53 (diff)
downloadgdb-53bbcc1bb8246868a785a77201a3245b07af87e0.zip
gdb-53bbcc1bb8246868a785a77201a3245b07af87e0.tar.gz
gdb-53bbcc1bb8246868a785a77201a3245b07af87e0.tar.bz2
* gold/incremental.cc (Sized_relobj_incr::Sized_relobj_incr):
Initialize defined_count_. (Sized_relobj_incr::do_add_symbols): Count defined symbols. (Sized_relobj_incr::do_get_global_symbol_counts): Rewrite. (Sized_incr_dynobj::Sized_incr_dynobj): Initialize defined_count_. (Sized_incr_dynobj::do_add_symbols): Count defined symbols. (Sized_incr_dynobj::do_get_global_symbol_counts): Rewrite. * gold/incremental.h (Sized_relobj_incr::defined_count_): New data member. (Sized_incr_dynobj::defined_count_): New data member. * gold/plugin.cc (Sized_pluginobj::do_get_global_symbol_counts): Return zeroes instead of internal error.
Diffstat (limited to 'gold/plugin.cc')
-rw-r--r--gold/plugin.cc12
1 files changed, 8 insertions, 4 deletions
diff --git a/gold/plugin.cc b/gold/plugin.cc
index b5880a1..ebda0af 100644
--- a/gold/plugin.cc
+++ b/gold/plugin.cc
@@ -1244,14 +1244,18 @@ Sized_pluginobj<size, big_endian>::do_initialize_xindex()
return NULL;
}
-// Get symbol counts. Not used for plugin objects.
+// Get symbol counts. Don't count plugin objects; the replacement
+// files will provide the counts.
template<int size, bool big_endian>
void
-Sized_pluginobj<size, big_endian>::do_get_global_symbol_counts(const Symbol_table*,
- size_t*, size_t*) const
+Sized_pluginobj<size, big_endian>::do_get_global_symbol_counts(
+ const Symbol_table*,
+ size_t* defined,
+ size_t* used) const
{
- gold_unreachable();
+ *defined = 0;
+ *used = 0;
}
// Get symbols. Not used for plugin objects.