153 // Interning
154 static oop intern(Symbol* symbol, TRAPS);
155 static oop intern(oop string, TRAPS);
156 static oop intern(const char *utf8_string, TRAPS);
157
158 // Rehash the string table if it gets out of balance
159 static void rehash_table();
160 static bool needs_rehashing()
161 { return StringTable::the_table()->_needs_rehashing; }
162
163 // Sharing
164 private:
165 oop lookup_shared(const jchar* name, int len, unsigned int hash) NOT_CDS_JAVA_HEAP_RETURN_(NULL);
166 static void copy_shared_string_table(CompactHashtableWriter* ch_table) NOT_CDS_JAVA_HEAP_RETURN;
167 public:
168 static oop create_archived_string(oop s, Thread* THREAD) NOT_CDS_JAVA_HEAP_RETURN_(NULL);
169 static void set_shared_string_mapped() { _shared_string_mapped = true; }
170 static bool shared_string_mapped() { return _shared_string_mapped; }
171 static void shared_oops_do(OopClosure* f) NOT_CDS_JAVA_HEAP_RETURN;
172 static void write_to_archive() NOT_CDS_JAVA_HEAP_RETURN;
173 static void serialize(SerializeClosure* soc) NOT_CDS_JAVA_HEAP_RETURN;
174
175 // Jcmd
176 static void dump(outputStream* st, bool verbose=false);
177 // Debugging
178 static size_t verify_and_compare_entries();
179 static void verify();
180 };
181
182 #endif // SHARE_VM_CLASSFILE_STRINGTABLE_HPP
|
153 // Interning
154 static oop intern(Symbol* symbol, TRAPS);
155 static oop intern(oop string, TRAPS);
156 static oop intern(const char *utf8_string, TRAPS);
157
158 // Rehash the string table if it gets out of balance
159 static void rehash_table();
160 static bool needs_rehashing()
161 { return StringTable::the_table()->_needs_rehashing; }
162
163 // Sharing
164 private:
165 oop lookup_shared(const jchar* name, int len, unsigned int hash) NOT_CDS_JAVA_HEAP_RETURN_(NULL);
166 static void copy_shared_string_table(CompactHashtableWriter* ch_table) NOT_CDS_JAVA_HEAP_RETURN;
167 public:
168 static oop create_archived_string(oop s, Thread* THREAD) NOT_CDS_JAVA_HEAP_RETURN_(NULL);
169 static void set_shared_string_mapped() { _shared_string_mapped = true; }
170 static bool shared_string_mapped() { return _shared_string_mapped; }
171 static void shared_oops_do(OopClosure* f) NOT_CDS_JAVA_HEAP_RETURN;
172 static void write_to_archive() NOT_CDS_JAVA_HEAP_RETURN;
173 static void serialize_shared_table_header(SerializeClosure* soc) NOT_CDS_JAVA_HEAP_RETURN;
174
175 // Jcmd
176 static void dump(outputStream* st, bool verbose=false);
177 // Debugging
178 static size_t verify_and_compare_entries();
179 static void verify();
180 };
181
182 #endif // SHARE_VM_CLASSFILE_STRINGTABLE_HPP
|