mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-25 13:54:38 +02:00
6990754: Use native memory and reference counting to implement SymbolTable
Move symbols from permgen into C heap and reference count them Reviewed-by: never, acorn, jmasa, stefank
This commit is contained in:
parent
950858350d
commit
7b4f8073f0
223 changed files with 3783 additions and 3641 deletions
|
@ -66,9 +66,9 @@ HS_DTRACE_PROBE_DECL9(hotspot, method__compile__end,
|
|||
#define DTRACE_METHOD_COMPILE_BEGIN_PROBE(compiler, method) \
|
||||
{ \
|
||||
char* comp_name = (char*)(compiler)->name(); \
|
||||
symbolOop klass_name = (method)->klass_name(); \
|
||||
symbolOop name = (method)->name(); \
|
||||
symbolOop signature = (method)->signature(); \
|
||||
Symbol* klass_name = (method)->klass_name(); \
|
||||
Symbol* name = (method)->name(); \
|
||||
Symbol* signature = (method)->signature(); \
|
||||
HS_DTRACE_PROBE8(hotspot, method__compile__begin, \
|
||||
comp_name, strlen(comp_name), \
|
||||
klass_name->bytes(), klass_name->utf8_length(), \
|
||||
|
@ -79,9 +79,9 @@ HS_DTRACE_PROBE_DECL9(hotspot, method__compile__end,
|
|||
#define DTRACE_METHOD_COMPILE_END_PROBE(compiler, method, success) \
|
||||
{ \
|
||||
char* comp_name = (char*)(compiler)->name(); \
|
||||
symbolOop klass_name = (method)->klass_name(); \
|
||||
symbolOop name = (method)->name(); \
|
||||
symbolOop signature = (method)->signature(); \
|
||||
Symbol* klass_name = (method)->klass_name(); \
|
||||
Symbol* name = (method)->name(); \
|
||||
Symbol* signature = (method)->signature(); \
|
||||
HS_DTRACE_PROBE9(hotspot, method__compile__end, \
|
||||
comp_name, strlen(comp_name), \
|
||||
klass_name->bytes(), klass_name->utf8_length(), \
|
||||
|
@ -689,7 +689,7 @@ CompilerThread* CompileBroker::make_compiler_thread(const char* name, CompileQue
|
|||
CompilerThread* compiler_thread = NULL;
|
||||
|
||||
klassOop k =
|
||||
SystemDictionary::resolve_or_fail(vmSymbolHandles::java_lang_Thread(),
|
||||
SystemDictionary::resolve_or_fail(vmSymbols::java_lang_Thread(),
|
||||
true, CHECK_0);
|
||||
instanceKlassHandle klass (THREAD, k);
|
||||
instanceHandle thread_oop = klass->allocate_instance_handle(CHECK_0);
|
||||
|
@ -700,8 +700,8 @@ CompilerThread* CompileBroker::make_compiler_thread(const char* name, CompileQue
|
|||
JavaValue result(T_VOID);
|
||||
JavaCalls::call_special(&result, thread_oop,
|
||||
klass,
|
||||
vmSymbolHandles::object_initializer_name(),
|
||||
vmSymbolHandles::threadgroup_string_void_signature(),
|
||||
vmSymbols::object_initializer_name(),
|
||||
vmSymbols::threadgroup_string_void_signature(),
|
||||
thread_group,
|
||||
string,
|
||||
CHECK_0);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue