https://sourceware.org/bugzilla/show_bug.cgi?id=34165
--- Comment #2 from Alan Modra <amodra at gmail dot com> ---
- BFD_ASSERT (elf_hash_table (info)->tls_sec != NULL);
- if (r_type == R_ALPHA_GOTDTPREL)
+ if (elf_hash_table (info)->tls_sec == NULL)
+ {
+ /* If tls_sec is NULL, R_ALPHA_GOTDTPREL and
+ R_ALPHA_GOTTPREL must reference local weak
+ undefined symbols. */
+ if (!_bfd_elf_symbol_refs_local_p (&h->root, info,
+ false)
+ || h->root.root.type != bfd_link_hash_undefweak)
+ abort ();
+ value = 0;
+ }
+ else if (r_type == R_ALPHA_GOTDTPREL)
The logic here looks wrong. You should be setting the value to zero for
undefweak refs_local_p syms, then asserting or aborting if tls_sec is NULL for
the other cases. tls_sec might be non-NULL due to other tls syms.
--
You are receiving this mail because:
You are on the CC list for the bug.