diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/bfin/bfin.c | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 930b556..f7dc8d9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2009-09-14 Bernd Schmidt <bernd.schmidt@analog.com> + + * config/bfin/bfin.c (bfin_longcall_p): Don't use short calls for weak + symbols. + 2009-09-14 Richard Guenther <rguenther@suse.de> PR middle-end/41350 diff --git a/gcc/config/bfin/bfin.c b/gcc/config/bfin/bfin.c index ed51006..0a7b149 100644 --- a/gcc/config/bfin/bfin.c +++ b/gcc/config/bfin/bfin.c @@ -2219,6 +2219,8 @@ bool bfin_longcall_p (rtx op, int call_cookie) { gcc_assert (GET_CODE (op) == SYMBOL_REF); + if (SYMBOL_REF_WEAK (op)) + return 1; if (call_cookie & CALL_SHORT) return 0; if (call_cookie & CALL_LONG) |