(expand_function_end): Handle BLKmode structures returned

in registers.

From-SVN: r13117
This commit is contained in:
Jim Wilson 1996-11-08 17:37:54 -08:00
parent a082c85a43
commit ecec444145
1 changed files with 5 additions and 0 deletions

View File

@ -5549,6 +5549,11 @@ expand_function_end (filename, line, end_bindings)
current_function_decl);
#endif
REG_FUNCTION_VALUE_P (real_decl_result) = 1;
/* If this is a BLKmode structure being returned in registers, then use
the mode computed in expand_return. */
if (GET_MODE (real_decl_result) == BLKmode)
PUT_MODE (real_decl_result,
GET_MODE (DECL_RTL (DECL_RESULT (current_function_decl))));
emit_move_insn (real_decl_result,
DECL_RTL (DECL_RESULT (current_function_decl)));
emit_insn (gen_rtx (USE, VOIDmode, real_decl_result));