diff options
author | Roger Sayle <roger@eyesopen.com> | 2002-10-15 05:01:07 +0000 |
---|---|---|
committer | Roger Sayle <sayle@gcc.gnu.org> | 2002-10-15 05:01:07 +0000 |
commit | dbf4f1a2bad3bf4dcfb00ee92820f5fbe9957577 (patch) | |
tree | 2b4971dced33798a51e2a5d41ec67793708c1e86 /gcc/combine.c | |
parent | 8c536ae9dc02b5a8bc34a64fadbeb558f2ac4065 (diff) | |
download | gcc-dbf4f1a2bad3bf4dcfb00ee92820f5fbe9957577.zip gcc-dbf4f1a2bad3bf4dcfb00ee92820f5fbe9957577.tar.gz gcc-dbf4f1a2bad3bf4dcfb00ee92820f5fbe9957577.tar.bz2 |
* combine.c (simplify_set): Treat MODE_CC registers like cc0.
From-SVN: r58148
Diffstat (limited to 'gcc/combine.c')
-rw-r--r-- | gcc/combine.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/gcc/combine.c b/gcc/combine.c index ea12e05..ce97adf 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -5021,11 +5021,9 @@ simplify_set (x) /* If we are setting CC0 or if the source is a COMPARE, look for the use of the comparison result and try to simplify it unless we already have used undobuf.other_insn. */ - if ((GET_CODE (src) == COMPARE -#ifdef HAVE_cc0 - || dest == cc0_rtx -#endif - ) + if ((GET_MODE_CLASS (mode) == MODE_CC + || GET_CODE (src) == COMPARE + || CC0_P (dest)) && (cc_use = find_single_use (dest, subst_insn, &other_insn)) != 0 && (undobuf.other_insn == 0 || other_insn == undobuf.other_insn) && GET_RTX_CLASS (GET_CODE (*cc_use)) == '<' |