aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/cfgloopanal.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 20b1351..018bb83 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2003-06-11 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * cfgloopanal.c (variable_initial_value): Update the set of altered
+ registers correctly.
+
2003-06-11 Roger Sayle <roger@eyesopen.com>
Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
diff --git a/gcc/cfgloopanal.c b/gcc/cfgloopanal.c
index 88eaa2c..af7d812 100644
--- a/gcc/cfgloopanal.c
+++ b/gcc/cfgloopanal.c
@@ -359,12 +359,12 @@ variable_initial_value (insn, invariant_regs, var, set_insn)
{
for (; insn != bb->head; insn = PREV_INSN (insn))
{
- if (modified_between_p (var, PREV_INSN (insn), NEXT_INSN (insn)))
- break;
if (INSN_P (insn))
note_stores (PATTERN (insn),
(void (*) PARAMS ((rtx, rtx, void *))) unmark_altered,
invariant_regs);
+ if (modified_between_p (var, PREV_INSN (insn), NEXT_INSN (insn)))
+ break;
}
if (insn != bb->head)