* combine.c (try_combine): Ensure const_int pow2 is positive.
authorDavid Edelsohn <edelsohn@gnu.org>
Fri, 13 Jul 2001 15:05:51 +0000 (15:05 +0000)
committerDavid Edelsohn <dje@gcc.gnu.org>
Fri, 13 Jul 2001 15:05:51 +0000 (11:05 -0400)
From-SVN: r43983

gcc/ChangeLog
gcc/combine.c

index c80f159db843d0ca873fd9c4af6563e878514f13..57ea335d5c015089f77cbb1ffbdb26e8858a74c5 100644 (file)
@@ -1,3 +1,7 @@
+2001-07-13  David Edelsohn  <edelsohn@gnu.org>
+
+       * combine.c (try_combine): Ensure const_int pow2 is positive.
+
 2001-07-13  Hartmut Penner  <hpenner@de.ibm.com>
 
         * config.gcc: Add configuration for s/390. 
index 6972d85fc09425e8e0a6edd5287fe5d35d2baa93..2557d7583676b37cd292f1a285794016ee579b43 100644 (file)
@@ -2235,6 +2235,7 @@ try_combine (i3, i2, i1, new_direct_jump_p)
             appeared to be a memory address.  This is a kludge.  */
          if (split_code == MULT
              && GET_CODE (XEXP (*split, 1)) == CONST_INT
+             && INTVAL (XEXP (*split, 1)) > 0
              && (i = exact_log2 (INTVAL (XEXP (*split, 1)))) >= 0)
            {
              SUBST (*split, gen_rtx_ASHIFT (split_mode,