tree-scalar-evolution.c (follow_ssa_edge_in_condition_phi): Give up as soon as the...
authorSebastian Pop <pop@cri.ensmp.fr>
Thu, 11 Nov 2004 19:25:58 +0000 (20:25 +0100)
committerSebastian Pop <spop@gcc.gnu.org>
Thu, 11 Nov 2004 19:25:58 +0000 (19:25 +0000)
* tree-scalar-evolution.c (follow_ssa_edge_in_condition_phi):
Give up as soon as the evolution is known not computable.

From-SVN: r90491

gcc/ChangeLog
gcc/tree-scalar-evolution.c

index 21599f4ac204ccbc4e1ab8f7e806a4702f30e236..620cefa952fcd665003cb06ec9021c259ce9efaf 100644 (file)
@@ -1,3 +1,8 @@
+2004-11-11  Sebastian Pop  <pop@cri.ensmp.fr>
+
+       * tree-scalar-evolution.c (follow_ssa_edge_in_condition_phi): 
+       Give up as soon as the evolution is known not computable.
+
 2004-11-11  Nathan Sidwell  <nathan@codesourcery.com>
 
        PR target/16457
index 7d97d92dce2ccf0b8a21ba4ffe2f4903a8951183..e26f1da48db049610bdd0c7e848dfc0c178f940e 100644 (file)
@@ -1398,6 +1398,11 @@ follow_ssa_edge_in_condition_phi (struct loop *loop,
 
   for (i = 1; i < PHI_NUM_ARGS (condition_phi); i++)
     {
+      /* Quickly give up when the evolution of one of the branches is
+        not known.  */
+      if (*evolution_of_loop == chrec_dont_know)
+       return true;
+
       if (!follow_ssa_edge_in_condition_phi_branch (i, loop, condition_phi,
                                                    halting_phi,
                                                    &evolution_of_branch,