RFC: Fix ia64 visibility

Jim Wilson wilson@tuliptree.org
Wed May 7 23:19:00 GMT 2003


H. J. Lu wrote:
> On ia64, when we hide a symbol, we clear the want_plt2 field, but not
> want_plt. I don't see a reason not to. Also, if we don't need dynamic
> symbol lookup, which is true for symbols with non-default visibility,
> we should avoid it. Is this patch OK?

bfd is mostly a black box to me, but this stuff seems reasonable to me 
with your explanation.

want_plt2 is for dynamic symbols which are functions which need a full 
plt.  want_plt is for dynamic symbols which are not functions which need 
a minimal plt.  want_pltoff is for symbols, dynamic or not, which have 
pltoff relocations.  If a symbol is hidden, then we no longer need 
dynamic relocs, and hence want_plt should be cleared along with want_plt2.

The other bit is code that is simplying relocs if we don't need dynamic 
symbol lookup, which is the case for protected symbols, so that makes 
sense too.

Jim



More information about the Binutils mailing list