aboutsummaryrefslogtreecommitdiff
path: root/gcc/reload1.c
diff options
context:
space:
mode:
authorDoug Evans <dje@gnu.org>1997-07-21 18:07:27 +0000
committerDoug Evans <dje@gnu.org>1997-07-21 18:07:27 +0000
commit866aa3b64b91e88a50ebe02bf75c39d368bde1cd (patch)
treed5764b705755fb4d86d8c452c654e60438d92a91 /gcc/reload1.c
parent7c0ae5f17f84a9282e30e828aa06fe4d441ca566 (diff)
downloadgcc-866aa3b64b91e88a50ebe02bf75c39d368bde1cd.zip
gcc-866aa3b64b91e88a50ebe02bf75c39d368bde1cd.tar.gz
gcc-866aa3b64b91e88a50ebe02bf75c39d368bde1cd.tar.bz2
reload1.c (reload_cse_mem_conflict_p): Restore handling of (mem:BLK const0_rtx) meaning all memory is clobbered.
* reload1.c (reload_cse_mem_conflict_p): Restore handling of (mem:BLK const0_rtx) meaning all memory is clobbered. From-SVN: r14512
Diffstat (limited to 'gcc/reload1.c')
-rw-r--r--gcc/reload1.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/reload1.c b/gcc/reload1.c
index 564a579..f777c5b 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -7668,8 +7668,8 @@ reload_cse_invalidate_regno (regno, mode, clobber)
}
}
-/* The memory at address MEM_BASE is being changed. MEM_MODE is the mode of
- the memory reference. Return whether this change will invalidate VAL. */
+/* The memory at address MEM_BASE is being changed.
+ Return whether this change will invalidate VAL. */
static int
reload_cse_mem_conflict_p (mem_base, val)
@@ -7696,6 +7696,9 @@ reload_cse_mem_conflict_p (mem_base, val)
return 0;
case MEM:
+ if (GET_MODE (mem_base) == BLKmode
+ || GET_MODE (val) == BLKmode)
+ return 1;
return anti_dependence (val, mem_base);
default: