8179026: Remove explicit code cache options processing
Summary: Removed explicit processing of code cache related options because generic processing already handles these.
Reviewed-by: kvn
--- a/src/hotspot/share/code/codeCache.cpp Mon Nov 27 10:51:31 2017 +0100
+++ b/src/hotspot/share/code/codeCache.cpp Mon Nov 27 11:39:21 2017 +0100
@@ -259,12 +259,12 @@
}
// We do not need the profiled CodeHeap, use all space for the non-profiled CodeHeap
- if(!heap_available(CodeBlobType::MethodProfiled)) {
+ if (!heap_available(CodeBlobType::MethodProfiled)) {
non_profiled_size += profiled_size;
profiled_size = 0;
}
// We do not need the non-profiled CodeHeap, use all space for the non-nmethod CodeHeap
- if(!heap_available(CodeBlobType::MethodNonProfiled)) {
+ if (!heap_available(CodeBlobType::MethodNonProfiled)) {
non_nmethod_size += non_profiled_size;
non_profiled_size = 0;
}
@@ -332,7 +332,8 @@
ReservedCodeSpace rs(r_size, rs_align, rs_align > 0);
if (!rs.is_reserved()) {
- vm_exit_during_initialization("Could not reserve enough space for code cache");
+ vm_exit_during_initialization(err_msg("Could not reserve enough space for code cache (" SIZE_FORMAT "K)",
+ r_size/K));
}
// Initialize bounds
@@ -415,7 +416,8 @@
size_t size_initial = MIN2(InitialCodeCacheSize, rs.size());
size_initial = align_up(size_initial, os::vm_page_size());
if (!heap->reserve(rs, size_initial, CodeCacheSegmentSize)) {
- vm_exit_during_initialization("Could not reserve enough space for code cache");
+ vm_exit_during_initialization(err_msg("Could not reserve enough space in %s (" SIZE_FORMAT "K)",
+ heap->name(), size_initial/K));
}
// Register the CodeHeap
--- a/src/hotspot/share/runtime/arguments.cpp Mon Nov 27 10:51:31 2017 +0100
+++ b/src/hotspot/share/runtime/arguments.cpp Mon Nov 27 11:39:21 2017 +0100
@@ -2152,12 +2152,7 @@
// Check lower bounds of the code cache
// Template Interpreter code is approximately 3X larger in debug builds.
uint min_code_cache_size = CodeCacheMinimumUseSpace DEBUG_ONLY(* 3);
- if (InitialCodeCacheSize < (uintx)os::vm_page_size()) {
- jio_fprintf(defaultStream::error_stream(),
- "Invalid InitialCodeCacheSize=%dK. Must be at least %dK.\n", InitialCodeCacheSize/K,
- os::vm_page_size()/K);
- status = false;
- } else if (ReservedCodeCacheSize < InitialCodeCacheSize) {
+ if (ReservedCodeCacheSize < InitialCodeCacheSize) {
jio_fprintf(defaultStream::error_stream(),
"Invalid ReservedCodeCacheSize: %dK. Must be at least InitialCodeCacheSize=%dK.\n",
ReservedCodeCacheSize/K, InitialCodeCacheSize/K);
@@ -2770,18 +2765,6 @@
if (FLAG_SET_CMDLINE(intx, ThreadStackSize, value) != Flag::SUCCESS) {
return JNI_EINVAL;
}
- } else if (match_option(option, "-XX:CodeCacheExpansionSize=", &tail)) {
- julong long_CodeCacheExpansionSize = 0;
- ArgsRange errcode = parse_memory_size(tail, &long_CodeCacheExpansionSize, os::vm_page_size());
- if (errcode != arg_in_range) {
- jio_fprintf(defaultStream::error_stream(),
- "Invalid argument: %s. Must be at least %luK.\n", option->optionString,
- os::vm_page_size()/K);
- return JNI_EINVAL;
- }
- if (FLAG_SET_CMDLINE(uintx, CodeCacheExpansionSize, (uintx)long_CodeCacheExpansionSize) != Flag::SUCCESS) {
- return JNI_EINVAL;
- }
} else if (match_option(option, "-Xmaxjitcodesize", &tail) ||
match_option(option, "-XX:ReservedCodeCacheSize=", &tail)) {
julong long_ReservedCodeCacheSize = 0;
@@ -2795,45 +2778,6 @@
if (FLAG_SET_CMDLINE(uintx, ReservedCodeCacheSize, (uintx)long_ReservedCodeCacheSize) != Flag::SUCCESS) {
return JNI_EINVAL;
}
- // -XX:NonNMethodCodeHeapSize=
- } else if (match_option(option, "-XX:NonNMethodCodeHeapSize=", &tail)) {
- julong long_NonNMethodCodeHeapSize = 0;
-
- ArgsRange errcode = parse_memory_size(tail, &long_NonNMethodCodeHeapSize, 1);
- if (errcode != arg_in_range) {
- jio_fprintf(defaultStream::error_stream(),
- "Invalid maximum non-nmethod code heap size: %s.\n", option->optionString);
- return JNI_EINVAL;
- }
- if (FLAG_SET_CMDLINE(uintx, NonNMethodCodeHeapSize, (uintx)long_NonNMethodCodeHeapSize) != Flag::SUCCESS) {
- return JNI_EINVAL;
- }
- // -XX:ProfiledCodeHeapSize=
- } else if (match_option(option, "-XX:ProfiledCodeHeapSize=", &tail)) {
- julong long_ProfiledCodeHeapSize = 0;
-
- ArgsRange errcode = parse_memory_size(tail, &long_ProfiledCodeHeapSize, 1);
- if (errcode != arg_in_range) {
- jio_fprintf(defaultStream::error_stream(),
- "Invalid maximum profiled code heap size: %s.\n", option->optionString);
- return JNI_EINVAL;
- }
- if (FLAG_SET_CMDLINE(uintx, ProfiledCodeHeapSize, (uintx)long_ProfiledCodeHeapSize) != Flag::SUCCESS) {
- return JNI_EINVAL;
- }
- // -XX:NonProfiledCodeHeapSizee=
- } else if (match_option(option, "-XX:NonProfiledCodeHeapSize=", &tail)) {
- julong long_NonProfiledCodeHeapSize = 0;
-
- ArgsRange errcode = parse_memory_size(tail, &long_NonProfiledCodeHeapSize, 1);
- if (errcode != arg_in_range) {
- jio_fprintf(defaultStream::error_stream(),
- "Invalid maximum non-profiled code heap size: %s.\n", option->optionString);
- return JNI_EINVAL;
- }
- if (FLAG_SET_CMDLINE(uintx, NonProfiledCodeHeapSize, (uintx)long_NonProfiledCodeHeapSize) != Flag::SUCCESS) {
- return JNI_EINVAL;
- }
// -green
} else if (match_option(option, "-green")) {
jio_fprintf(defaultStream::error_stream(),
--- a/src/hotspot/share/runtime/globals.hpp Mon Nov 27 10:51:31 2017 +0100
+++ b/src/hotspot/share/runtime/globals.hpp Mon Nov 27 11:39:21 2017 +0100
@@ -3365,7 +3365,7 @@
\
product_pd(uintx, InitialCodeCacheSize, \
"Initial code cache size (in bytes)") \
- range(0, max_uintx) \
+ range(os::vm_page_size(), max_uintx) \
\
develop_pd(uintx, CodeCacheMinimumUseSpace, \
"Minimum code cache size (in bytes) required to start VM.") \
@@ -3376,7 +3376,7 @@
\
product_pd(uintx, ReservedCodeCacheSize, \
"Reserved code cache size (in bytes) - maximum code cache size") \
- range(0, max_uintx) \
+ range(os::vm_page_size(), max_uintx) \
\
product_pd(uintx, NonProfiledCodeHeapSize, \
"Size of code heap with non-profiled methods (in bytes)") \
@@ -3388,11 +3388,11 @@
\
product_pd(uintx, NonNMethodCodeHeapSize, \
"Size of code heap with non-nmethods (in bytes)") \
- range(0, max_uintx) \
+ range(os::vm_page_size(), max_uintx) \
\
product_pd(uintx, CodeCacheExpansionSize, \
"Code cache expansion size (in bytes)") \
- range(0, max_uintx) \
+ range(os::vm_page_size(), max_uintx) \
\
diagnostic_pd(uintx, CodeCacheMinBlockLength, \
"Minimum number of segments in a code cache block") \