diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 82365dd1369..6af95459213 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2001-12-27 Geoff Keating + + * expr.c (expand_expr): Don't mark memory for non-constants as + constant. + Thu Dec 27 20:39:55 2001 Richard Kenner * integrate.c (copy_rtx_and_substitute, case MEM): If inlining diff --git a/gcc/expr.c b/gcc/expr.c index 92a01dc26c3..98a56cd1d1f 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -8492,10 +8492,7 @@ expand_expr (exp, target, tmode, modifier) { /* If this object is in a register, it can't be BLKmode. */ tree inner_type = TREE_TYPE (TREE_OPERAND (exp, 0)); - tree nt = build_qualified_type (inner_type, - (TYPE_QUALS (inner_type) - | TYPE_QUAL_CONST)); - rtx memloc = assign_temp (nt, 1, 1, 1); + rtx memloc = assign_temp (inner_type, 1, 1, 1); if (GET_CODE (op0) == PARALLEL) /* Handle calls that pass values in multiple