* expr.c (gen_group_rtx, emit_group_move): New functions.
authordanglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 27 Nov 2002 02:29:12 +0000 (02:29 +0000)
committerdanglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 27 Nov 2002 02:29:12 +0000 (02:29 +0000)
commitb566e2e54ddf323a6f4ddcaa88d389e42e456ab6
treefc534194a61afad57285d25be308fb71db734c93
parenta9df464b2734d75ea7f1f5491fbed8f5eb3fac4e
* expr.c (gen_group_rtx, emit_group_move): New functions.
* expr.h (gen_group_rtx, emit_group_move): Prototype.
* function.c (expand_function_start): Use gen_group_rtx to create a
PARALLEL rtx to hold the return value when the real return rtx is a
PARALLEL.
(expand_function_end): Use emit_group_move to move the return value
from a PARALLEL to the real return registers.
* rtl.h (REG_FUNCTION_VALUE_P): Allow function values to be returned
in PARALLELs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@59554 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/expr.c
gcc/expr.h
gcc/function.c
gcc/rtl.h