Beispiel #1
0
// Initialization
void GraalCompiler::initialize() {
#ifdef COMPILERGRAAL
  if (!UseCompiler || !should_perform_init()) {
    return;
  }

  BufferBlob* buffer_blob = GraalRuntime::initialize_buffer_blob();
  if (buffer_blob == NULL) {
    set_state(failed);
  } else {
    set_state(initialized);
  }

  {
    HandleMark hm;

    // Graal is considered as application code so we need to
    // stop the VM deferring compilation now.
    CompilationPolicy::completed_vm_startup();

#ifndef PRODUCT
    if (CompileTheWorld) {
      compile_the_world();
    }
#endif
  }
#endif // COMPILERGRAAL
}
// Initialization
void JVMCICompiler::initialize() {
  if (!UseCompiler || !EnableJVMCI || !UseJVMCICompiler || !should_perform_init()) {
    return;
  }

  set_state(initialized);

  // JVMCI is considered as application code so we need to
  // stop the VM deferring compilation now.
  CompilationPolicy::completed_vm_startup();
}
Beispiel #3
0
void Compiler::initialize() {
  // Buffer blob must be allocated per C1 compiler thread at startup
  BufferBlob* buffer_blob = init_buffer_blob();

  if (should_perform_init()) {
    if (buffer_blob == NULL) {
      // When we come here we are in state 'initializing'; entire C1 compilation
      // can be shut down.
      set_state(failed);
    } else {
      init_c1_runtime();
      set_state(initialized);
    }
  }
}