summaryrefslogtreecommitdiff
path: root/gcc/rtlanal.c
diff options
context:
space:
mode:
authorkkojima <kkojima@138bc75d-0d04-0410-961f-82ee72b054a4>2005-03-11 03:14:44 +0000
committerkkojima <kkojima@138bc75d-0d04-0410-961f-82ee72b054a4>2005-03-11 03:14:44 +0000
commitbf0ee60aba3bc52a02fc126a805f3e6c0f3cb3c0 (patch)
tree73a230b38110e6e47a013ef31f7fc55964ad7266 /gcc/rtlanal.c
parentb0a4381b828201616a47348dd32fcb614d61bf63 (diff)
downloadgcc-bf0ee60aba3bc52a02fc126a805f3e6c0f3cb3c0.tar.gz
PR rtl-optimization/20331
* rtlanal.c (modified_between_p): Check its address first for MEM. (modified_in_p): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96282 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/rtlanal.c')
-rw-r--r--gcc/rtlanal.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c
index 94e8d4c8033..79121d48b78 100644
--- a/gcc/rtlanal.c
+++ b/gcc/rtlanal.c
@@ -817,10 +817,10 @@ modified_between_p (rtx x, rtx start, rtx end)
return 1;
case MEM:
- if (MEM_READONLY_P (x))
- return 0;
if (modified_between_p (XEXP (x, 0), start, end))
return 1;
+ if (MEM_READONLY_P (x))
+ return 0;
for (insn = NEXT_INSN (start); insn != end; insn = NEXT_INSN (insn))
if (memory_modified_in_insn_p (x, insn))
return 1;
@@ -875,10 +875,10 @@ modified_in_p (rtx x, rtx insn)
return 1;
case MEM:
- if (MEM_READONLY_P (x))
- return 0;
if (modified_in_p (XEXP (x, 0), insn))
return 1;
+ if (MEM_READONLY_P (x))
+ return 0;
if (memory_modified_in_insn_p (x, insn))
return 1;
return 0;