summaryrefslogtreecommitdiff
path: root/gcc/sibcall.c
diff options
context:
space:
mode:
authorgrahams <grahams@138bc75d-0d04-0410-961f-82ee72b054a4>2001-09-25 11:39:35 +0000
committergrahams <grahams@138bc75d-0d04-0410-961f-82ee72b054a4>2001-09-25 11:39:35 +0000
commit087719460482df60d28cd36e3afb76cfaea76fc6 (patch)
treeb4c69d0f96f2ba6475efd8c1ed7db01bb1acd826 /gcc/sibcall.c
parent9987fd9764681b35b0a80a5445a70e151f8385f9 (diff)
downloadgcc-087719460482df60d28cd36e3afb76cfaea76fc6.tar.gz
* sibcall.c (skip_copy_to_return_value): Tighten return value
copy check. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45803 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/sibcall.c')
-rw-r--r--gcc/sibcall.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/sibcall.c b/gcc/sibcall.c
index f0ffa5280e6..3b9526c13df 100644
--- a/gcc/sibcall.c
+++ b/gcc/sibcall.c
@@ -159,8 +159,9 @@ skip_copy_to_return_value (orig_insn)
if (return_value_pseudo)
{
- if (SET_DEST (set) == return_value_pseudo)
- return insn;
+ if (SET_DEST (set) == return_value_pseudo
+ && SET_SRC (set) == softret)
+ return insn;
return orig_insn;
}