8301992: Embed SymbolTable CHT node

Co-authored-by: Robbin Ehn <rehn@openjdk.org>
Reviewed-by: coleenp, iklam
This commit is contained in:
Calvin Cheung 2023-02-17 19:51:12 +00:00
parent 03d613bbab
commit 86b9fce980
4 changed files with 114 additions and 132 deletions

View file

@ -59,7 +59,6 @@ class SymbolTable : public AllStatic {
// Set if one bucket is out of balance due to hash algorithm deficiency
static volatile bool _needs_rehashing;
static void delete_symbol(Symbol* sym);
static void grow(JavaThread* jt);
static void clean_dead_entries(JavaThread* jt);
@ -75,9 +74,8 @@ class SymbolTable : public AllStatic {
static void mark_has_items_to_clean();
static bool has_items_to_clean();
static Symbol* allocate_symbol(const char* name, int len, bool c_heap); // Assumes no characters larger than 0x7F
static Symbol* do_lookup(const char* name, int len, uintx hash);
static Symbol* do_add_if_needed(const char* name, int len, uintx hash, bool heap);
static Symbol* do_add_if_needed(const char* name, int len, uintx hash, bool is_permanent);
// lookup only, won't add. Also calculate hash. Used by the ClassfileParser.
static Symbol* lookup_only(const char* name, int len, unsigned int& hash);