aboutsummaryrefslogtreecommitdiff
path: root/gcc/final.c
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1995-06-27 12:39:46 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1995-06-27 12:39:46 -0400
commitde2b56f93dfc74680a2e2039f21cf6e0bd6cfc03 (patch)
tree6b5b38f1d7dac3ecf3d386cf6f61ef8cc8078613 /gcc/final.c
parent9c51f3758544fa57fa69ca0567d82d69d02c9ef7 (diff)
downloadgcc-de2b56f93dfc74680a2e2039f21cf6e0bd6cfc03.zip
gcc-de2b56f93dfc74680a2e2039f21cf6e0bd6cfc03.tar.gz
gcc-de2b56f93dfc74680a2e2039f21cf6e0bd6cfc03.tar.bz2
(final_scan_insn): Don't call alter_cond unless condition is on cc0.
From-SVN: r10062
Diffstat (limited to 'gcc/final.c')
-rw-r--r--gcc/final.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/final.c b/gcc/final.c
index 99689502..73780b9 100644
--- a/gcc/final.c
+++ b/gcc/final.c
@@ -1805,6 +1805,8 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes)
&& GET_CODE (body) == SET
&& SET_DEST (body) == pc_rtx
&& GET_CODE (SET_SRC (body)) == IF_THEN_ELSE
+ && GET_RTX_CLASS (GET_CODE (XEXP (SET_SRC (body), 0))) == '<'
+ && XEXP (XEXP (SET_SRC (body), 0), 1) == cc0_rtx
/* This is done during prescan; it is not done again
in final scan when prescan has been done. */
&& prescan >= 0)