aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Sandiford <rsandifo@redhat.com>2003-09-26 06:05:48 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2003-09-26 06:05:48 +0000
commit9eb5455884dc17327a98a395ca148c254c2a908d (patch)
treef74443df976a468a632228cd8b2dcaafee3ec91e
parenta801686396a4bb15554e2546dbb9e78b6d062f45 (diff)
downloadgcc-9eb5455884dc17327a98a395ca148c254c2a908d.zip
gcc-9eb5455884dc17327a98a395ca148c254c2a908d.tar.gz
gcc-9eb5455884dc17327a98a395ca148c254c2a908d.tar.bz2
* combine.c (if_then_else_cond): Tighten mode check.
From-SVN: r71815
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/combine.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0051408..6ead1c0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2003-09-26 Richard Sandiford <rsandifo@redhat.com>
+
+ * combine.c (if_then_else_cond): Tighten mode check.
+
2003-09-25 Nathanael Nerode <neroden@gcc.gnu.org>
* cppcharset.c, cpphash.h: Rename 'struct strbuf' to
diff --git a/gcc/combine.c b/gcc/combine.c
index c18c36e..3a3d922 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -7422,7 +7422,7 @@ if_then_else_cond (rtx x, rtx *ptrue, rtx *pfalse)
}
/* Likewise for 0 or a single bit. */
- else if (mode != VOIDmode
+ else if (SCALAR_INT_MODE_P (mode)
&& GET_MODE_BITSIZE (mode) <= HOST_BITS_PER_WIDE_INT
&& exact_log2 (nz = nonzero_bits (x, mode)) >= 0)
{