diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8322877536c..6db8ceaddff 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,8 +1,9 @@ Thu Aug 27 20:10:46 1998 Jeffrey A Law (law@cygnus.com) * loop.c (scan_loop): Count down from max_reg_num - 1 to - FIRST_PSEUDO_REGISTER to avoid calilng max_reg_num each iteration + FIRST_PSEUDO_REGISTER to avoid calling max_reg_num each iteration of the loop. + (load_mems_and_recount_loop_regs_set): Likewise. * i386.c (print_operand): Remove obsolete 'c' docs. diff --git a/gcc/loop.c b/gcc/loop.c index b4623224cb7..3301f7d2f29 100644 --- a/gcc/loop.c +++ b/gcc/loop.c @@ -8613,7 +8613,7 @@ load_mems_and_recount_loop_regs_set (scan_start, end, loop_top, start, #ifdef AVOID_CCMODE_COPIES /* Don't try to move insns which set CC registers if we should not create CCmode register copies. */ - for (i = FIRST_PSEUDO_REGISTER; i < max_reg_num (); i++) + for (i = max_reg_num () - 1; i >= FIRST_PSEUDO_REGISTER; i--) if (GET_MODE_CLASS (GET_MODE (regno_reg_rtx[i])) == MODE_CC) VARRAY_CHAR (may_not_optimize, i) = 1; #endif