Mercurial > hg > truffle
comparison src/share/vm/runtime/arguments.cpp @ 20601:86307d477907 jdk8u40-b13
Merge
author | amurillo |
---|---|
date | Mon, 03 Nov 2014 18:18:28 -0800 |
parents | 9f35f614847d 327c00d0f091 |
children | fa6adc194d48 b1cf34d57e78 |
comparison
equal
deleted
inserted
replaced
20566:c1d0d673b1ba | 20601:86307d477907 |
---|---|
298 { "UsePermISM", JDK_Version::jdk(8), JDK_Version::jdk(9) }, | 298 { "UsePermISM", JDK_Version::jdk(8), JDK_Version::jdk(9) }, |
299 { "UseMPSS", JDK_Version::jdk(8), JDK_Version::jdk(9) }, | 299 { "UseMPSS", JDK_Version::jdk(8), JDK_Version::jdk(9) }, |
300 { "UseStringCache", JDK_Version::jdk(8), JDK_Version::jdk(9) }, | 300 { "UseStringCache", JDK_Version::jdk(8), JDK_Version::jdk(9) }, |
301 { "UseOldInlining", JDK_Version::jdk(9), JDK_Version::jdk(10) }, | 301 { "UseOldInlining", JDK_Version::jdk(9), JDK_Version::jdk(10) }, |
302 { "AutoShutdownNMT", JDK_Version::jdk(9), JDK_Version::jdk(10) }, | 302 { "AutoShutdownNMT", JDK_Version::jdk(9), JDK_Version::jdk(10) }, |
303 { "CompilationRepeat", JDK_Version::jdk(8), JDK_Version::jdk(9) }, | |
303 #ifdef PRODUCT | 304 #ifdef PRODUCT |
304 { "DesiredMethodLimit", | 305 { "DesiredMethodLimit", |
305 JDK_Version::jdk_update(7, 2), JDK_Version::jdk(8) }, | 306 JDK_Version::jdk_update(7, 2), JDK_Version::jdk(8) }, |
306 #endif // PRODUCT | 307 #endif // PRODUCT |
307 { NULL, JDK_Version(0), JDK_Version(0) } | 308 { NULL, JDK_Version(0), JDK_Version(0) } |
1142 Tier3InvokeNotifyFreqLog = 0; | 1143 Tier3InvokeNotifyFreqLog = 0; |
1143 Tier4InvocationThreshold = 0; | 1144 Tier4InvocationThreshold = 0; |
1144 } | 1145 } |
1145 } | 1146 } |
1146 | 1147 |
1148 /** | |
1149 * Returns the minimum number of compiler threads needed to run the JVM. The following | |
1150 * configurations are possible. | |
1151 * | |
1152 * 1) The JVM is build using an interpreter only. As a result, the minimum number of | |
1153 * compiler threads is 0. | |
1154 * 2) The JVM is build using the compiler(s) and tiered compilation is disabled. As | |
1155 * a result, either C1 or C2 is used, so the minimum number of compiler threads is 1. | |
1156 * 3) The JVM is build using the compiler(s) and tiered compilation is enabled. However, | |
1157 * the option "TieredStopAtLevel < CompLevel_full_optimization". As a result, only | |
1158 * C1 can be used, so the minimum number of compiler threads is 1. | |
1159 * 4) The JVM is build using the compilers and tiered compilation is enabled. The option | |
1160 * 'TieredStopAtLevel = CompLevel_full_optimization' (the default value). As a result, | |
1161 * the minimum number of compiler threads is 2. | |
1162 */ | |
1163 int Arguments::get_min_number_of_compiler_threads() { | |
1164 #if !defined(COMPILER1) && !defined(COMPILER2) && !defined(SHARK) | |
1165 return 0; // case 1 | |
1166 #else | |
1167 if (!TieredCompilation || (TieredStopAtLevel < CompLevel_full_optimization)) { | |
1168 return 1; // case 2 or case 3 | |
1169 } | |
1170 return 2; // case 4 (tiered) | |
1171 #endif | |
1172 } | |
1173 | |
1147 #if INCLUDE_ALL_GCS | 1174 #if INCLUDE_ALL_GCS |
1148 static void disable_adaptive_size_policy(const char* collector_name) { | 1175 static void disable_adaptive_size_policy(const char* collector_name) { |
1149 if (UseAdaptiveSizePolicy) { | 1176 if (UseAdaptiveSizePolicy) { |
1150 if (FLAG_IS_CMDLINE(UseAdaptiveSizePolicy)) { | 1177 if (FLAG_IS_CMDLINE(UseAdaptiveSizePolicy)) { |
1151 warning("disabling UseAdaptiveSizePolicy; it is incompatible with %s.", | 1178 warning("disabling UseAdaptiveSizePolicy; it is incompatible with %s.", |
2458 } | 2485 } |
2459 | 2486 |
2460 #ifdef COMPILER1 | 2487 #ifdef COMPILER1 |
2461 status &= verify_interval(SafepointPollOffset, 0, os::vm_page_size() - BytesPerWord, "SafepointPollOffset"); | 2488 status &= verify_interval(SafepointPollOffset, 0, os::vm_page_size() - BytesPerWord, "SafepointPollOffset"); |
2462 #endif | 2489 #endif |
2490 | |
2491 int min_number_of_compiler_threads = get_min_number_of_compiler_threads(); | |
2492 // The default CICompilerCount's value is CI_COMPILER_COUNT. | |
2493 assert(min_number_of_compiler_threads <= CI_COMPILER_COUNT, "minimum should be less or equal default number"); | |
2494 // Check the minimum number of compiler threads | |
2495 status &=verify_min_value(CICompilerCount, min_number_of_compiler_threads, "CICompilerCount"); | |
2463 | 2496 |
2464 return status; | 2497 return status; |
2465 } | 2498 } |
2466 | 2499 |
2467 bool Arguments::is_bad_option(const JavaVMOption* option, jboolean ignore, | 2500 bool Arguments::is_bad_option(const JavaVMOption* option, jboolean ignore, |
3615 // If flag "-XX:Flags=flags-file" is used it will be the first option to be processed. | 3648 // If flag "-XX:Flags=flags-file" is used it will be the first option to be processed. |
3616 const char* hotspotrc = ".hotspotrc"; | 3649 const char* hotspotrc = ".hotspotrc"; |
3617 bool settings_file_specified = false; | 3650 bool settings_file_specified = false; |
3618 bool needs_hotspotrc_warning = false; | 3651 bool needs_hotspotrc_warning = false; |
3619 | 3652 |
3653 ArgumentsExt::process_options(args); | |
3654 | |
3620 const char* flags_file; | 3655 const char* flags_file; |
3621 int index; | 3656 int index; |
3622 for (index = 0; index < args->nOptions; index++) { | 3657 for (index = 0; index < args->nOptions; index++) { |
3623 const JavaVMOption *option = args->options + index; | 3658 const JavaVMOption *option = args->options + index; |
3624 if (match_option(option, "-XX:Flags=", &tail)) { | 3659 if (match_option(option, "-XX:Flags=", &tail)) { |