From: Jeffrey A Law Date: Mon, 24 Aug 1998 11:06:09 +0000 (+0000) Subject: * loop.c (scan_loop): Honor AVOID_CC_MODE_COPIES. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ef9e3c5bce9f4279387578cdefc75f766a257cf9;p=gcc.git * loop.c (scan_loop): Honor AVOID_CC_MODE_COPIES. From-SVN: r21935 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3e3371d5a91..4327d04ffe4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,7 @@ Mon Aug 24 10:25:46 1998 Jeffrey A Law (law@cygnus.com) + * loop.c (scan_loop): Honor AVOID_CC_MODE_COPIES. + * h8300.h (STRIP_NAME_ENCODING): Fix typo. * sparc.md (TFmode splits): Use reg_overlap_mentioned_p to detect diff --git a/gcc/loop.c b/gcc/loop.c index 34613cb66d5..dda3acade5c 100644 --- a/gcc/loop.c +++ b/gcc/loop.c @@ -781,6 +781,16 @@ scan_loop (loop_start, end, unroll_p) for (i = 0; i < FIRST_PSEUDO_REGISTER; i++) may_not_optimize[i] = 1, n_times_set[i] = 1; + +#ifdef AVOID_CCMODE_COPIES + /* Don't try to move insns which set CC registers if we should not + create CCmode register copies. */ + be avoiding + for (i = FIRST_PSEUDO_REGISTER; i < nregs - loop_mems_idx; i++) + if (GET_MODE_CLASS (GET_MODE (regno_reg_rtx[i])) == MODE_CC) + may_not_optimize[i] = 1; +#endif + bcopy ((char *) n_times_set, (char *) n_times_used, nregs * sizeof (int)); if (loop_dump_stream)