integrate.c (copy_rtx_and_substitute, case MEM): If inlining and not for LHS, clear RTX_UNCHANGING_P.

* integrate.c (copy_rtx_and_substitute, case MEM): If inlining
	and not for LHS, clear RTX_UNCHANGING_P.

From-SVN: r48337
This commit is contained in:
Richard Kenner 2001-12-28 01:46:22 +00:00 committed by Richard Kenner
parent 0b264069f0
commit 9674c84284
2 changed files with 12 additions and 0 deletions

View File

@ -1,3 +1,8 @@
Thu Dec 27 20:39:55 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* integrate.c (copy_rtx_and_substitute, case MEM): If inlining
and not for LHS, clear RTX_UNCHANGING_P.
2001-12-28 Philipp Thomas <pthomas@suse.de>
* cppfiles.c (stack_include_file): Don't translate <stdin>.

View File

@ -2267,6 +2267,13 @@ copy_rtx_and_substitute (orig, map, for_lhs)
PUT_MODE (copy, mode);
XEXP (copy, 0) = copy_rtx_and_substitute (XEXP (orig, 0), map, 0);
MEM_COPY_ATTRIBUTES (copy, orig);
/* If inlining and this is not for the LHS, turn off RTX_UNCHANGING_P
since this may be an indirect reference to a parameter and the
actual may not be readonly. */
if (inlining && !for_lhs)
RTX_UNCHANGING_P (copy) = 0;
return copy;
default: