2007-04-12 Richard Sandiford <richard@codesourcery.com>
+ * config/mips/mips.c (mips_ok_for_lazy_binding_p): Always return
+ false for locally-binding symbols.
+ (mips_dangerous_for_la25_p): Check mips_global_symbol_p.
+
+2007-04-12 Richard Sandiford <richard@codesourcery.com>
+
* config/mips/mips-protos.h (SYMBOL_GOT_LOCAL): Rename to...
(SYMBOL_GOT_PAGE_OFST): ...this.
(SYMBOL_GOT_GLOBAL): Rename to...
{
return (TARGET_USE_GOT
&& GET_CODE (x) == SYMBOL_REF
- && (TARGET_ABSOLUTE_ABICALLS
- ? !mips_symbol_binds_local_p (x)
- : mips_global_symbol_p (x)));
+ && !mips_symbol_binds_local_p (x));
}
/* Load function address ADDR into register DEST. SIBCALL_P is true
bool
mips_dangerous_for_la25_p (rtx x)
{
- return !TARGET_EXPLICIT_RELOCS && mips_ok_for_lazy_binding_p (x);
+ return (!TARGET_EXPLICIT_RELOCS
+ && TARGET_USE_GOT
+ && GET_CODE (x) == SYMBOL_REF
+ && mips_global_symbol_p (x));
}
/* Implement PREFERRED_RELOAD_CLASS. */