diff options
author | Richard Sandiford <richard@codesourcery.com> | 2007-04-12 17:37:25 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2007-04-12 17:37:25 +0000 |
commit | 006257dc5b471f56079fb172410b177d28cbc7fb (patch) | |
tree | 8aa912cac4fd63cd831b4554356c788b0c097e98 /gcc | |
parent | eb28fb7dbd17207847808848ac661b06498cf99f (diff) | |
download | gcc-006257dc5b471f56079fb172410b177d28cbc7fb.zip gcc-006257dc5b471f56079fb172410b177d28cbc7fb.tar.gz gcc-006257dc5b471f56079fb172410b177d28cbc7fb.tar.bz2 |
mips.c (mips_ok_for_lazy_binding_p): Always return false for locally-binding symbols.
gcc/
* 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.
From-SVN: r123754
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/mips/mips.c | 9 |
2 files changed, 11 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fb65fb4..0497ecf 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 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... diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c index d7dbd2e..f782d75 100644 --- a/gcc/config/mips/mips.c +++ b/gcc/config/mips/mips.c @@ -3367,9 +3367,7 @@ mips_ok_for_lazy_binding_p (rtx x) { 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 @@ -7630,7 +7628,10 @@ mips_cannot_change_mode_class (enum machine_mode from, 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. */ |