hotspot/src/share/vm/classfile/symbolTable.cpp
changeset 31790 4a08476437e8
parent 31345 1bba15125d8d
child 33148 68fa8b6c4340
equal deleted inserted replaced
31788:04af91b7fadd 31790:4a08476437e8
    56 
    56 
    57   Symbol* sym;
    57   Symbol* sym;
    58 
    58 
    59   if (DumpSharedSpaces) {
    59   if (DumpSharedSpaces) {
    60     // Allocate all symbols to CLD shared metaspace
    60     // Allocate all symbols to CLD shared metaspace
    61     sym = new (len, ClassLoaderData::the_null_class_loader_data(), THREAD) Symbol(name, len, -1);
    61     sym = new (len, ClassLoaderData::the_null_class_loader_data(), THREAD) Symbol(name, len, PERM_REFCOUNT);
    62   } else if (c_heap) {
    62   } else if (c_heap) {
    63     // refcount starts as 1
    63     // refcount starts as 1
    64     sym = new (len, THREAD) Symbol(name, len, 1);
    64     sym = new (len, THREAD) Symbol(name, len, 1);
    65     assert(sym != NULL, "new should call vm_exit_out_of_memory if C_HEAP is exhausted");
    65     assert(sym != NULL, "new should call vm_exit_out_of_memory if C_HEAP is exhausted");
    66   } else {
    66   } else {
    67     // Allocate to global arena
    67     // Allocate to global arena
    68     sym = new (len, arena(), THREAD) Symbol(name, len, -1);
    68     sym = new (len, arena(), THREAD) Symbol(name, len, PERM_REFCOUNT);
    69   }
    69   }
    70   return sym;
    70   return sym;
    71 }
    71 }
    72 
    72 
    73 void SymbolTable::initialize_symbols(int arena_alloc_size) {
    73 void SymbolTable::initialize_symbols(int arena_alloc_size) {