lambda-code.c (replace_uses_equiv_to_x_with_y): Verify the step is an INTEGER_CST...
authorDaniel Berlin <dberlin@dberlin.org>
Sat, 11 Jun 2005 15:28:35 +0000 (15:28 +0000)
committerDaniel Berlin <dberlin@gcc.gnu.org>
Sat, 11 Jun 2005 15:28:35 +0000 (15:28 +0000)
2005-06-11  Daniel Berlin  <dberlin@dberlin.org>

* lambda-code.c (replace_uses_equiv_to_x_with_y): Verify the step
is an INTEGER_CST before calling int_cst_value.

From-SVN: r100839

gcc/ChangeLog
gcc/lambda-code.c

index 7d6fc6aa4aa84c4ed0354c7ea21de98528994950..87a50cade54e0432ca631b6beddaf262b53f4d5a 100644 (file)
@@ -1,3 +1,8 @@
+2005-06-11  Daniel Berlin  <dberlin@dberlin.org>
+
+       * lambda-code.c (replace_uses_equiv_to_x_with_y): Verify the step
+       is an INTEGER_CST before calling int_cst_value.
+
 2005-06-10  Uros Bizjak  <uros@kss-loka.si>
 
        PR target/21981
index 6dbbe6d8b8bdf8c3f1142a1929c2e69d3528dbca..c649d181b2df851e664b8247e4455da20f523c56 100644 (file)
@@ -2184,7 +2184,9 @@ replace_uses_equiv_to_x_with_y (struct loop *loop, tree stmt, tree x,
        (loop, analyze_scalar_evolution (loop, use));
       if (access_fn != NULL_TREE && access_fn != chrec_dont_know)
        step = evolution_part_in_loop_num (access_fn, loop->num);
-      if ((step && step != chrec_dont_know && int_cst_value (step) == xstep)
+      if ((step && step != chrec_dont_know 
+          && TREE_CODE (step) == INTEGER_CST
+          && int_cst_value (step) == xstep)
          || USE_FROM_PTR (use_p) == x)
        SET_USE (use_p, y);
     }