+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".
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