src/hotspot/share/classfile/javaClasses.cpp
changeset 57763 47511761bd04
parent 57514 9b6d4e64778c
child 57804 9b7b9f16dfd9
equal deleted inserted replaced
57762:7a700a9a89f2 57763:47511761bd04
  2675   Klass* clazz = java_lang_Class::as_Klass(java_lang_invoke_MemberName::clazz(mname()));
  2675   Klass* clazz = java_lang_Class::as_Klass(java_lang_invoke_MemberName::clazz(mname()));
  2676   InstanceKlass* holder = InstanceKlass::cast(clazz);
  2676   InstanceKlass* holder = InstanceKlass::cast(clazz);
  2677   Method* method = java_lang_StackFrameInfo::get_method(stackFrame, holder, CHECK);
  2677   Method* method = java_lang_StackFrameInfo::get_method(stackFrame, holder, CHECK);
  2678 
  2678 
  2679   short version = stackFrame->short_field(_version_offset);
  2679   short version = stackFrame->short_field(_version_offset);
  2680   short bci = stackFrame->short_field(_bci_offset);
  2680   int bci = stackFrame->int_field(_bci_offset);
  2681   Symbol* name = method->name();
  2681   Symbol* name = method->name();
  2682   java_lang_StackTraceElement::fill_in(stack_trace_element, holder, method, version, bci, name, CHECK);
  2682   java_lang_StackTraceElement::fill_in(stack_trace_element, holder, method, version, bci, name, CHECK);
  2683 }
  2683 }
  2684 
  2684 
  2685 #define STACKFRAMEINFO_FIELDS_DO(macro) \
  2685 #define STACKFRAMEINFO_FIELDS_DO(macro) \
  2686   macro(_memberName_offset,     k, "memberName",  object_signature, false); \
  2686   macro(_memberName_offset,     k, "memberName",  object_signature, false); \
  2687   macro(_bci_offset,            k, "bci",         short_signature,  false)
  2687   macro(_bci_offset,            k, "bci",         int_signature,    false)
  2688 
  2688 
  2689 void java_lang_StackFrameInfo::compute_offsets() {
  2689 void java_lang_StackFrameInfo::compute_offsets() {
  2690   InstanceKlass* k = SystemDictionary::StackFrameInfo_klass();
  2690   InstanceKlass* k = SystemDictionary::StackFrameInfo_klass();
  2691   STACKFRAMEINFO_FIELDS_DO(FIELD_COMPUTE_OFFSET);
  2691   STACKFRAMEINFO_FIELDS_DO(FIELD_COMPUTE_OFFSET);
  2692   STACKFRAMEINFO_INJECTED_FIELDS(INJECTED_FIELD_COMPUTE_OFFSET);
  2692   STACKFRAMEINFO_INJECTED_FIELDS(INJECTED_FIELD_COMPUTE_OFFSET);
  4222 void java_lang_StackFrameInfo::set_version(oop element, short value) {
  4222 void java_lang_StackFrameInfo::set_version(oop element, short value) {
  4223   element->short_field_put(_version_offset, value);
  4223   element->short_field_put(_version_offset, value);
  4224 }
  4224 }
  4225 
  4225 
  4226 void java_lang_StackFrameInfo::set_bci(oop element, int value) {
  4226 void java_lang_StackFrameInfo::set_bci(oop element, int value) {
       
  4227   assert(value >= 0 && value < max_jushort, "must be a valid bci value");
  4227   element->int_field_put(_bci_offset, value);
  4228   element->int_field_put(_bci_offset, value);
  4228 }
  4229 }
  4229 
  4230 
  4230 void java_lang_LiveStackFrameInfo::set_monitors(oop element, oop value) {
  4231 void java_lang_LiveStackFrameInfo::set_monitors(oop element, oop value) {
  4231   element->obj_field_put(_monitors_offset, value);
  4232   element->obj_field_put(_monitors_offset, value);