expr.c (store_field): When making temporary for store, don't make it TYPE_QUAL_CONST.

* expr.c (store_field): When making temporary for store, don't
	make it TYPE_QUAL_CONST.

From-SVN: r66103
This commit is contained in:
Richard Kenner 2003-04-26 11:16:44 +00:00 committed by Richard Kenner
parent c7f79b4cb2
commit 85a43a2f11
2 changed files with 8 additions and 5 deletions

View File

@ -1,3 +1,8 @@
2003-04-25 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* expr.c (store_field): When making temporary for store, don't
make it TYPE_QUAL_CONST.
2003-04-25 Phil Edwards <pme@gcc.gnu.org>
* toplev.c (read_integral_parameter): Use "argument" in error

View File

@ -5528,15 +5528,13 @@ store_field (target, bitsize, bitpos, mode, exp, value_mode, unsignedp, type,
that object. Finally, load from the object into TARGET. This is not
very efficient in general, but should only be slightly more expensive
than the otherwise-required unaligned accesses. Perhaps this can be
cleaned up later. */
cleaned up later. It's tempting to make OBJECT readonly, but it's set
twice, once with emit_move_insn and once via store_field. */
if (mode == BLKmode
&& (GET_CODE (target) == REG || GET_CODE (target) == SUBREG))
{
rtx object
= assign_temp
(build_qualified_type (type, TYPE_QUALS (type) | TYPE_QUAL_CONST),
0, 1, 1);
rtx object = assign_temp (type, 0, 1, 1);
rtx blk_object = adjust_address (object, BLKmode, 0);
if (bitsize != (HOST_WIDE_INT) GET_MODE_BITSIZE (GET_MODE (target)))