478 C2V_END |
478 C2V_END |
479 |
479 |
480 C2V_VMENTRY(jobject, resolveTypeInPool, (JNIEnv*, jobject, jobject jvmci_constant_pool, jint index)) |
480 C2V_VMENTRY(jobject, resolveTypeInPool, (JNIEnv*, jobject, jobject jvmci_constant_pool, jint index)) |
481 constantPoolHandle cp = CompilerToVM::asConstantPool(jvmci_constant_pool); |
481 constantPoolHandle cp = CompilerToVM::asConstantPool(jvmci_constant_pool); |
482 Klass* resolved_klass = cp->klass_at(index, CHECK_NULL); |
482 Klass* resolved_klass = cp->klass_at(index, CHECK_NULL); |
|
483 if (resolved_klass->is_instance_klass()) { |
|
484 InstanceKlass::cast(resolved_klass)->link_class_or_fail(THREAD); |
|
485 } |
483 oop klass = CompilerToVM::get_jvmci_type(resolved_klass, CHECK_NULL); |
486 oop klass = CompilerToVM::get_jvmci_type(resolved_klass, CHECK_NULL); |
484 return JNIHandles::make_local(THREAD, klass); |
487 return JNIHandles::make_local(THREAD, klass); |
485 C2V_END |
488 C2V_END |
486 |
489 |
487 C2V_VMENTRY(jobject, lookupKlassInPool, (JNIEnv*, jobject, jobject jvmci_constant_pool, jint index, jbyte opcode)) |
490 C2V_VMENTRY(jobject, lookupKlassInPool, (JNIEnv*, jobject, jobject jvmci_constant_pool, jint index, jbyte opcode)) |