* cfgloopanal.c (variable_initial_value): Update the set of altered
authorrakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 11 Jun 2003 19:01:19 +0000 (19:01 +0000)
committerrakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 11 Jun 2003 19:01:19 +0000 (19:01 +0000)
registers correctly.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@67792 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/cfgloopanal.c

index 20b1351..018bb83 100644 (file)
@@ -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>
 
index 88eaa2c..af7d812 100644 (file)
@@ -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)