From cc5e164240ea462779b876cb1bca7e16123d257e Mon Sep 17 00:00:00 2001 From: "J\"orn Rennecke" Date: Sat, 20 Sep 1997 01:05:16 +0000 Subject: [PATCH] jump.c (thread_jumps): check can_reverse_comparison_p before threading a reversed-condition jump. * jump.c (thread_jumps): check can_reverse_comparison_p before threading a reversed-condition jump. From-SVN: r15590 --- gcc/ChangeLog | 3 +++ gcc/jump.c | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ac47a531729..64efb49d43a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,8 @@ Fri Sep 19 18:53:50 1997 J"orn Rennecke + * jump.c (thread_jumps): check can_reverse_comparison_p before + threading a reversed-condition jump. + * sched.c (update_flow_info): Don't pass SCRATCH to dead_or_set_p. * haifa-sched.c (update_flow_info): Likewise. diff --git a/gcc/jump.c b/gcc/jump.c index b27786380a3..fee77d69f3c 100644 --- a/gcc/jump.c +++ b/gcc/jump.c @@ -4463,7 +4463,10 @@ thread_jumps (f, max_reg, flag_before_loop) if (rtx_equal_for_thread_p (b1op0, b2op0, b2) && rtx_equal_for_thread_p (b1op1, b2op1, b2) && (comparison_dominates_p (code1, code2) - || comparison_dominates_p (code1, reverse_condition (code2)))) + || (comparison_dominates_p (code1, reverse_condition (code2)) + && can_reverse_comparison_p (XEXP (SET_SRC (PATTERN (b1)), + 0), + b1)))) { t1 = prev_nonnote_insn (b1); t2 = prev_nonnote_insn (b2);