aboutsummaryrefslogtreecommitdiff
path: root/gold/symtab.h
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@google.com>2006-11-07 04:40:46 +0000
committerIan Lance Taylor <iant@google.com>2006-11-07 04:40:46 +0000
commitf0641a0b382db7403f04fab3d4e8fac25a2b68af (patch)
tree54a6fb51e4cc45215470f8cb2812534c1fc911b4 /gold/symtab.h
parent7c8fe5c4802b8ed8863c41264e0bf77e46d6bdcb (diff)
downloadfsf-binutils-gdb-f0641a0b382db7403f04fab3d4e8fac25a2b68af.zip
fsf-binutils-gdb-f0641a0b382db7403f04fab3d4e8fac25a2b68af.tar.gz
fsf-binutils-gdb-f0641a0b382db7403f04fab3d4e8fac25a2b68af.tar.bz2
Rework stringpool and hash tables so that we always generate the same
output regardless of randomize_va_space.
Diffstat (limited to 'gold/symtab.h')
-rw-r--r--gold/symtab.h10
1 files changed, 5 insertions, 5 deletions
diff --git a/gold/symtab.h b/gold/symtab.h
index f544e06..6589899 100644
--- a/gold/symtab.h
+++ b/gold/symtab.h
@@ -683,7 +683,7 @@ class Symbol_table
// Canonicalize a symbol name for use in the hash table.
const char*
canonicalize_name(const char* name)
- { return this->namepool_.add(name); }
+ { return this->namepool_.add(name, NULL); }
// Possibly issue a warning for a reference to SYM at LOCATION which
// is in OBJ.
@@ -718,9 +718,9 @@ class Symbol_table
// Add a symbol.
template<int size, bool big_endian>
Symbol*
- add_from_object(Object*, const char *name,
- const char *version, bool def,
- const elfcpp::Sym<size, big_endian>& sym);
+ add_from_object(Object*, const char *name, Stringpool::Key name_key,
+ const char *version, Stringpool::Key version_key,
+ bool def, const elfcpp::Sym<size, big_endian>& sym);
// Resolve symbols.
template<int size, bool big_endian>
@@ -783,7 +783,7 @@ class Symbol_table
// The type of the symbol hash table.
- typedef std::pair<const char*, const char*> Symbol_table_key;
+ typedef std::pair<Stringpool::Key, Stringpool::Key> Symbol_table_key;
struct Symbol_table_hash
{