re PR middle-end/40439 (Bootstrap broken on FreeBSD in tree.c)
authorRichard Guenther <rguenther@suse.de>
Mon, 15 Jun 2009 10:05:29 +0000 (10:05 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Mon, 15 Jun 2009 10:05:29 +0000 (10:05 +0000)
2009-06-15  Richard Guenther  <rguenther@suse.de>

PR middle-end/40439
* tree.c (widest_int_cst_value): Fix bootstrap on 32bit HWI hosts.

From-SVN: r148486

gcc/ChangeLog
gcc/tree.c

index 3cbcd36a042e466d88e054a33ab221aff0d5f5d3..b477d8be5e186f65b09d1ffcbdec7e6de349fb2b 100644 (file)
@@ -1,3 +1,8 @@
+2009-06-15  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/40439
+       * tree.c (widest_int_cst_value): Fix bootstrap on 32bit HWI hosts.
+
 2009-06-14  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
 
        * tree-ssa-math-opts.c: Remove extra divide.
index 6ed29ca42d1bcc582929ea3958b92e81520b8f49..d68f08e9b6ff232d1354058a8f0e69e5d1c8ab7a 100644 (file)
@@ -8499,7 +8499,8 @@ widest_int_cst_value (const_tree x)
 
 #if HOST_BITS_PER_WIDEST_INT > HOST_BITS_PER_WIDE_INT
   gcc_assert (HOST_BITS_PER_WIDEST_INT >= 2 * HOST_BITS_PER_WIDE_INT);
-  val |= TREE_INT_CST_HIGH (x) << HOST_BITS_PER_WIDE_INT;
+  val |= (((unsigned HOST_WIDEST_INT) TREE_INT_CST_HIGH (x))
+         << HOST_BITS_PER_WIDE_INT);
 #else
   /* Make sure the sign-extended value will fit in a HOST_WIDE_INT.  */
   gcc_assert (TREE_INT_CST_HIGH (x) == 0