1.1 --- a/src/share/vm/gc_implementation/g1/g1BiasedArray.hpp Thu May 21 23:21:34 2015 -0700 1.2 +++ b/src/share/vm/gc_implementation/g1/g1BiasedArray.hpp Mon Jan 20 10:55:54 2014 +0100 1.3 @@ -75,7 +75,7 @@ 1.4 assert((uintptr_t)end % mapping_granularity_in_bytes == 0, 1.5 err_msg("end mapping area address must be a multiple of mapping granularity %zd, is " PTR_FORMAT, 1.6 mapping_granularity_in_bytes, p2i(end))); 1.7 - size_t num_target_elems = (end - bottom) / (mapping_granularity_in_bytes / HeapWordSize); 1.8 + size_t num_target_elems = pointer_delta(end, bottom, mapping_granularity_in_bytes); 1.9 idx_t bias = (uintptr_t)bottom / mapping_granularity_in_bytes; 1.10 address base = create_new_base_array(num_target_elems, target_elem_size_in_bytes); 1.11 initialize_base(base, num_target_elems, bias, target_elem_size_in_bytes, log2_intptr(mapping_granularity_in_bytes));