diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d23c392601d22e070b5c706fa596db9e6db8ac04..9a81f33249b4fedf8d13ced297ec1228824071bf 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2004-12-28  Zdenek Dvorak  <dvorakz@suse.cz>
+
+	PR rtl-optimization/19103
+	* loop-iv.c (iv_number_of_iterations): Fix typo.
+
 2004-12-28  Andreas Jaeger  <aj@suse.de>
 
 	* genrecog.c (compute_predicate_codes): Avoid warning.
diff --git a/gcc/loop-iv.c b/gcc/loop-iv.c
index 704d51e07afe0a0183e0beaf2c5348d3fbf6ee45..04f53b88d3ef5f21d7be37993dbc0ef3db97feaa 100644
--- a/gcc/loop-iv.c
+++ b/gcc/loop-iv.c
@@ -2132,7 +2132,7 @@ iv_number_of_iterations (struct loop *loop, rtx insn, rtx condition,
       if (iv0.step == const0_rtx)
 	step_val = -INTVAL (iv1.step);
       else
-	step_val = INTVAL (iv1.step);
+	step_val = INTVAL (iv0.step);
 
       /* Ignore loops of while (i-- < 10) type.  */
       if (step_val < 0)