8047934: Adding new API for unlocking diagnostic argument.
authorjiangli
Tue, 14 Oct 2014 12:09:33 -0400
changeset 27166 4ce0d93a8287
parent 27157 364276bc8d8b
child 27167 afe837aafc0c
8047934: Adding new API for unlocking diagnostic argument. Summary: New API for unlocking diagnostic argument. Reviewed-by: dholmes, ccheung, egahlin, iklam, bdelsart
hotspot/src/share/vm/runtime/arguments.cpp
hotspot/src/share/vm/runtime/arguments_ext.hpp
hotspot/src/share/vm/runtime/globals.cpp
hotspot/src/share/vm/runtime/globals.hpp
--- 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;