From: Richard Kenner Date: Sat, 9 Oct 1993 19:19:52 +0000 (-0400) Subject: (expand_expr, case ABS_EXPR): Don't copy twice into volatile MEM. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=37568125833520ba34d3723db4c888013ae0d725;p=gcc.git (expand_expr, case ABS_EXPR): Don't copy twice into volatile MEM. From-SVN: r5698 --- diff --git a/gcc/expr.c b/gcc/expr.c index f31e048d5f1..91b2d6e011a 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -5001,6 +5001,7 @@ expand_expr (exp, target, tmode, modifier) target = original_target; temp = gen_label_rtx (); if (target == 0 || ! safe_from_p (target, TREE_OPERAND (exp, 0)) + || (GET_CODE (target) == MEM && MEM_VOLATILE_P (target)) || (GET_CODE (target) == REG && REGNO (target) < FIRST_PSEUDO_REGISTER)) target = gen_reg_rtx (mode);