aboutsummaryrefslogtreecommitdiff
path: root/gcc/loop.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/loop.c')
-rw-r--r--gcc/loop.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/gcc/loop.c b/gcc/loop.c
index d31dbeb..70c307a 100644
--- a/gcc/loop.c
+++ b/gcc/loop.c
@@ -4119,10 +4119,9 @@ strength_reduce (loop, insn_count, flags)
for (next = NEXT_INSN (dominator); ; next = NEXT_INSN (next))
{
- if ((INSN_P (next)
- && (reg_mentioned_p (giv, PATTERN (next))
- || reg_set_p (bl2->biv->src_reg, next)))
- || GET_CODE (next) == JUMP_INSN)
+ if (GET_CODE (next) == JUMP_INSN
+ || (INSN_P (next)
+ && insn_dependant_p (giv_insn, next)))
break;
#ifdef HAVE_cc0
if (! INSN_P (next)