aboutsummaryrefslogtreecommitdiff
path: root/gcc/loop.c
diff options
context:
space:
mode:
authorJ"orn Rennecke <amylaar@cygnus.co.uk>1999-02-17 09:01:07 +0000
committerJoern Rennecke <amylaar@gcc.gnu.org>1999-02-17 09:01:07 +0000
commit079a615d28fcd5ffdc97e4206225f3ea0c411c5a (patch)
tree769ac933795dacfcb4aad280374a0c1ad65841a8 /gcc/loop.c
parent95ac945dc015899bcacf367d9d22282490fbc5ae (diff)
downloadgcc-079a615d28fcd5ffdc97e4206225f3ea0c411c5a.zip
gcc-079a615d28fcd5ffdc97e4206225f3ea0c411c5a.tar.gz
gcc-079a615d28fcd5ffdc97e4206225f3ea0c411c5a.tar.bz2
loop.c (strength_reduce): Don't move giv insn for biv turned giv below scan_start.
* loop.c (strength_reduce): Don't move giv insn for biv turned giv below scan_start. From-SVN: r25264
Diffstat (limited to 'gcc/loop.c')
-rw-r--r--gcc/loop.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/loop.c b/gcc/loop.c
index 0979b99..932a725 100644
--- a/gcc/loop.c
+++ b/gcc/loop.c
@@ -4053,6 +4053,7 @@ strength_reduce (scan_start, end, loop_top, insn_count,
/* We can get better optimization if we can move the giv setting
before the first giv use. */
if (dominator
+ && ! loop_insn_first_p (dominator, scan_start)
&& ! reg_set_between_p (bl2->biv->src_reg, loop_start,
dominator)
&& ! reg_used_between_p (giv, loop_start, dominator)