ciKlass* ciBytecodeStream::get_klass() const { bool will_link; ciKlass* k = CURRENT_ENV->get_klass_by_index(method()->holder(), get_klass_index(), will_link); if (!will_link && k->is_loaded()) { GUARDED_VM_ENTRY( k = CURRENT_ENV->get_unloaded_klass(method()->holder(), k->name()); ) }
// ------------------------------------------------------------------ // ciBytecodeStream::get_klass // // If this bytecode is a new, newarray, multianewarray, instanceof, // or checkcast, get the referenced klass. ciKlass* ciBytecodeStream::get_klass(bool& will_link) { VM_ENTRY_MARK; constantPoolHandle cpool(_method->get_methodOop()->constants()); return CURRENT_ENV->get_klass_by_index(cpool, get_klass_index(), will_link, _holder); }
// True if the klass-using bytecode points to an unresolved klass bool is_unresolved_klass() const { constantTag tag = get_constant_pool_tag(get_klass_index()); return tag.is_unresolved_klass(); }