8293816: CI: ciBytecodeStream::get_klass() is not consistent

Backport-of: 746f5f589db5c1036f15fa47f8a48b2a12c921ce
This commit is contained in:
Yuri Nesterenko 2022-11-03 14:01:41 +00:00
parent 6790a0655a
commit 74ce11f933
3 changed files with 4 additions and 9 deletions

View File

@ -328,7 +328,7 @@ void ciInstanceKlass::print_impl(outputStream* st) {
ciKlass::print_impl(st);
GUARDED_VM_ENTRY(st->print(" loader=" INTPTR_FORMAT, p2i(loader()));)
if (is_loaded()) {
st->print(" loaded=true initialized=%s finalized=%s subklass=%s size=%d flags=",
st->print(" initialized=%s finalized=%s subklass=%s size=%d flags=",
bool_to_str(is_initialized()),
bool_to_str(has_finalizer()),
bool_to_str(has_subklass()),
@ -343,8 +343,6 @@ void ciInstanceKlass::print_impl(outputStream* st) {
if (_java_mirror) {
st->print(" mirror=PRESENT");
}
} else {
st->print(" loaded=false");
}
}

View File

@ -223,6 +223,7 @@ jint ciKlass::access_flags() {
void ciKlass::print_impl(outputStream* st) {
st->print(" name=");
print_name_on(st);
st->print(" loaded=%s", (is_loaded() ? "true" : "false"));
}
// ------------------------------------------------------------------

View File

@ -200,12 +200,8 @@ ciKlass* ciBytecodeStream::get_klass() {
bool will_link;
ciKlass* klass = get_klass(will_link);
if (!will_link && klass->is_loaded()) { // klass not accessible
if (klass->is_array_klass()) {
assert(!klass->is_type_array_klass(), "");
klass = ciEnv::unloaded_ciobjarrayklass();
} else {
klass = ciEnv::unloaded_ciinstance_klass();
}
VM_ENTRY_MARK;
klass = CURRENT_ENV->get_unloaded_klass(_holder, klass->name());
}
return klass;
}