aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2009-09-01 10:18:34 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2009-09-01 10:18:34 +0000
commit092a498dbc2650cf1b84a659e6c1bceaf50e8985 (patch)
tree7557b2844944b0d6d697f9f8891a8d179f1292ec
parent776334959f82c37d52ee76f7d82ac8dbad44a102 (diff)
* boehm.c (mark_reference_fields): Compute % in HOST_WIDE_INT
type. * gcc-interface/utils2.c (maybe_wrap_malloc, maybe_wrap_free): Cast POINTER_SIZE to HOST_WIDE_INT. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151263 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ada/ChangeLog5
-rw-r--r--gcc/ada/gcc-interface/utils2.c5
-rw-r--r--gcc/java/ChangeLog5
-rw-r--r--gcc/java/boehm.c4
4 files changed, 15 insertions, 4 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 1723e41f485..49d372cb4b5 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,8 @@
+2009-09-01 Jakub Jelinek <jakub@redhat.com>
+
+ * gcc-interface/utils2.c (maybe_wrap_malloc, maybe_wrap_free): Cast
+ POINTER_SIZE to HOST_WIDE_INT.
+
2009-09-01 Richard Guenther <rguenther@suse.de>
* gcc-interface/misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Remove.
diff --git a/gcc/ada/gcc-interface/utils2.c b/gcc/ada/gcc-interface/utils2.c
index e60e5a093ae..b8ca814b6aa 100644
--- a/gcc/ada/gcc-interface/utils2.c
+++ b/gcc/ada/gcc-interface/utils2.c
@@ -1972,7 +1972,8 @@ maybe_wrap_malloc (tree data_size, tree data_type, Node_Id gnat_node)
tree storage_ptr_slot_addr
= build_binary_op (POINTER_PLUS_EXPR, ptr_void_type_node,
convert (ptr_void_type_node, aligning_field_addr),
- size_int (-POINTER_SIZE/BITS_PER_UNIT));
+ size_int (-(HOST_WIDE_INT) POINTER_SIZE
+ / BITS_PER_UNIT));
tree storage_ptr_slot
= build_unary_op (INDIRECT_REF, NULL_TREE,
@@ -2013,7 +2014,7 @@ maybe_wrap_free (tree data_ptr, tree data_type)
= build_binary_op
(POINTER_PLUS_EXPR, ptr_void_type_node,
convert (ptr_void_type_node, data_ptr),
- size_int (-POINTER_SIZE/BITS_PER_UNIT));
+ size_int (-(HOST_WIDE_INT) POINTER_SIZE / BITS_PER_UNIT));
/* FREE_PTR (void *) = *(void **)DATA_FRONT_PTR */
free_ptr
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index a291dffe599..1437c5a2f54 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,8 @@
+2009-09-01 Jakub Jelinek <jakub@redhat.com>
+
+ * boehm.c (mark_reference_fields): Compute % in HOST_WIDE_INT
+ type.
+
2009-09-01 Richard Guenther <rguenther@suse.de>
* lang.c (LANG_HOOKS_MARK_ADDRESSABLE): Remove.
diff --git a/gcc/java/boehm.c b/gcc/java/boehm.c
index 5c65c8bb0cc..04af74b5948 100644
--- a/gcc/java/boehm.c
+++ b/gcc/java/boehm.c
@@ -1,5 +1,5 @@
/* Functions related to the Boehm garbage collector.
- Copyright (C) 2000, 2003, 2004, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2003, 2004, 2006, 2009 Free Software Foundation, Inc.
This file is part of GCC.
@@ -111,7 +111,7 @@ mark_reference_fields (tree field,
we already covered, then we are doomed. */
gcc_assert (offset > *last_view_index);
- if (offset % (POINTER_SIZE / BITS_PER_UNIT))
+ if (offset % (HOST_WIDE_INT) (POINTER_SIZE / BITS_PER_UNIT))
{
*all_bits_set = -1;
*pointer_after_end = 1;