8047934: Adding new API for unlocking diagnostic argument.
Summary: New API for unlocking diagnostic argument.
Reviewed-by: dholmes, ccheung, egahlin, iklam, bdelsart
--- a/hotspot/src/share/vm/runtime/arguments.cpp Thu Oct 09 04:45:58 2014 -0700
+++ b/hotspot/src/share/vm/runtime/arguments.cpp Tue Oct 14 12:09:33 2014 -0400
@@ -3739,6 +3739,8 @@
bool settings_file_specified = false;
bool needs_hotspotrc_warning = false;
+ ArgumentsExt::process_options(args);
+
const char* flags_file;
int index;
for (index = 0; index < args->nOptions; index++) {
--- a/hotspot/src/share/vm/runtime/arguments_ext.hpp Thu Oct 09 04:45:58 2014 -0700
+++ b/hotspot/src/share/vm/runtime/arguments_ext.hpp Tue Oct 14 12:09:33 2014 -0400
@@ -34,6 +34,7 @@
static inline bool check_gc_consistency_user();
static inline bool check_gc_consistency_ergo();
static inline bool check_vm_args_consistency();
+ static void process_options(const JavaVMInitArgs* args) {}
};
void ArgumentsExt::select_gc_ergonomically() {
--- a/hotspot/src/share/vm/runtime/globals.cpp Thu Oct 09 04:45:58 2014 -0700
+++ b/hotspot/src/share/vm/runtime/globals.cpp Tue Oct 14 12:09:33 2014 -0400
@@ -256,6 +256,11 @@
return is_unlocked_ext();
}
+void Flag::unlock_diagnostic() {
+ assert(is_diagnostic(), "sanity");
+ _flags = Flags(_flags & ~KIND_DIAGNOSTIC);
+}
+
// Get custom message for this locked flag, or return NULL if
// none is available.
void Flag::get_locked_message(char* buf, int buflen) const {
--- a/hotspot/src/share/vm/runtime/globals.hpp Thu Oct 09 04:45:58 2014 -0700
+++ b/hotspot/src/share/vm/runtime/globals.hpp Tue Oct 14 12:09:33 2014 -0400
@@ -320,6 +320,8 @@
bool is_writeable_ext() const;
bool is_external_ext() const;
+ void unlock_diagnostic();
+
void get_locked_message(char*, int) const;
void get_locked_message_ext(char*, int) const;