aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey A Law <law@cygnus.com>1998-08-27 23:11:32 +0000
committerJeff Law <law@gcc.gnu.org>1998-08-27 17:11:32 -0600
commit3568fdd276afa934f3e5cf3dd6601a3663abecef (patch)
treed7e3a190c56792f6f460c7075a7ef5ac5a59933b
parent3d55c13000501bcc627fe4afb803eb8ca00a37ac (diff)
downloadgcc-3568fdd276afa934f3e5cf3dd6601a3663abecef.zip
gcc-3568fdd276afa934f3e5cf3dd6601a3663abecef.tar.gz
gcc-3568fdd276afa934f3e5cf3dd6601a3663abecef.tar.bz2
loop.c (scan_loop): Count down from max_reg_num - 1 to FIRST_PSEUDO_REGISTER to avoid calilng...
* loop.c (scan_loop): Count down from max_reg_num - 1 to FIRST_PSEUDO_REGISTER to avoid calilng max_reg_num each iteration of the loop. From-SVN: r22043
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/loop.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 45cc71d..8322877 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +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
+ of the loop.
+
* i386.c (print_operand): Remove obsolete 'c' docs.
Wed Aug 26 17:13:37 1998 Tom Tromey <tromey@cygnus.com>
diff --git a/gcc/loop.c b/gcc/loop.c
index f11caeb..b462322 100644
--- a/gcc/loop.c
+++ b/gcc/loop.c
@@ -788,7 +788,7 @@ scan_loop (loop_start, end, unroll_p)
#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