equal
deleted
inserted
replaced
722 bool VM_GetOrSetLocal::doit_prologue() { |
722 bool VM_GetOrSetLocal::doit_prologue() { |
723 _jvf = get_java_vframe(); |
723 _jvf = get_java_vframe(); |
724 NULL_CHECK(_jvf, false); |
724 NULL_CHECK(_jvf, false); |
725 |
725 |
726 Method* method_oop = _jvf->method(); |
726 Method* method_oop = _jvf->method(); |
|
727 if (getting_receiver()) { |
|
728 if (method_oop->is_static()) { |
|
729 _result = JVMTI_ERROR_INVALID_SLOT; |
|
730 return false; |
|
731 } |
|
732 return true; |
|
733 } |
|
734 |
727 if (method_oop->is_native()) { |
735 if (method_oop->is_native()) { |
728 if (getting_receiver() && !method_oop->is_static()) { |
736 _result = JVMTI_ERROR_OPAQUE_FRAME; |
729 return true; |
737 return false; |
730 } else { |
|
731 _result = JVMTI_ERROR_OPAQUE_FRAME; |
|
732 return false; |
|
733 } |
|
734 } |
738 } |
735 |
739 |
736 if (!check_slot_type_no_lvt(_jvf)) { |
740 if (!check_slot_type_no_lvt(_jvf)) { |
737 return false; |
741 return false; |
738 } |
742 } |