From 9e0a5ab09b93d4513fce799088d321f43278e37f Mon Sep 17 00:00:00 2001 From: Richard Stallman Date: Sat, 14 Mar 1992 21:30:38 +0000 Subject: [PATCH] *** empty log message *** From-SVN: r489 --- gcc/integrate.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/gcc/integrate.c b/gcc/integrate.c index 03cbaf4c4cc..d326ac14ee7 100644 --- a/gcc/integrate.c +++ b/gcc/integrate.c @@ -260,11 +260,18 @@ initialize_for_inline (fndecl, min_labelno, max_labelno, max_reg, copy) rtx p = DECL_RTL (parms); if (GET_CODE (p) == MEM && copy) - /* Copy the rtl so that modifications of the address - later in compilation won't affect this arg_vector. - Virtual register instantiation can screw the address - of the rtl. */ - DECL_RTL (parms) = copy_rtx (p); + { + /* Copy the rtl so that modifications of the addresses + later in compilation won't affect this arg_vector. + Virtual register instantiation can screw the address + of the rtl. */ + rtx new = copy_rtx (p); + + /* Don't leave the old copy anywhere in this decl. */ + if (DECL_RTL (parms) == DECL_INCOMING_RTL (parms)) + DECL_INCOMING_RTL (parms) = new; + DECL_RTL (parms) = new; + } RTVEC_ELT (arg_vector, i) = p;