< prev index next >
src/share/vm/prims/jni.cpp
Print this page
@@ -79,10 +79,14 @@
#include "utilities/histogram.hpp"
#include "utilities/macros.hpp"
#if INCLUDE_ALL_GCS
#include "gc/g1/g1SATBCardTableModRefBS.hpp"
#endif // INCLUDE_ALL_GCS
+#if INCLUDE_JVMCI
+#include "jvmci/jvmciCompiler.hpp"
+#include "jvmci/jvmciRuntime.hpp"
+#endif
static jint CurrentVersion = JNI_VERSION_1_8;
#ifdef _WIN32
extern LONG WINAPI topLevelExceptionFilter(_EXCEPTION_POINTERS* );
@@ -3984,10 +3988,23 @@
assert(!thread->has_pending_exception(), "should have returned not OK");
/* thread is thread_in_vm here */
*vm = (JavaVM *)(&main_vm);
*(JNIEnv**)penv = thread->jni_environment();
+#if INCLUDE_JVMCI
+ if (EnableJVMCI) {
+ if (UseJVMCICompiler) {
+ // JVMCI is initialized on a CompilerThread
+ if (BootstrapJVMCI) {
+ JavaThread* THREAD = thread;
+ JVMCICompiler* compiler = JVMCICompiler::instance(CATCH);
+ compiler->bootstrap();
+ }
+ }
+ }
+#endif
+
// Tracks the time application was running before GC
RuntimeService::record_application_start();
// Notify JVMTI
if (JvmtiExport::should_post_thread_life()) {
< prev index next >