From: Richard Henderson Date: Wed, 28 Mar 2001 03:28:28 +0000 (-0800) Subject: function.c (expand_function_start): Set DECL_REGISTER on a pseudo used for DECL_RESULT. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=3d74dad834986e7f0c1d06dd29adef3d1a8a5974;p=gcc.git function.c (expand_function_start): Set DECL_REGISTER on a pseudo used for DECL_RESULT. * function.c (expand_function_start): Set DECL_REGISTER on a pseudo used for DECL_RESULT. From-SVN: r40896 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6d8d1152e07..0f24eae0065 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2001-03-27 Richard Henderson + + * function.c (expand_function_start): Set DECL_REGISTER on + a pseudo used for DECL_RESULT. + 2001-03-27 Stan Shebs * objc/objc-act.c (objc_init): Use dump_base_name. diff --git a/gcc/function.c b/gcc/function.c index e8e35aee5a5..71bdf9d6766 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -6387,10 +6387,13 @@ expand_function_start (subr, parms_have_cleanups) #endif SET_DECL_RTL (DECL_RESULT (subr), gen_reg_rtx (mode)); + /* Needed because we may need to move this to memory + in case it's a named return value whose address is taken. */ + DECL_REGISTER (DECL_RESULT (subr)) = 1; } else - /* Scalar, returned in a register. */ { + /* Scalar, returned in a register. */ SET_DECL_RTL (DECL_RESULT (subr), hard_function_value (TREE_TYPE (DECL_RESULT (subr)), subr, 1));