------- Comment #6 from pinskia at gcc dot gnu dot org 2007-06-16 20:55 ------- This patch works for me (and I think it is correct): Index: tree-chrec.c =================================================================== --- tree-chrec.c (revision 125757) +++ tree-chrec.c (working copy) @@ -712,6 +712,10 @@ else component = CHREC_LEFT (chrec);
+ if (!right && TREE_CODE (CHREC_LEFT (chrec)) == POLYNOMIAL_CHREC + && CHREC_VARIABLE (CHREC_LEFT (chrec)) == CHREC_VARIABLE (chrec)) + return chrec_component_in_loop_num (CHREC_LEFT (chrec), loop_num, right); + if (TREE_CODE (CHREC_LEFT (chrec)) != POLYNOMIAL_CHREC || CHREC_VARIABLE (CHREC_LEFT (chrec)) != CHREC_VARIABLE (chrec)) return component; -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32367