Commit 9c65bbf4 by Jan Hubicka Committed by Jan Hubicka

function.c (clobber_return_register): Clobber the pseudo return register too.

	* function.c (clobber_return_register): Clobber the pseudo return
	register too.

From-SVN: r43011
parent cf7ec0ab
Fri Jun 8 14:16:33 CEST 2001 Jan Hubicka <jh@suse.cz> Fri Jun 8 14:16:33 CEST 2001 Jan Hubicka <jh@suse.cz>
* function.c (clobber_return_register): Clobber the pseudo return
register too.
* sibcall.c (skip_unreturned_value): New function. * sibcall.c (skip_unreturned_value): New function.
(call_ends_block_p): Use it. (call_ends_block_p): Use it.
......
...@@ -6601,6 +6601,17 @@ void ...@@ -6601,6 +6601,17 @@ void
clobber_return_register () clobber_return_register ()
{ {
diddle_return_value (do_clobber_return_reg, NULL); diddle_return_value (do_clobber_return_reg, NULL);
/* In case we do use pseudo to return value, clobber it too. */
if (DECL_RTL_SET_P (DECL_RESULT (current_function_decl)))
{
tree decl_result = DECL_RESULT (current_function_decl);
rtx decl_rtl = DECL_RTL (decl_result);
if (REG_P (decl_rtl) && REGNO (decl_rtl) >= FIRST_PSEUDO_REGISTER)
{
do_clobber_return_reg (decl_rtl, NULL);
}
}
} }
static void static void
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment