requires an entry in the dynamic symbol table.
break;
}
- if ((tobits & (1 << 1)) != (frombits & (1 << 1)))
- {
- // This symbol is seen in both a dynamic object and a regular
- // object. That means that we need the symbol to go into the
- // dynamic symbol table, so that the dynamic linker can use the
- // regular symbol to override or define the dynamic symbol.
- to->set_needs_dynsym_entry();
- }
-
// FIXME: Warn if either but not both of TO and SYM are STT_TLS.
// We use a giant switch table for symbol resolution. This code is
// table.
bool
needs_dynsym_entry() const
- { return this->needs_dynsym_entry_; }
+ {
+ return (this->needs_dynsym_entry_
+ || (this->in_reg() && this->in_dyn()));
+ }
// Mark this symbol as needing an entry in the dynamic symbol table.
void