aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1996-02-12 07:22:11 -0500
committerRichard Kenner <kenner@gcc.gnu.org>1996-02-12 07:22:11 -0500
commit25e48d20ab6808402115a35e4c7b0c30081968f5 (patch)
tree9e4d3026441e5d609c9b96ff8010e60058e18cf1 /gcc
parent87fd184726709ae2cb13fb67db1a0d3b7dce4029 (diff)
downloadgcc-25e48d20ab6808402115a35e4c7b0c30081968f5.zip
gcc-25e48d20ab6808402115a35e4c7b0c30081968f5.tar.gz
gcc-25e48d20ab6808402115a35e4c7b0c30081968f5.tar.bz2
(save_for_inline_copying): Put virtual regs into new regno_reg_rtx copy.
From-SVN: r11208
Diffstat (limited to 'gcc')
-rw-r--r--gcc/integrate.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/integrate.c b/gcc/integrate.c
index 199fcd9..01644b5 100644
--- a/gcc/integrate.c
+++ b/gcc/integrate.c
@@ -478,6 +478,12 @@ save_for_inline_copying (fndecl)
regno_reg_rtx = reg_map;
+ /* Put copies of all the virtual register rtx into the new regno_reg_rtx. */
+ regno_reg_rtx[VIRTUAL_INCOMING_ARGS_REGNUM] = virtual_incoming_args_rtx;
+ regno_reg_rtx[VIRTUAL_STACK_VARS_REGNUM] = virtual_stack_vars_rtx;
+ regno_reg_rtx[VIRTUAL_STACK_DYNAMIC_REGNUM] = virtual_stack_dynamic_rtx;
+ regno_reg_rtx[VIRTUAL_OUTGOING_ARGS_REGNUM] = virtual_outgoing_args_rtx;
+
/* Likewise each label rtx must have a unique rtx as its copy. */
label_map = (rtx *)alloca ((max_labelno - min_labelno) * sizeof (rtx));