diff options
author | J"orn Rennecke <amylaar@cygnus.co.uk> | 1997-09-20 01:05:16 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1997-09-19 19:05:16 -0600 |
commit | cc5e164240ea462779b876cb1bca7e16123d257e (patch) | |
tree | 8e2b833b6d4c62b392a20808da820c811e83ac13 | |
parent | 272299b9cabbfe63101274564899222b737dede5 (diff) | |
download | gcc-cc5e164240ea462779b876cb1bca7e16123d257e.zip gcc-cc5e164240ea462779b876cb1bca7e16123d257e.tar.gz gcc-cc5e164240ea462779b876cb1bca7e16123d257e.tar.bz2 |
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
-rw-r--r-- | gcc/ChangeLog | 3 | ||||
-rw-r--r-- | gcc/jump.c | 5 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ac47a53..64efb49 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,8 @@ Fri Sep 19 18:53:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk> + * 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. @@ -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); |