mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 23:04:50 +02:00
6858164: invokedynamic code needs some cleanup (post-6655638)
Fix several crashers, remove needless paths for boxed-style bootstrap method call, refactor & simplify APIs for rewriter constantPoolOop, remove sun.dyn.CallSiteImpl Reviewed-by: kvn
This commit is contained in:
parent
e3b5580ecc
commit
903247cf85
30 changed files with 222 additions and 372 deletions
|
@ -2257,10 +2257,8 @@ JVM_ENTRY(const char*, JVM_GetCPMethodNameUTF(JNIEnv *env, jclass cls, jint cp_i
|
|||
switch (cp->tag_at(cp_index).value()) {
|
||||
case JVM_CONSTANT_InterfaceMethodref:
|
||||
case JVM_CONSTANT_Methodref:
|
||||
case JVM_CONSTANT_NameAndType: // for invokedynamic
|
||||
return cp->uncached_name_ref_at(cp_index)->as_utf8();
|
||||
case JVM_CONSTANT_NameAndType:
|
||||
// for invokedynamic
|
||||
return cp->nt_name_ref_at(cp_index)->as_utf8();
|
||||
default:
|
||||
fatal("JVM_GetCPMethodNameUTF: illegal constant");
|
||||
}
|
||||
|
@ -2277,10 +2275,8 @@ JVM_ENTRY(const char*, JVM_GetCPMethodSignatureUTF(JNIEnv *env, jclass cls, jint
|
|||
switch (cp->tag_at(cp_index).value()) {
|
||||
case JVM_CONSTANT_InterfaceMethodref:
|
||||
case JVM_CONSTANT_Methodref:
|
||||
case JVM_CONSTANT_NameAndType: // for invokedynamic
|
||||
return cp->uncached_signature_ref_at(cp_index)->as_utf8();
|
||||
case JVM_CONSTANT_NameAndType:
|
||||
// for invokedynamic
|
||||
return cp->nt_signature_ref_at(cp_index)->as_utf8();
|
||||
default:
|
||||
fatal("JVM_GetCPMethodSignatureUTF: illegal constant");
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue