diff options
-rw-r--r-- | lld/ELF/InputFiles.cpp | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/lld/ELF/InputFiles.cpp b/lld/ELF/InputFiles.cpp index 76ee7629f17..aa04fddc851 100644 --- a/lld/ELF/InputFiles.cpp +++ b/lld/ELF/InputFiles.cpp @@ -861,13 +861,12 @@ template <class ELFT> void SharedFile<ELFT>::parseRest() { continue; } - if (Config->EMachine == EM_MIPS) { - // FIXME: MIPS BFD linker puts _gp_disp symbol into DSO files - // and incorrectly assigns VER_NDX_LOCAL to this section global - // symbol. Here is a workaround for this bug. - if (Versym && VersymIndex == VER_NDX_LOCAL && Name == "_gp_disp") - continue; - } + // MIPS BFD linker puts _gp_disp symbol into DSO files and incorrectly + // assigns VER_NDX_LOCAL to this section global symbol. Here is a + // workaround for this bug. + if (Config->EMachine == EM_MIPS && Versym && VersymIndex == VER_NDX_LOCAL && + Name == "_gp_disp") + continue; const Elf_Verdef *Ver = nullptr; if (VersymIndex != VER_NDX_GLOBAL) { |