* function.c (clobber_return_register): Clobber the pseudo return
register too.
From-SVN: r43011
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.
(call_ends_block_p): Use it.
clobber_return_register ()
{
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