Index: lld/ELF/Writer.cpp =================================================================== --- lld/ELF/Writer.cpp +++ lld/ELF/Writer.cpp @@ -860,11 +860,8 @@ // __tls_get_addr is defined by the dynamic linker for dynamic ELFs. For // static linking the linker is required to optimize away any references to // __tls_get_addr, so it's not defined anywhere. Create a hidden definition - // to avoid the undefined symbol error. As usual special cases are ARM and - // MIPS - the libc for these targets defines __tls_get_addr itself because - // there are no TLS optimizations for these targets. - if (!In::DynSymTab && - (Config->EMachine != EM_MIPS && Config->EMachine != EM_ARM)) + // to avoid the undefined symbol error. + if (!In::DynSymTab) Symtab::X->addIgnored("__tls_get_addr"); // If linker script do layout we do not need to create any standart symbols.