OSDN Git Service

* cfgexpand.c (expand_debug_expr): Check for mismatched modes in
[pf3gnuchains/gcc-fork.git] / gcc / dojump.c
index c2ee427..0ebf932 100644 (file)
@@ -163,7 +163,8 @@ prefer_and_bit_test (enum machine_mode mode, int bitnum)
 
   /* Fill in the integers.  */
   XEXP (and_test, 1)
-    = immed_double_const ((unsigned HOST_WIDE_INT) 1 << bitnum, 0, mode);
+    = immed_double_int_const (double_int_setbit (double_int_zero, bitnum),
+                                                mode);
   XEXP (XEXP (shift_test, 0), 1) = GEN_INT (bitnum);
 
   return (rtx_cost (and_test, IF_THEN_ELSE, optimize_insn_for_speed_p ())
@@ -541,7 +542,7 @@ do_jump (tree exp, rtx if_false_label, rtx if_true_label, int prob)
                  unsigned HOST_WIDE_INT mask
                    = (unsigned HOST_WIDE_INT) 1 << TREE_INT_CST_LOW (shift);
                  do_jump (build2 (BIT_AND_EXPR, argtype, arg,
-                                  build_int_cst_wide_type (argtype, mask, 0)),
+                                  build_int_cstu (argtype, mask)),
                           clr_label, set_label, setclr_prob);
                  break;
                }