src/share/vm/runtime/frame.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File
*** old/src/share/vm/runtime/frame.cpp Thu Mar 20 10:37:05 2014
--- new/src/share/vm/runtime/frame.cpp Thu Mar 20 10:37:05 2014
*** 529,545 ****
--- 529,548 ----
jint frame::interpreter_frame_expression_stack_size() const {
// Number of elements on the interpreter expression stack
// Callers should span by stackElementWords
int element_size = Interpreter::stackElementWords;
+ size_t stack_size = 0;
if (frame::interpreter_frame_expression_stack_direction() < 0) {
! return (interpreter_frame_expression_stack() -
! stack_size = (interpreter_frame_expression_stack() -
interpreter_frame_tos_address() + 1)/element_size;
} else {
! return (interpreter_frame_tos_address() -
! stack_size = (interpreter_frame_tos_address() -
interpreter_frame_expression_stack() + 1)/element_size;
}
+ assert( stack_size <= (size_t)max_jint, "stack size too big");
+ return ((jint)stack_size);
}
// (frame::interpreter_frame_sender_sp accessor is in frame_<arch>.cpp)
src/share/vm/runtime/frame.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File