mips.c (mips_get_unaligned_mem): Copy *op after calling adjust_address.

2012-07-21  Andrew Pinski  <apinski@cavium.com>

	* config/mips/mips.c (mips_get_unaligned_mem): Copy *op after calling
	adjust_address.

From-SVN: r189738
This commit is contained in:
Andrew Pinski 2012-07-21 08:39:13 +00:00 committed by Andrew Pinski
parent 3622ef30cb
commit 5621a8432a
2 changed files with 9 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2012-07-21 Andrew Pinski <apinski@cavium.com>
* config/mips/mips.c (mips_get_unaligned_mem): Copy *op after calling
adjust_address.
2012-07-20 Maxim Kuvyrkov <maxim@codesourcery.com>
* config/mips/mips.md (define_attr sync_*): Move before "type".

View File

@ -7217,9 +7217,10 @@ mips_get_unaligned_mem (rtx *op, HOST_WIDE_INT width, HOST_WIDE_INT bitpos,
if (MEM_ALIGN (*op) >= width)
return false;
/* Adjust *OP to refer to the whole field. This also has the effect
of legitimizing *OP's address for BLKmode, possibly simplifying it. */
*op = adjust_address (*op, BLKmode, 0);
/* Create a copy of *OP that refers to the whole field. This also has
the effect of legitimizing *OP's address for BLKmode, possibly
simplifying it. */
*op = copy_rtx (adjust_address (*op, BLKmode, 0));
set_mem_size (*op, width / BITS_PER_UNIT);
/* Get references to both ends of the field. We deliberately don't