PR 10450
* dynobj.cc (Dynobj::create_gnu_hash_table): Add symbols to the GNU hash table if they need a dynamic value. Otherwise, don't add them if they are defined in a dynamic object or are forced local.
This commit is contained in:
parent
1b81fb710f
commit
176fe33f0d
@ -1,3 +1,10 @@
|
||||
2009-12-30 Ian Lance Taylor <iant@google.com>
|
||||
|
||||
PR 10450
|
||||
* dynobj.cc (Dynobj::create_gnu_hash_table): Add symbols to the
|
||||
GNU hash table if they need a dynamic value. Otherwise, don't add
|
||||
them if they are defined in a dynamic object or are forced local.
|
||||
|
||||
2009-12-29 Ian Lance Taylor <iant@google.com>
|
||||
|
||||
PR 10450
|
||||
|
@ -959,9 +959,10 @@ Dynobj::create_gnu_hash_table(const std::vector<Symbol*>& dynsyms,
|
||||
{
|
||||
Symbol* sym = dynsyms[i];
|
||||
|
||||
// FIXME: Should put on unhashed_dynsyms if the symbol is
|
||||
// hidden.
|
||||
if (sym->is_undefined())
|
||||
if (!sym->needs_dynsym_value()
|
||||
&& (sym->is_undefined()
|
||||
|| sym->is_from_dynobj()
|
||||
|| sym->is_forced_local()))
|
||||
unhashed_dynsyms.push_back(sym);
|
||||
else
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user