aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAlasdair Baird <alasdair@wildcat.demon.co.uk>1998-07-06 21:19:17 +0000
committerJeff Law <law@gcc.gnu.org>1998-07-06 15:19:17 -0600
commit702d7434a588f6436027d7794428b5bcbbcf3865 (patch)
tree2b8503a4b46c21ce6ee1b44e5af74fc96ad8d5a0 /gcc
parenteafdfea817312037878994ac18d70c8f4c917225 (diff)
downloadgcc-702d7434a588f6436027d7794428b5bcbbcf3865.zip
gcc-702d7434a588f6436027d7794428b5bcbbcf3865.tar.gz
gcc-702d7434a588f6436027d7794428b5bcbbcf3865.tar.bz2
* jump.c (jump_optimize) Check for CONST_INT before using INTVAL.
From-SVN: r20962
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/jump.c2
2 files changed, 6 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6d26102..1aac5d0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+Mon Jul 6 22:17:19 1998 Alasdair Baird <alasdair@wildcat.demon.co.uk>
+
+ * jump.c (jump_optimize) Check for CONST_INT before using INTVAL.
+
Mon Jul 6 22:14:31 1998 Richard Henderson (rth@cygnus.com)
* regclass.c (allocate_reg_info): Initialize the entire reg_data
diff --git a/gcc/jump.c b/gcc/jump.c
index 389a6ff..7184e11 100644
--- a/gcc/jump.c
+++ b/gcc/jump.c
@@ -1299,11 +1299,13 @@ jump_optimize (f, cross_jump, noop_moves, after_regscan)
/* Check that the mask is a power of two,
so that it can probably be generated
with a shift. */
+ && GET_CODE (temp3) == CONST_INT
&& exact_log2 (INTVAL (temp3)) >= 0))
&& (reversep = 0, temp2 == const0_rtx))
|| ((BRANCH_COST >= 2
|| STORE_FLAG_VALUE == -1
|| (STORE_FLAG_VALUE == 1
+ && GET_CODE (temp2) == CONST_INT
&& exact_log2 (INTVAL (temp2)) >= 0))
&& temp3 == const0_rtx
&& (reversep = can_reverse_comparison_p (temp4, insn)))