src/hotspot/share/jvmci/jvmciRuntime.cpp
changeset 57957 4364524f8cac
parent 57893 49fea19f0726
child 58015 dd84de796f2c
equal deleted inserted replaced
57956:e0b8b019d2f5 57957:4364524f8cac
  1308   if (compile_state != NULL && compile_state->jvmti_state_changed()) {
  1308   if (compile_state != NULL && compile_state->jvmti_state_changed()) {
  1309     *failure_detail = (char*) "Jvmti state change during compilation invalidated dependencies";
  1309     *failure_detail = (char*) "Jvmti state change during compilation invalidated dependencies";
  1310     return JVMCI::dependencies_failed;
  1310     return JVMCI::dependencies_failed;
  1311   }
  1311   }
  1312 
  1312 
  1313   // Dependencies must be checked when the system dictionary changes
       
  1314   // or if we don't know whether it has changed (i.e., compile_state == NULL).
       
  1315   CompileTask* task = compile_state == NULL ? NULL : compile_state->task();
  1313   CompileTask* task = compile_state == NULL ? NULL : compile_state->task();
  1316   Dependencies::DepType result = dependencies->validate_dependencies(task, failure_detail);
  1314   Dependencies::DepType result = dependencies->validate_dependencies(task, failure_detail);
  1317   if (result == Dependencies::end_marker) {
  1315   if (result == Dependencies::end_marker) {
  1318     return JVMCI::ok;
  1316     return JVMCI::ok;
  1319   }
  1317   }
  1320 
  1318 
  1321   if (!Dependencies::is_klass_type(result) || compile_state == NULL) {
  1319   return JVMCI::dependencies_failed;
  1322     return JVMCI::dependencies_failed;
       
  1323   }
       
  1324   // The dependencies were invalid at the time of installation
       
  1325   // without any intervening modification of the system
       
  1326   // dictionary.  That means they were invalidly constructed.
       
  1327   return JVMCI::dependencies_invalid;
       
  1328 }
  1320 }
  1329 
  1321 
  1330 // Reports a pending exception and exits the VM.
  1322 // Reports a pending exception and exits the VM.
  1331 static void fatal_exception_in_compile(JVMCIEnv* JVMCIENV, JavaThread* thread, const char* msg) {
  1323 static void fatal_exception_in_compile(JVMCIEnv* JVMCIENV, JavaThread* thread, const char* msg) {
  1332   // Only report a fatal JVMCI compilation exception once
  1324   // Only report a fatal JVMCI compilation exception once