diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f67a7c2867e07ecc57547fcbc2bc1b941e6f17d3..482f4a5d543ec982664daf63defc14c5364da251 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2006-05-30  Zdenek Dvorak <dvorakz@suse.cz>
+
+	PR tree-optimization/27779
+	* tree-data-ref.c (analyze_siv_subscript_cst_affine): Use
+	initial_condition instead of CHREC_LEFT.
+
 2006-05-30  Steven Bosscher  <stevenb.gcc@gmail.com>
 
 	* config/m32r/m32r.h (DBX_OUTPUT_SOURCE_LINE): Fix type of begin_label.
@@ -5,11 +11,11 @@
 	Make prototypes ISO C90.
 
 2006-05-30  Mircea Namolaru  <namolaru@il.ibm.com>
-            Leehod Baruch    <leehod.baruch@weizmann.ac.il>
+	    Leehod Baruch    <leehod.baruch@weizmann.ac.il>
 
-        * see.c (see_analyze_one_def): Correct check.
-        (see_get_extension_data): Check if extension is parallel.
-        (see_get_extension_reg): Likewise.
+	* see.c (see_analyze_one_def): Correct check.
+	(see_get_extension_data): Check if extension is parallel.
+	(see_get_extension_reg): Likewise.
 
 2006-05-30  Uros Bizjak  <uros@kss-loka.si>
 
diff --git a/gcc/tree-data-ref.c b/gcc/tree-data-ref.c
index 596b484650012a49f47fdff525ed59d4bc63f344..57b1ac0092122270b4c0d5a9a3dc98e24382b59c 100644
--- a/gcc/tree-data-ref.c
+++ b/gcc/tree-data-ref.c
@@ -2332,7 +2332,7 @@ analyze_siv_subscript_cst_affine (tree chrec_a,
   chrec_a = chrec_convert (integer_type_node, chrec_a, NULL_TREE);
   chrec_b = chrec_convert (integer_type_node, chrec_b, NULL_TREE);
   difference = chrec_fold_minus 
-    (integer_type_node, CHREC_LEFT (chrec_b), chrec_a);
+    (integer_type_node, initial_condition (chrec_b), chrec_a);
   
   if (!chrec_is_positive (initial_condition (difference), &value0))
     {