Mercurial > hg > graal-jvmci-8
diff src/share/vm/runtime/thread.cpp @ 12173:27ffd1c4537b
Merge
author | rbackman |
---|---|
date | Mon, 02 Sep 2013 13:13:45 +0200 |
parents | f92b82d454fa 74608df95ba3 |
children | b89a1a870965 8e94527f601e 40136aa2cdb1 |
line wrap: on
line diff
--- a/src/share/vm/runtime/thread.cpp Fri Aug 30 00:29:52 2013 -0700 +++ b/src/share/vm/runtime/thread.cpp Mon Sep 02 13:13:45 2013 +0200 @@ -3636,6 +3636,16 @@ CompileBroker::compilation_init(); #endif + if (EnableInvokeDynamic) { + // Pre-initialize some JSR292 core classes to avoid deadlock during class loading. + // It is done after compilers are initialized, because otherwise compilations of + // signature polymorphic MH intrinsics can be missed + // (see SystemDictionary::find_method_handle_intrinsic). + initialize_class(vmSymbols::java_lang_invoke_MethodHandle(), CHECK_0); + initialize_class(vmSymbols::java_lang_invoke_MemberName(), CHECK_0); + initialize_class(vmSymbols::java_lang_invoke_MethodHandleNatives(), CHECK_0); + } + #if INCLUDE_MANAGEMENT Management::initialize(THREAD); #endif // INCLUDE_MANAGEMENT