# HG changeset patch # User ccheung # Date 1395683324 25200 # Node ID 6b207d03810663a05d138361c2c73498765ec90e # Parent f2294a37e723b9d486316a21af319f96bf510801 8033566: [parfait] warning from b128 for hotspot/src/share/vm/runtime/frame.cpp: JNI primitive type mismatch Summary: added an assert for checking the return value is <= max_jint Reviewed-by: coleenp, minqi diff -r f2294a37e723 -r 6b207d038106 src/share/vm/runtime/frame.cpp --- a/src/share/vm/runtime/frame.cpp Thu Mar 20 14:25:22 2014 -0700 +++ b/src/share/vm/runtime/frame.cpp Mon Mar 24 10:48:44 2014 -0700 @@ -531,13 +531,16 @@ // 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() - - interpreter_frame_tos_address() + 1)/element_size; + stack_size = (interpreter_frame_expression_stack() - + interpreter_frame_tos_address() + 1)/element_size; } else { - return (interpreter_frame_tos_address() - - interpreter_frame_expression_stack() + 1)/element_size; + 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); }