14 lines
524 B
Diff
14 lines
524 B
Diff
diff -up gcc/cse.c.orig gcc/cse.c
|
|
--- gcc/cse.c.orig 2003-08-11 00:02:24.000000000 +0200
|
|
+++ gcc/cse.c 2003-07-31 23:49:21.000000000 +0200
|
|
@@ -6682,7 +6682,8 @@ invalidate_skipped_set (dest, set, data)
|
|
a BLKmode or nonscalar memory reference or a reference to a
|
|
variable address. */
|
|
&& (MEM_IN_STRUCT_P (dest) || GET_MODE (dest) == BLKmode
|
|
- || cse_rtx_varies_p (XEXP (dest, 0), 0)))
|
|
+ || cse_rtx_varies_p (XEXP (dest, 0), 0))
|
|
+ && !MEM_EXPR (dest))
|
|
{
|
|
invalidate_memory ();
|
|
return;
|