diff options
author | Ian Lance Taylor <ian@airs.com> | 2009-12-30 07:40:01 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 2009-12-30 07:40:01 +0000 |
commit | 8d6d383d7cb7438e29207f3bc7c87130c97411e6 (patch) | |
tree | db0ef13cb316f1dd59420d2e4a058517cdb293a6 | |
parent | e785ec03fb73baeb3699bb46901b2c04a415fd58 (diff) | |
download | gdb-8d6d383d7cb7438e29207f3bc7c87130c97411e6.zip gdb-8d6d383d7cb7438e29207f3bc7c87130c97411e6.tar.gz gdb-8d6d383d7cb7438e29207f3bc7c87130c97411e6.tar.bz2 |
PR 10450
* symtab.h (Symbol::needs_dynsym_entry): A symbol in both a
regular and a dynamic object only needs a dynamic symbol table
entry if it is externally visible.
-rw-r--r-- | gold/ChangeLog | 5 | ||||
-rw-r--r-- | gold/symtab.h | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog index a8cd1cb..9516072 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,6 +1,11 @@ 2009-12-29 Ian Lance Taylor <iant@google.com> PR 10450 + * symtab.h (Symbol::needs_dynsym_entry): A symbol in both a + regular and a dynamic object only needs a dynamic symbol table + entry if it is externally visible. + + PR 10450 * i386.cc (class Target_i386): Initialize global_offset_table_ in constructor. Add global_offset_table_ field. (Target_i386::got_section): Set global_offset_table_. diff --git a/gold/symtab.h b/gold/symtab.h index ed105c7..cac7bee 100644 --- a/gold/symtab.h +++ b/gold/symtab.h @@ -261,7 +261,9 @@ class Symbol needs_dynsym_entry() const { return (this->needs_dynsym_entry_ - || (this->in_reg() && this->in_dyn())); + || (this->in_reg() + && this->in_dyn() + && this->is_externally_visible())); } // Mark this symbol as needing an entry in the dynamic symbol table. |