< prev index next >

src/share/vm/runtime/arguments.cpp

Print this page




1505 
1506 
1507 // NOTE: set_use_compressed_klass_ptrs() must be called after calling
1508 // set_use_compressed_oops().
1509 void Arguments::set_use_compressed_klass_ptrs() {
1510 #ifndef ZERO
1511 #ifdef _LP64
1512   // UseCompressedOops must be on for UseCompressedClassPointers to be on.
1513   if (!UseCompressedOops) {
1514     if (UseCompressedClassPointers) {
1515       warning("UseCompressedClassPointers requires UseCompressedOops");
1516     }
1517     FLAG_SET_DEFAULT(UseCompressedClassPointers, false);
1518   } else {
1519     // Turn on UseCompressedClassPointers too
1520     if (FLAG_IS_DEFAULT(UseCompressedClassPointers)) {
1521       FLAG_SET_ERGO(bool, UseCompressedClassPointers, true);
1522     }
1523     // Check the CompressedClassSpaceSize to make sure we use compressed klass ptrs.
1524     if (UseCompressedClassPointers) {












1525       if (CompressedClassSpaceSize > KlassEncodingMetaspaceMax) {
1526         warning("CompressedClassSpaceSize is too large for UseCompressedClassPointers");
1527         FLAG_SET_DEFAULT(UseCompressedClassPointers, false);
1528       }
1529     }
1530   }
1531 #endif // _LP64
1532 #endif // !ZERO
1533 }
1534 
1535 void Arguments::set_conservative_max_heap_alignment() {
1536   // The conservative maximum required alignment for the heap is the maximum of
1537   // the alignments imposed by several sources: any requirements from the heap
1538   // itself, the collector policy and the maximum page size we may run the VM
1539   // with.
1540   size_t heap_alignment = GenCollectedHeap::conservative_max_heap_alignment();
1541 #if INCLUDE_ALL_GCS
1542   if (UseParallelGC) {
1543     heap_alignment = ParallelScavengeHeap::conservative_max_heap_alignment();
1544   } else if (UseG1GC) {




1505 
1506 
1507 // NOTE: set_use_compressed_klass_ptrs() must be called after calling
1508 // set_use_compressed_oops().
1509 void Arguments::set_use_compressed_klass_ptrs() {
1510 #ifndef ZERO
1511 #ifdef _LP64
1512   // UseCompressedOops must be on for UseCompressedClassPointers to be on.
1513   if (!UseCompressedOops) {
1514     if (UseCompressedClassPointers) {
1515       warning("UseCompressedClassPointers requires UseCompressedOops");
1516     }
1517     FLAG_SET_DEFAULT(UseCompressedClassPointers, false);
1518   } else {
1519     // Turn on UseCompressedClassPointers too
1520     if (FLAG_IS_DEFAULT(UseCompressedClassPointers)) {
1521       FLAG_SET_ERGO(bool, UseCompressedClassPointers, true);
1522     }
1523     // Check the CompressedClassSpaceSize to make sure we use compressed klass ptrs.
1524     if (UseCompressedClassPointers) {
1525       if ((InitialBootClassLoaderMetaspaceSize + CompressedClassSpaceSize)
1526                                                           >= MaxMetaspaceSize) {
1527         if (InitialBootClassLoaderMetaspaceSize >= MaxMetaspaceSize) {
1528           vm_exit_during_initialization(
1529                    "InitialBootClassLoaderMetaspaceSize should be " 
1530                                                 "less than MaxMetaspaceSize.");
1531         } else {
1532           FLAG_SET_ERGO(size_t, CompressedClassSpaceSize,
1533                         MaxMetaspaceSize - InitialBootClassLoaderMetaspaceSize);
1534         }
1535       }
1536 
1537       if (CompressedClassSpaceSize > KlassEncodingMetaspaceMax) {
1538         warning("CompressedClassSpaceSize is too large for UseCompressedClassPointers");
1539         FLAG_SET_DEFAULT(UseCompressedClassPointers, false);
1540       }
1541     }
1542   }
1543 #endif // _LP64
1544 #endif // !ZERO
1545 }
1546 
1547 void Arguments::set_conservative_max_heap_alignment() {
1548   // The conservative maximum required alignment for the heap is the maximum of
1549   // the alignments imposed by several sources: any requirements from the heap
1550   // itself, the collector policy and the maximum page size we may run the VM
1551   // with.
1552   size_t heap_alignment = GenCollectedHeap::conservative_max_heap_alignment();
1553 #if INCLUDE_ALL_GCS
1554   if (UseParallelGC) {
1555     heap_alignment = ParallelScavengeHeap::conservative_max_heap_alignment();
1556   } else if (UseG1GC) {


< prev index next >