This is the mail archive of the mailing list for the binutils project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

gold patch committed: Don't add undefined symbols to dynsym

PR 12818 points out that gold is putting a useless symbol in the dynamic
symbol table.  It turns out to be a simple bug: if a symbol is never
defined, then gold is putting it in the dynamic symbol table.  That is
useless; there is already code to ensure that any symbol mentioned in a
dynamic relocation goes into the dynamic symbol table.  This patch fixes
the problemm.  Committed to mainline.


2011-06-29  Ian Lance Taylor  <>

	PR gold/12818
	* (Symbol::should_add_dynsym_entry): Don't add undefined
	symbols which are not used in a relocation.

RCS file: /cvs/src/src/gold/,v
retrieving revision 1.155
diff -u -p -r1.155
---	28 Jun 2011 05:39:45 -0000	1.155
+++	29 Jun 2011 14:40:51 -0000
@@ -414,6 +414,7 @@ Symbol::should_add_dynsym_entry(Symbol_t
   // externally visible, we need to add it.
   if ((parameters->options().export_dynamic() || parameters->options().shared())
       && !this->is_from_dynobj()
+      && !this->is_undefined()
       && this->is_externally_visible())
     return true;

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]