< prev index next >

src/share/vm/runtime/arguments.cpp

Print this page

        

*** 1520,1529 **** --- 1520,1543 ---- if (FLAG_IS_DEFAULT(UseCompressedClassPointers)) { FLAG_SET_ERGO(bool, UseCompressedClassPointers, true); } // Check the CompressedClassSpaceSize to make sure we use compressed klass ptrs. if (UseCompressedClassPointers) { + size_t min_metaspace_sz = InitialBootClassLoaderMetaspaceSize + + (64 * K * HeapWordSize); // MediumChunk in bytes. + + if ((min_metaspace_sz + CompressedClassSpaceSize) > MaxMetaspaceSize) { + if (min_metaspace_sz >= MaxMetaspaceSize) { + vm_exit_during_initialization( + "InitialBootClassLoaderMetaspaceSize should be " + "less than MaxMetaspaceSize."); + } else { + FLAG_SET_ERGO(size_t, CompressedClassSpaceSize, + MaxMetaspaceSize - min_metaspace_sz); + } + } + if (CompressedClassSpaceSize > KlassEncodingMetaspaceMax) { warning("CompressedClassSpaceSize is too large for UseCompressedClassPointers"); FLAG_SET_DEFAULT(UseCompressedClassPointers, false); } }
< prev index next >