src/cpu/x86/vm/frame_x86.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 7043301 Sdiff src/cpu/x86/vm

src/cpu/x86/vm/frame_x86.cpp

Print this page




 633 #endif // AMD64
 634       break;
 635     }
 636     case T_DOUBLE  : value_result->d = *(jdouble*)tos_addr; break;
 637     case T_VOID    : /* Nothing to do */ break;
 638     default        : ShouldNotReachHere();
 639   }
 640 
 641   return type;
 642 }
 643 
 644 
 645 intptr_t* frame::interpreter_frame_tos_at(jint offset) const {
 646   int index = (Interpreter::expr_offset_in_bytes(offset)/wordSize);
 647   return &interpreter_frame_tos_address()[index];
 648 }
 649 
 650 #ifdef ASSERT
 651 
 652 #define DESCRIBE_FP_OFFSET(name) \
 653   values.describe(-1, fp() + frame::name##_offset, #name)
 654 
 655 void frame::describe_pd(FrameValues& values, int frame_no) {
 656   if (is_interpreted_frame()) {
 657     DESCRIBE_FP_OFFSET(interpreter_frame_sender_sp);
 658     DESCRIBE_FP_OFFSET(interpreter_frame_last_sp);
 659     DESCRIBE_FP_OFFSET(interpreter_frame_method);
 660     DESCRIBE_FP_OFFSET(interpreter_frame_mdx);
 661     DESCRIBE_FP_OFFSET(interpreter_frame_cache);
 662     DESCRIBE_FP_OFFSET(interpreter_frame_locals);
 663     DESCRIBE_FP_OFFSET(interpreter_frame_bcx);
 664     DESCRIBE_FP_OFFSET(interpreter_frame_initial_sp);
 665   }
 666 
 667 }
 668 #endif


 633 #endif // AMD64
 634       break;
 635     }
 636     case T_DOUBLE  : value_result->d = *(jdouble*)tos_addr; break;
 637     case T_VOID    : /* Nothing to do */ break;
 638     default        : ShouldNotReachHere();
 639   }
 640 
 641   return type;
 642 }
 643 
 644 
 645 intptr_t* frame::interpreter_frame_tos_at(jint offset) const {
 646   int index = (Interpreter::expr_offset_in_bytes(offset)/wordSize);
 647   return &interpreter_frame_tos_address()[index];
 648 }
 649 
 650 #ifdef ASSERT
 651 
 652 #define DESCRIBE_FP_OFFSET(name) \
 653   values.describe(frame_no, fp() + frame::name##_offset, #name)
 654 
 655 void frame::describe_pd(FrameValues& values, int frame_no) {
 656   if (is_interpreted_frame()) {
 657     DESCRIBE_FP_OFFSET(interpreter_frame_sender_sp);
 658     DESCRIBE_FP_OFFSET(interpreter_frame_last_sp);
 659     DESCRIBE_FP_OFFSET(interpreter_frame_method);
 660     DESCRIBE_FP_OFFSET(interpreter_frame_mdx);
 661     DESCRIBE_FP_OFFSET(interpreter_frame_cache);
 662     DESCRIBE_FP_OFFSET(interpreter_frame_locals);
 663     DESCRIBE_FP_OFFSET(interpreter_frame_bcx);
 664     DESCRIBE_FP_OFFSET(interpreter_frame_initial_sp);
 665   }
 666 
 667 }
 668 #endif
src/cpu/x86/vm/frame_x86.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File