equal
deleted
inserted
replaced
341 } |
341 } |
342 } |
342 } |
343 } |
343 } |
344 #endif // PRODUCT |
344 #endif // PRODUCT |
345 |
345 |
346 void CollectedHeap::check_oop_location(void* addr) const { |
|
347 assert(is_object_aligned(addr), "address is not aligned"); |
|
348 assert(_reserved.contains(addr), "address is not in reserved heap"); |
|
349 } |
|
350 |
|
351 size_t CollectedHeap::max_tlab_size() const { |
346 size_t CollectedHeap::max_tlab_size() const { |
352 // TLABs can't be bigger than we can fill with a int[Integer.MAX_VALUE]. |
347 // TLABs can't be bigger than we can fill with a int[Integer.MAX_VALUE]. |
353 // This restriction could be removed by enabling filling with multiple arrays. |
348 // This restriction could be removed by enabling filling with multiple arrays. |
354 // If we compute that the reasonable way as |
349 // If we compute that the reasonable way as |
355 // header_size + ((sizeof(jint) * max_jint) / HeapWordSize) |
350 // header_size + ((sizeof(jint) * max_jint) / HeapWordSize) |
374 #ifdef ASSERT |
369 #ifdef ASSERT |
375 void CollectedHeap::fill_args_check(HeapWord* start, size_t words) |
370 void CollectedHeap::fill_args_check(HeapWord* start, size_t words) |
376 { |
371 { |
377 assert(words >= min_fill_size(), "too small to fill"); |
372 assert(words >= min_fill_size(), "too small to fill"); |
378 assert(is_object_aligned(words), "unaligned size"); |
373 assert(is_object_aligned(words), "unaligned size"); |
379 DEBUG_ONLY(Universe::heap()->check_oop_location(start);) |
|
380 DEBUG_ONLY(Universe::heap()->check_oop_location(start + words - MinObjAlignment);) |
|
381 } |
374 } |
382 |
375 |
383 void CollectedHeap::zap_filler_array(HeapWord* start, size_t words, bool zap) |
376 void CollectedHeap::zap_filler_array(HeapWord* start, size_t words, bool zap) |
384 { |
377 { |
385 if (ZapFillerObjects && zap) { |
378 if (ZapFillerObjects && zap) { |