OSDN Git Service

PR rtl-optimization/20331
authorkkojima <kkojima@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 11 Mar 2005 03:14:44 +0000 (03:14 +0000)
committerkkojima <kkojima@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 11 Mar 2005 03:14:44 +0000 (03:14 +0000)
* 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

gcc/ChangeLog
gcc/rtlanal.c

index d64c028..a25ac12 100644 (file)
@@ -1,3 +1,9 @@
+2005-03-11  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       PR rtl-optimization/20331
+       * rtlanal.c (modified_between_p): Check its address first for MEM.
+       (modified_in_p): Likewise.
+
 2005-03-11  Joseph S. Myers  <joseph@codesourcery.com>
 
        * config.gcc (hppa*64*-*-hpux11*): Use pa/t-hpux-shlib.
index 94e8d4c..79121d4 100644 (file)
@@ -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;