From: Jakub Jelinek Date: Tue, 1 Sep 2009 10:18:34 +0000 (+0200) Subject: boehm.c (mark_reference_fields): Compute % in HOST_WIDE_INT type. X-Git-Tag: releases/gcc-4.5.0~3751 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=437926c09e3a6425c7b02a6ddd47e731d82a0047;p=thirdparty%2Fgcc.git 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 --- diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 1723e41f485c..49d372cb4b54 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 e60e5a093ae0..b8ca814b6aa5 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 a291dffe599d..1437c5a2f543 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 5c65c8bb0cc3..04af74b5948f 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;