Mercurial > hg > truffle
comparison src/share/vm/runtime/arguments.cpp @ 21819:b1cf34d57e78
Merge
author | asaha |
---|---|
date | Thu, 06 Nov 2014 09:39:49 -0800 |
parents | 12478c5eb000 86307d477907 |
children | f3ffb37f88a6 |
comparison
equal
deleted
inserted
replaced
21818:5ca2ea5eeff0 | 21819:b1cf34d57e78 |
---|---|
64 #include "gc_implementation/g1/g1CollectedHeap.inline.hpp" | 64 #include "gc_implementation/g1/g1CollectedHeap.inline.hpp" |
65 #include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp" | 65 #include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp" |
66 #endif // INCLUDE_ALL_GCS | 66 #endif // INCLUDE_ALL_GCS |
67 | 67 |
68 // Note: This is a special bug reporting site for the JVM | 68 // Note: This is a special bug reporting site for the JVM |
69 #define DEFAULT_VENDOR_URL_BUG "http://bugreport.sun.com/bugreport/crash.jsp" | 69 #define DEFAULT_VENDOR_URL_BUG "http://bugreport.java.com/bugreport/crash.jsp" |
70 #define DEFAULT_JAVA_LAUNCHER "generic" | 70 #define DEFAULT_JAVA_LAUNCHER "generic" |
71 | 71 |
72 // Disable options not supported in this release, with a warning if they | 72 // Disable options not supported in this release, with a warning if they |
73 // were explicitly requested on the command-line | 73 // were explicitly requested on the command-line |
74 #define UNSUPPORTED_OPTION(opt, description) \ | 74 #define UNSUPPORTED_OPTION(opt, description) \ |
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)) { |