8033566: [parfait] warning from b128 for hotspot/src/share/vm/runtime/frame.cpp: JNI primitive type mismatch

Mon, 24 Mar 2014 10:48:44 -0700

author
ccheung
date
Mon, 24 Mar 2014 10:48:44 -0700
changeset 6438
6b207d038106
parent 6437
f2294a37e723
child 6520
a7d4d4655766

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

src/share/vm/runtime/frame.cpp file | annotate | diff | comparison | revisions
     1.1 --- a/src/share/vm/runtime/frame.cpp	Thu Mar 20 14:25:22 2014 -0700
     1.2 +++ b/src/share/vm/runtime/frame.cpp	Mon Mar 24 10:48:44 2014 -0700
     1.3 @@ -531,13 +531,16 @@
     1.4    // Number of elements on the interpreter expression stack
     1.5    // Callers should span by stackElementWords
     1.6    int element_size = Interpreter::stackElementWords;
     1.7 +  size_t stack_size = 0;
     1.8    if (frame::interpreter_frame_expression_stack_direction() < 0) {
     1.9 -    return (interpreter_frame_expression_stack() -
    1.10 -            interpreter_frame_tos_address() + 1)/element_size;
    1.11 +    stack_size = (interpreter_frame_expression_stack() -
    1.12 +                  interpreter_frame_tos_address() + 1)/element_size;
    1.13    } else {
    1.14 -    return (interpreter_frame_tos_address() -
    1.15 -            interpreter_frame_expression_stack() + 1)/element_size;
    1.16 +    stack_size = (interpreter_frame_tos_address() -
    1.17 +                  interpreter_frame_expression_stack() + 1)/element_size;
    1.18    }
    1.19 +  assert( stack_size <= (size_t)max_jint, "stack size too big");
    1.20 +  return ((jint)stack_size);
    1.21  }
    1.22  
    1.23  

mercurial