diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2000-10-24 22:49:39 +0000 |
---|---|---|
committer | Aldy Hernandez <aldyh@gcc.gnu.org> | 2000-10-24 22:49:39 +0000 |
commit | d7836e38b773cb5aaebc661e57704def6a17c5b5 (patch) | |
tree | 7a30b3612dfb94f5dfc0fbe00422e7ccb409a53b | |
parent | 5e2c51baa78757709c10038158b0195d106562e9 (diff) | |
download | gcc-d7836e38b773cb5aaebc661e57704def6a17c5b5.zip gcc-d7836e38b773cb5aaebc661e57704def6a17c5b5.tar.gz gcc-d7836e38b773cb5aaebc661e57704def6a17c5b5.tar.bz2 |
do not propagate constants into jump_insn's for machines with CC0, more than once
From-SVN: r37039
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/gcse.c | 8 |
2 files changed, 12 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 30d515d..9ab283a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2000-10-24 Aldy Hernandez <aldyh@redhat.com> + + * gcse.c (cprop_insn): do not propagate constants into jump_insn + for machines with CC0 more than once. + 2000-10-24 Richard Henderson <rth@cygnus.com>, Aldy <aldyh@cygnus.com> * config/mn10300/mn10300.h (PREFERRED_RELOAD_CLASS): Treat @@ -3948,7 +3948,13 @@ cprop_insn (insn, alter_jumps) && GET_CODE (NEXT_INSN (insn)) == JUMP_INSN && condjump_p (NEXT_INSN (insn)) && ! simplejump_p (NEXT_INSN (insn))) - changed |= cprop_cc0_jump (insn, reg_used, src); + { + if (cprop_cc0_jump (insn, reg_used, src)) + { + changed = 1; + break; + } + } #endif } else if (GET_CODE (src) == REG |