--- old/src/hotspot/share/classfile/javaClasses.cpp 2017-11-04 15:52:28.884160554 -0700 +++ new/src/hotspot/share/classfile/javaClasses.cpp 2017-11-04 15:52:28.376160561 -0700 @@ -2258,8 +2258,9 @@ void java_lang_StackFrameInfo::to_stack_trace_element(Handle stackFrame, Handle stack_trace_element, TRAPS) { ResourceMark rm(THREAD); - Handle k (THREAD, stackFrame->obj_field(_declaringClass_offset)); - InstanceKlass* holder = InstanceKlass::cast(java_lang_Class::as_Klass(k())); + Handle mname(THREAD, stackFrame->obj_field(java_lang_StackFrameInfo::_memberName_offset)); + Klass* clazz = java_lang_Class::as_Klass(java_lang_invoke_MemberName::clazz(mname())); + InstanceKlass* holder = InstanceKlass::cast(clazz); Method* method = java_lang_StackFrameInfo::get_method(stackFrame, holder, CHECK); short version = stackFrame->short_field(_version_offset); @@ -2270,7 +2271,6 @@ void java_lang_StackFrameInfo::compute_offsets() { Klass* k = SystemDictionary::StackFrameInfo_klass(); - compute_offset(_declaringClass_offset, k, vmSymbols::declaringClass_name(), vmSymbols::class_signature()); compute_offset(_memberName_offset, k, vmSymbols::memberName_name(), vmSymbols::object_signature()); compute_offset(_bci_offset, k, vmSymbols::bci_name(), vmSymbols::short_signature()); STACKFRAMEINFO_INJECTED_FIELDS(INJECTED_FIELD_COMPUTE_OFFSET); @@ -3679,7 +3679,6 @@ int java_lang_StackTraceElement::classLoaderName_offset; int java_lang_StackTraceElement::declaringClass_offset; int java_lang_StackTraceElement::declaringClassObject_offset; -int java_lang_StackFrameInfo::_declaringClass_offset; int java_lang_StackFrameInfo::_memberName_offset; int java_lang_StackFrameInfo::_bci_offset; int java_lang_StackFrameInfo::_version_offset; @@ -3732,11 +3731,6 @@ element->obj_field_put(declaringClassObject_offset, value); } -// Support for java_lang_StackFrameInfo -void java_lang_StackFrameInfo::set_declaringClass(oop element, oop value) { - element->obj_field_put(_declaringClass_offset, value); -} - void java_lang_StackFrameInfo::set_version(oop element, short value) { element->short_field_put(_version_offset, value); }