6914622: Print values of all flags for product VM
Change the flag -XX:+PrintFlagsFinal to product and add new product flag -XX:+PrintFlagsInitial. Reviewed-by: phh, ysr
This commit is contained in:
parent
5bec0d60ab
commit
5d66f5aca8
@ -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) {
|
|||||||
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() {
|
|||||||
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() {
|
|||||||
}
|
}
|
||||||
FREE_C_HEAP_ARRAY(Flag*, array);
|
FREE_C_HEAP_ARRAY(Flag*, array);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
|
||||||
|
@ -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 {
|
|||||||
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 {
|
|||||||
"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 {
|
|||||||
"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") \
|
||||||
\
|
\
|
||||||
|
Loading…
x
Reference in New Issue
Block a user