diff options
Diffstat (limited to 'src/share/vm/gc_implementation/g1/g1BlockOffsetTable.inline.hpp')
-rw-r--r-- | src/share/vm/gc_implementation/g1/g1BlockOffsetTable.inline.hpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/share/vm/gc_implementation/g1/g1BlockOffsetTable.inline.hpp b/src/share/vm/gc_implementation/g1/g1BlockOffsetTable.inline.hpp index 2f8868185..d300f5625 100644 --- a/src/share/vm/gc_implementation/g1/g1BlockOffsetTable.inline.hpp +++ b/src/share/vm/gc_implementation/g1/g1BlockOffsetTable.inline.hpp @@ -49,16 +49,17 @@ inline size_t G1BlockOffsetSharedArray::index_for(const void* p) const { char* pc = (char*)p; assert(pc >= (char*)_reserved.start() && pc < (char*)_reserved.end(), - "p not in range."); + err_msg("p (" PTR_FORMAT ") not in reserved [" PTR_FORMAT ", " PTR_FORMAT ")", + p, (char*)_reserved.start(), (char*)_reserved.end())); size_t delta = pointer_delta(pc, _reserved.start(), sizeof(char)); size_t result = delta >> LogN; - assert(result < _vs.committed_size(), "bad index from address"); + check_index(result, "bad index from address"); return result; } inline HeapWord* G1BlockOffsetSharedArray::address_for_index(size_t index) const { - assert(index < _vs.committed_size(), "bad index"); + check_index(index, "index out of range"); HeapWord* result = _reserved.start() + (index << LogN_words); assert(result >= _reserved.start() && result < _reserved.end(), err_msg("bad address from index result " PTR_FORMAT |