* cse.c: (fold_rtx): Cast to HOST_WIDE_INT in left shift.
authorKaveh R. Ghazi <ghazi@caip.rutgers.edu>
Tue, 31 Aug 1999 00:23:40 +0000 (00:23 +0000)
committerKaveh Ghazi <ghazi@gcc.gnu.org>
Tue, 31 Aug 1999 00:23:40 +0000 (00:23 +0000)
From-SVN: r28993

gcc/ChangeLog
gcc/cse.c

index 3b4ffe2411290d1131f6eb6042c79cfb08ad3dff..024e4e67b3baa09d3c9bad28f60c3b8464a1b42c 100644 (file)
@@ -1,3 +1,7 @@
+Mon Aug 30 20:21:34 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * cse.c: (fold_rtx): Cast to HOST_WIDE_INT in left shift.
+
 Mon Aug 30 16:07:49 1999  Richard Henderson  <rth@cygnus.com>
 
        * flow.c (new_insn_dead_notes): Use sets_reg_or_subreg not
index 8197e42d5ea5a2d660aefc0ee3cc6a9d50efb5d4..baa42365c7783605e23c0c2a4205d9bf828cb9a1 100644 (file)
--- a/gcc/cse.c
+++ b/gcc/cse.c
@@ -5809,7 +5809,8 @@ fold_rtx (x, insn)
                 But The Sun V5.0 compilers mis-compiled that test.  So
                 instead we test for the problematic value in a more direct
                 manner and hope the Sun compilers get it correct.  */
-             && INTVAL (const_arg1) != (1 << (HOST_BITS_PER_WIDE_INT - 1))
+             && INTVAL (const_arg1) !=
+               ((HOST_WIDE_INT) 1 << (HOST_BITS_PER_WIDE_INT - 1))
              && GET_CODE (folded_arg1) == REG)
            {
              rtx new_const = GEN_INT (- INTVAL (const_arg1));