提交 b1f4c8ba 编写于 作者: K kvn

6914622: Print values of all flags for product VM

Summary: Change the flag -XX:+PrintFlagsFinal to product and add new product flag -XX:+PrintFlagsInitial.
Reviewed-by: phh, ysr
Contributed-by: gbenson@redhat.com
上级 6d408d93
...@@ -2633,6 +2633,10 @@ jint Arguments::parse(const JavaVMInitArgs* args) { ...@@ -2633,6 +2633,10 @@ jint Arguments::parse(const JavaVMInitArgs* args) {
if (match_option(option, "-XX:-IgnoreUnrecognizedVMOptions", &tail)) { if (match_option(option, "-XX:-IgnoreUnrecognizedVMOptions", &tail)) {
IgnoreUnrecognizedVMOptions = false; IgnoreUnrecognizedVMOptions = false;
} }
if (match_option(option, "-XX:+PrintFlagsInitial", &tail)) {
CommandLineFlags::printFlags();
vm_exit(0);
}
} }
if (IgnoreUnrecognizedVMOptions) { if (IgnoreUnrecognizedVMOptions) {
...@@ -2795,11 +2799,9 @@ jint Arguments::parse(const JavaVMInitArgs* args) { ...@@ -2795,11 +2799,9 @@ jint Arguments::parse(const JavaVMInitArgs* args) {
CommandLineFlags::printSetFlags(); CommandLineFlags::printSetFlags();
} }
#ifdef ASSERT
if (PrintFlagsFinal) { if (PrintFlagsFinal) {
CommandLineFlags::printFlags(); CommandLineFlags::printFlags();
} }
#endif
return JNI_OK; return JNI_OK;
} }
......
...@@ -468,6 +468,8 @@ void CommandLineFlags::verify() { ...@@ -468,6 +468,8 @@ void CommandLineFlags::verify() {
assert(Arguments::check_vm_args_consistency(), "Some flag settings conflict"); assert(Arguments::check_vm_args_consistency(), "Some flag settings conflict");
} }
#endif // PRODUCT
void CommandLineFlags::printFlags() { void CommandLineFlags::printFlags() {
// Print the flags sorted by name // Print the flags sorted by name
// note: this method is called before the thread structure is in place // note: this method is called before the thread structure is in place
...@@ -493,5 +495,3 @@ void CommandLineFlags::printFlags() { ...@@ -493,5 +495,3 @@ void CommandLineFlags::printFlags() {
} }
FREE_C_HEAP_ARRAY(Flag*, array); FREE_C_HEAP_ARRAY(Flag*, array);
} }
#endif
...@@ -211,7 +211,7 @@ class CommandLineFlags { ...@@ -211,7 +211,7 @@ class CommandLineFlags {
static bool wasSetOnCmdline(const char* name, bool* value); static bool wasSetOnCmdline(const char* name, bool* value);
static void printSetFlags(); static void printSetFlags();
static void printFlags() PRODUCT_RETURN; static void printFlags();
static void verify() PRODUCT_RETURN; static void verify() PRODUCT_RETURN;
}; };
...@@ -327,9 +327,6 @@ class CommandLineFlags { ...@@ -327,9 +327,6 @@ class CommandLineFlags {
product(bool, UseMembar, false, \ product(bool, UseMembar, false, \
"(Unstable) Issues membars on thread state transitions") \ "(Unstable) Issues membars on thread state transitions") \
\ \
product(bool, PrintCommandLineFlags, false, \
"Prints flags that appeared on the command line") \
\
diagnostic(bool, UnlockDiagnosticVMOptions, trueInDebug, \ diagnostic(bool, UnlockDiagnosticVMOptions, trueInDebug, \
"Enable normal processing of flags relating to field diagnostics")\ "Enable normal processing of flags relating to field diagnostics")\
\ \
...@@ -1967,9 +1964,6 @@ class CommandLineFlags { ...@@ -1967,9 +1964,6 @@ class CommandLineFlags {
"number of times a GC thread (minus the coordinator) " \ "number of times a GC thread (minus the coordinator) " \
"will sleep while yielding before giving up and resuming GC") \ "will sleep while yielding before giving up and resuming GC") \
\ \
notproduct(bool, PrintFlagsFinal, false, \
"Print all command line flags after argument processing") \
\
/* gc tracing */ \ /* gc tracing */ \
manageable(bool, PrintGC, false, \ manageable(bool, PrintGC, false, \
"Print message at garbage collect") \ "Print message at garbage collect") \
...@@ -2269,11 +2263,20 @@ class CommandLineFlags { ...@@ -2269,11 +2263,20 @@ class CommandLineFlags {
"If false, restricts profiled locations to the root method only") \ "If false, restricts profiled locations to the root method only") \
\ \
product(bool, PrintVMOptions, trueInDebug, \ product(bool, PrintVMOptions, trueInDebug, \
"print VM flag settings") \ "Print flags that appeared on the command line") \
\ \
product(bool, IgnoreUnrecognizedVMOptions, false, \ product(bool, IgnoreUnrecognizedVMOptions, false, \
"Ignore unrecognized VM options") \ "Ignore unrecognized VM options") \
\ \
product(bool, PrintCommandLineFlags, false, \
"Print flags specified on command line or set by ergonomics") \
\
product(bool, PrintFlagsInitial, false, \
"Print all VM flags before argument processing and exit VM") \
\
product(bool, PrintFlagsFinal, false, \
"Print all VM flags after argument and ergonomic processing") \
\
diagnostic(bool, SerializeVMOutput, true, \ diagnostic(bool, SerializeVMOutput, true, \
"Use a mutex to serialize output to tty and hotspot.log") \ "Use a mutex to serialize output to tty and hotspot.log") \
\ \
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册