diff src/share/vm/runtime/vmStructs.hpp @ 23679:b5557b757040

fix HotSpotVMConfig startup performance (JDK-8159167)
author Doug Simon <doug.simon@oracle.com>
date Wed, 15 Jun 2016 00:00:41 +0200
parents 1bbd4a7c274b
children
line wrap: on
line diff
--- a/src/share/vm/runtime/vmStructs.hpp	Fri Jun 10 14:04:40 2016 +0200
+++ b/src/share/vm/runtime/vmStructs.hpp	Wed Jun 15 00:00:41 2016 +0200
@@ -95,6 +95,11 @@
   uint64_t value;                  // Value of constant
 } VMLongConstantEntry;
 
+typedef struct {
+  const char* name;                // Name of address (example: "SharedRuntime::register_finalizer")
+  void* value;                     // Value of address
+} VMAddressEntry;
+
 // This class is a friend of most classes, to be able to access
 // private fields
 class VMStructs {
@@ -117,6 +122,11 @@
   // the fact that it has a NULL typeName
   static VMLongConstantEntry localHotSpotVMLongConstants[];
 
+  /**
+   * Table of addresses.
+   */
+  static VMAddressEntry localHotSpotVMAddresses[];
+
   // This is used to run any checking code necessary for validation of
   // the data structure (debug build only)
   static void init();
@@ -127,9 +137,11 @@
 #endif
 
 #if INCLUDE_JVMCI
-  // The definition of this method is generated by
-  // jdk.vm.ci.hotspotvmconfig.HotSpotVMConfigProcessor.
-static void initHotSpotVMConfig(oop config);
+  static int localHotSpotVMStructs_count();
+  static int localHotSpotVMTypes_count();
+  static int localHotSpotVMIntConstants_count();
+  static int localHotSpotVMLongConstants_count();
+  static int localHotSpotVMAddresses_count();
 #endif
 
 private: