diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d64c02896ff9..a25ac12d6169 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2005-03-11 Kaz Kojima + + 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 * config.gcc (hppa*64*-*-hpux11*): Use pa/t-hpux-shlib. diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 94e8d4c8033a..79121d48b781 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;