summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoruweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4>2005-12-09 01:00:55 +0000
committeruweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4>2005-12-09 01:00:55 +0000
commita47b0dc33e3fbc0fec94550329f285d3ab7f727d (patch)
treed19f1c69d6baa58b66b1afc51343c5319ab25bb0
parent192198ec3342299c5bdaeff7b601441f88dbec3b (diff)
downloadgcc-a47b0dc33e3fbc0fec94550329f285d3ab7f727d.tar.gz
* config/s390/s390.c (s390_function_ok_for_sibcall): Use
targetm.binds_local_p to check for local function calls. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@108269 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/s390/s390.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 208866f9835..5faabaf6f4d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2005-12-09 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_function_ok_for_sibcall): Use
+ targetm.binds_local_p to check for local function calls.
+
2005-12-09 Alan Modra <amodra@bigpond.net.au>
PR debug/24908
diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c
index 941e6f2f517..6766af76cdb 100644
--- a/gcc/config/s390/s390.c
+++ b/gcc/config/s390/s390.c
@@ -8574,7 +8574,7 @@ s390_function_ok_for_sibcall (tree decl, tree exp)
/* The 31 bit PLT code uses register 12 (GOT pointer - caller saved)
which would have to be restored before the sibcall. */
- if (!TARGET_64BIT && flag_pic && decl && TREE_PUBLIC (decl))
+ if (!TARGET_64BIT && flag_pic && decl && !targetm.binds_local_p (decl))
return false;
/* Register 6 on s390 is available as an argument register but unfortunately