diff options
author | Ian Lance Taylor <iant@google.com> | 2006-11-07 04:40:46 +0000 |
---|---|---|
committer | Ian Lance Taylor <iant@google.com> | 2006-11-07 04:40:46 +0000 |
commit | f0641a0b382db7403f04fab3d4e8fac25a2b68af (patch) | |
tree | 54a6fb51e4cc45215470f8cb2812534c1fc911b4 /gold/symtab.h | |
parent | 7c8fe5c4802b8ed8863c41264e0bf77e46d6bdcb (diff) | |
download | gdb-f0641a0b382db7403f04fab3d4e8fac25a2b68af.zip gdb-f0641a0b382db7403f04fab3d4e8fac25a2b68af.tar.gz 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.h | 10 |
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 { |