[ELF][MIPS] Prevent substitution of _gp_disp symbol

On MIPS O32 ABI, _gp_disp is a magic symbol designates offset between
start of function and gp pointer into GOT. To make seal with such symbol
we add new method addIgnoredStrong(). It adds ignored symbol with global
binding to prevent the symbol substitution. The addIgnored call is not
enough here because this call adds a weak symbol which might be
substituted by symbol from shared library.

Differential Revision: http://reviews.llvm.org/D16084

llvm-svn: 257449
diff --git a/lld/ELF/Symbols.cpp b/lld/ELF/Symbols.cpp
index ba6317a..6bc9e1f 100644
--- a/lld/ELF/Symbols.cpp
+++ b/lld/ELF/Symbols.cpp
@@ -122,6 +122,8 @@
   ElfSym<ELFT>::End.setBinding(STB_GLOBAL);
   ElfSym<ELFT>::IgnoreUndef.setBinding(STB_WEAK);
   ElfSym<ELFT>::IgnoreUndef.setVisibility(STV_HIDDEN);
+  ElfSym<ELFT>::IgnoreUndefStrong.setBinding(STB_GLOBAL);
+  ElfSym<ELFT>::IgnoreUndefStrong.setVisibility(STV_HIDDEN);
 }
 
 void elf2::initSymbols() {