comparison src/share/vm/runtime/arguments.cpp @ 1795:a8b66e00933b

6984368: Large default heap size does not allow to use zero based compressed oops Summary: take into account HeapBaseMinAddress and round down MaxPermSize Reviewed-by: never
author kvn
date Tue, 14 Sep 2010 17:19:35 -0700
parents d5d065957597
children 18c378513575
comparison
equal deleted inserted replaced
1794:065dd1ca3ab6 1795:a8b66e00933b
1271 } 1271 }
1272 return true; 1272 return true;
1273 } 1273 }
1274 1274
1275 inline uintx max_heap_for_compressed_oops() { 1275 inline uintx max_heap_for_compressed_oops() {
1276 LP64_ONLY(return OopEncodingHeapMax - MaxPermSize - os::vm_page_size()); 1276 // Heap should be above HeapBaseMinAddress to get zero based compressed oops.
1277 LP64_ONLY(return OopEncodingHeapMax - MaxPermSize - os::vm_page_size() - HeapBaseMinAddress);
1277 NOT_LP64(ShouldNotReachHere(); return 0); 1278 NOT_LP64(ShouldNotReachHere(); return 0);
1278 } 1279 }
1279 1280
1280 bool Arguments::should_auto_select_low_pause_collector() { 1281 bool Arguments::should_auto_select_low_pause_collector() {
1281 if (UseAutoGCSelectPolicy && 1282 if (UseAutoGCSelectPolicy &&