diff src/share/vm/classfile/symbolTable.hpp @ 3602:da91efe96a93

6964458: Reimplement class meta-data storage to use native memory Summary: Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland Contributed-by: jmasa <jon.masamitsu@oracle.com>, stefank <stefan.karlsson@oracle.com>, mgerdin <mikael.gerdin@oracle.com>, never <tom.rodriguez@oracle.com>
author coleenp
date Sat, 01 Sep 2012 13:25:18 -0400
parents 1d7922586cf6
children e4f764ddb06a
line wrap: on
line diff
--- a/src/share/vm/classfile/symbolTable.hpp	Fri Aug 31 16:39:35 2012 -0700
+++ b/src/share/vm/classfile/symbolTable.hpp	Sat Sep 01 13:25:18 2012 -0400
@@ -94,17 +94,17 @@
   // Adding elements
   Symbol* basic_add(int index, u1* name, int len, unsigned int hashValue,
                     bool c_heap, TRAPS);
-
-  bool basic_add(Handle class_loader, constantPoolHandle cp, int names_count,
+  bool basic_add(ClassLoaderData* loader_data,
+                 constantPoolHandle cp, int names_count,
                  const char** names, int* lengths, int* cp_indices,
                  unsigned int* hashValues, TRAPS);
 
-  static void new_symbols(Handle class_loader, constantPoolHandle cp,
-                          int names_count,
+  static void new_symbols(ClassLoaderData* loader_data,
+                          constantPoolHandle cp, int names_count,
                           const char** name, int* lengths,
                           int* cp_indices, unsigned int* hashValues,
                           TRAPS) {
-    add(class_loader, cp, names_count, name, lengths, cp_indices, hashValues, THREAD);
+    add(loader_data, cp, names_count, name, lengths, cp_indices, hashValues, THREAD);
   }
 
   // Table size
@@ -170,7 +170,8 @@
   static Symbol* lookup_unicode(const jchar* name, int len, TRAPS);
   static Symbol* lookup_only_unicode(const jchar* name, int len, unsigned int& hash);
 
-  static void add(Handle class_loader, constantPoolHandle cp, int names_count,
+  static void add(ClassLoaderData* loader_data,
+                  constantPoolHandle cp, int names_count,
                   const char** names, int* lengths, int* cp_indices,
                   unsigned int* hashValues, TRAPS);