The distinction in both validate_compile_task_dependencies functions between "dependencies failed" and "dependencies invalid" is even more fuzzy after the change for JDK-8222446.
1324 // Dependencies must be checked when the system dictionary changes
1325 // or if we don't know whether it has changed (i.e., compile_state == NULL).
1326 CompileTask* task = compile_state == NULL ? NULL : compile_state->task();
1327 Dependencies::DepType result = dependencies->validate_dependencies(task, failure_detail);
1328 if (result == Dependencies::end_marker) {
1329 return JVMCI::ok;
1330 }
1331
1332 if (!Dependencies::is_klass_type(result) || compile_state == NULL) {
1333 return JVMCI::dependencies_failed;
1334 }
1335 // The dependencies were invalid at the time of installation
1336 // without any intervening modification of the system
1337 // dictionary. That means they were invalidly constructed.
1338 return JVMCI::dependencies_invalid;
1339 }
1324 // Dependencies must be checked when the system dictionary changes
1325 // or if we don't know whether it has changed (i.e., compile_state == NULL).
1326 CompileTask* task = compile_state == NULL ? NULL : compile_state->task();
1327 Dependencies::DepType result = dependencies->validate_dependencies(task, failure_detail);
1328 if (result == Dependencies::end_marker) {
1329 return JVMCI::ok;
1330 }
1331
1332 if (!Dependencies::is_klass_type(result) || compile_state == NULL) {
1333 return JVMCI::dependencies_failed;
1334 }
1335 // The dependencies were invalid at the time of installation
1336 // without any intervening modification of the system
1337 // dictionary. That means they were invalidly constructed.
1338 return JVMCI::dependencies_invalid;
1339 }
- duplicates
-
JDK-8229797 [JVMCI] Clean up no longer used JVMCI::dependencies_invalid value
-
- Resolved
-
- relates to
-
JDK-8222446 assert(C->env()->system_dictionary_modification_counter_changed()) failed: Must invalidate if TypeFuncs differ
-
- Resolved
-