Mercurial > hg > graal-jvmci-8
comparison src/share/vm/runtime/thread.cpp @ 12163:74608df95ba3
8022595: JSR292: deadlock during class loading of MethodHandles, MethodHandleImpl & MethodHandleNatives
Reviewed-by: kvn, coleenp, dholmes
author | vlivanov |
---|---|
date | Mon, 26 Aug 2013 17:41:05 +0400 |
parents | 02d7aa1456c9 |
children | 27ffd1c4537b |
comparison
equal
deleted
inserted
replaced
12162:e47de6dfec5d | 12163:74608df95ba3 |
---|---|
3634 // initialize compiler(s) | 3634 // initialize compiler(s) |
3635 #if defined(COMPILER1) || defined(COMPILER2) || defined(SHARK) | 3635 #if defined(COMPILER1) || defined(COMPILER2) || defined(SHARK) |
3636 CompileBroker::compilation_init(); | 3636 CompileBroker::compilation_init(); |
3637 #endif | 3637 #endif |
3638 | 3638 |
3639 if (EnableInvokeDynamic) { | |
3640 // Pre-initialize some JSR292 core classes to avoid deadlock during class loading. | |
3641 // It is done after compilers are initialized, because otherwise compilations of | |
3642 // signature polymorphic MH intrinsics can be missed | |
3643 // (see SystemDictionary::find_method_handle_intrinsic). | |
3644 initialize_class(vmSymbols::java_lang_invoke_MethodHandle(), CHECK_0); | |
3645 initialize_class(vmSymbols::java_lang_invoke_MemberName(), CHECK_0); | |
3646 initialize_class(vmSymbols::java_lang_invoke_MethodHandleNatives(), CHECK_0); | |
3647 } | |
3648 | |
3639 #if INCLUDE_MANAGEMENT | 3649 #if INCLUDE_MANAGEMENT |
3640 Management::initialize(THREAD); | 3650 Management::initialize(THREAD); |
3641 #endif // INCLUDE_MANAGEMENT | 3651 #endif // INCLUDE_MANAGEMENT |
3642 | 3652 |
3643 if (HAS_PENDING_EXCEPTION) { | 3653 if (HAS_PENDING_EXCEPTION) { |