summaryrefslogtreecommitdiffstats
path: root/trunk/src/ld-do-lookup.h
diff options
context:
space:
mode:
Diffstat (limited to 'trunk/src/ld-do-lookup.h')
-rw-r--r--trunk/src/ld-do-lookup.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/trunk/src/ld-do-lookup.h b/trunk/src/ld-do-lookup.h
index 62a1280..3e792ba 100644
--- a/trunk/src/ld-do-lookup.h
+++ b/trunk/src/ld-do-lookup.h
@@ -82,7 +82,10 @@ FCT (const char *undef_name, unsigned long int hash, const ElfW(Sym) *ref,
#ifdef USE_TLS
&& ELFW(ST_TYPE) (sym->st_info) != STT_TLS
#endif
- )
+ )
+ || (machine == EM_MIPS
+ && sym->st_shndx == SHN_UNDEF
+ && !(sym->st_other & STO_MIPS_PLT))
|| (type_class & (sym->st_shndx == SHN_UNDEF)))
continue;