8033566: [parfait] warning from b128 for hotspot/src/share/vm/runtime/frame.cpp: JNI primitive type mismatch
Added an assert for checking the return value is <= max_jint Reviewed-by: coleenp, minqi
This commit is contained in:
parent
ba76cc617e
commit
1c9ebd2beb
@ -531,13 +531,16 @@ jint frame::interpreter_frame_expression_stack_size() const {
|
|||||||
// Number of elements on the interpreter expression stack
|
// Number of elements on the interpreter expression stack
|
||||||
// Callers should span by stackElementWords
|
// Callers should span by stackElementWords
|
||||||
int element_size = Interpreter::stackElementWords;
|
int element_size = Interpreter::stackElementWords;
|
||||||
|
size_t stack_size = 0;
|
||||||
if (frame::interpreter_frame_expression_stack_direction() < 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;
|
interpreter_frame_tos_address() + 1)/element_size;
|
||||||
} else {
|
} else {
|
||||||
return (interpreter_frame_tos_address() -
|
stack_size = (interpreter_frame_tos_address() -
|
||||||
interpreter_frame_expression_stack() + 1)/element_size;
|
interpreter_frame_expression_stack() + 1)/element_size;
|
||||||
}
|
}
|
||||||
|
assert( stack_size <= (size_t)max_jint, "stack size too big");
|
||||||
|
return ((jint)stack_size);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user