From 437926c09e3a6425c7b02a6ddd47e731d82a0047 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 1 Sep 2009 12:18:34 +0200 Subject: [PATCH] boehm.c (mark_reference_fields): Compute % in HOST_WIDE_INT type. * 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. From-SVN: r151263 --- gcc/ada/ChangeLog | 5 +++++ gcc/ada/gcc-interface/utils2.c | 5 +++-- gcc/java/ChangeLog | 5 +++++ gcc/java/boehm.c | 4 ++-- 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 + + * gcc-interface/utils2.c (maybe_wrap_malloc, maybe_wrap_free): Cast + POINTER_SIZE to HOST_WIDE_INT. + 2009-09-01 Richard Guenther * 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 + + * boehm.c (mark_reference_fields): Compute % in HOST_WIDE_INT + type. + 2009-09-01 Richard Guenther * 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; -- 2.30.2