comparison src/share/vm/classfile/verifier.cpp @ 2460:ed69575596ac

6981791: remove experimental code for JSR 292 Reviewed-by: twisti
author jrose
date Thu, 07 Apr 2011 17:02:30 -0700
parents 8033953d67ff
children e17b61ba7bb3 d558e01a72c0
comparison
equal deleted inserted replaced
2459:55973726c600 2460:ed69575596ac
1669 } else if (tag.is_long()) { 1669 } else if (tag.is_long()) {
1670 current_frame->push_stack_2( 1670 current_frame->push_stack_2(
1671 VerificationType::long_type(), 1671 VerificationType::long_type(),
1672 VerificationType::long2_type(), CHECK_VERIFY(this)); 1672 VerificationType::long2_type(), CHECK_VERIFY(this));
1673 } else if (tag.is_method_handle()) { 1673 } else if (tag.is_method_handle()) {
1674 Symbol* methodHandle_name = vmSymbols::java_lang_invoke_MethodHandle();
1675 if (AllowTransitionalJSR292 && !Universe::is_bootstrapping())
1676 methodHandle_name = SystemDictionaryHandles::MethodHandle_klass()->name();
1677 current_frame->push_stack( 1674 current_frame->push_stack(
1678 VerificationType::reference_type( 1675 VerificationType::reference_type(
1679 methodHandle_name), CHECK_VERIFY(this)); 1676 vmSymbols::java_lang_invoke_MethodHandle()), CHECK_VERIFY(this));
1680 } else if (tag.is_method_type()) { 1677 } else if (tag.is_method_type()) {
1681 Symbol* methodType_name = vmSymbols::java_lang_invoke_MethodType();
1682 if (AllowTransitionalJSR292 && !Universe::is_bootstrapping())
1683 methodType_name = SystemDictionaryHandles::MethodType_klass()->name();
1684 current_frame->push_stack( 1678 current_frame->push_stack(
1685 VerificationType::reference_type( 1679 VerificationType::reference_type(
1686 methodType_name), CHECK_VERIFY(this)); 1680 vmSymbols::java_lang_invoke_MethodType()), CHECK_VERIFY(this));
1687 } else { 1681 } else {
1688 verify_error(bci, "Invalid index in ldc"); 1682 verify_error(bci, "Invalid index in ldc");
1689 return; 1683 return;
1690 } 1684 }
1691 } 1685 }
1948 u2 index = bcs->get_index_u2(); 1942 u2 index = bcs->get_index_u2();
1949 Bytecodes::Code opcode = bcs->raw_code(); 1943 Bytecodes::Code opcode = bcs->raw_code();
1950 unsigned int types = (opcode == Bytecodes::_invokeinterface 1944 unsigned int types = (opcode == Bytecodes::_invokeinterface
1951 ? 1 << JVM_CONSTANT_InterfaceMethodref 1945 ? 1 << JVM_CONSTANT_InterfaceMethodref
1952 : opcode == Bytecodes::_invokedynamic 1946 : opcode == Bytecodes::_invokedynamic
1953 ? ((AllowTransitionalJSR292 ? 1 << JVM_CONSTANT_NameAndType : 0) 1947 ? 1 << JVM_CONSTANT_InvokeDynamic
1954 |1 << JVM_CONSTANT_InvokeDynamic)
1955 : 1 << JVM_CONSTANT_Methodref); 1948 : 1 << JVM_CONSTANT_Methodref);
1956 verify_cp_type(index, cp, types, CHECK_VERIFY(this)); 1949 verify_cp_type(index, cp, types, CHECK_VERIFY(this));
1957 1950
1958 // Get method name and signature 1951 // Get method name and signature
1959 Symbol* method_name = cp->name_ref_at(index); 1952 Symbol* method_name = cp->name_ref_at(index);