diff -r 3068270ba476 -r 2b8e28fdf503 src/share/vm/runtime/signature.cpp --- a/src/share/vm/runtime/signature.cpp Wed Oct 16 10:52:41 2013 +0200 +++ b/src/share/vm/runtime/signature.cpp Tue Nov 05 17:38:04 2013 -0800 @@ -378,6 +378,16 @@ return result; } +int SignatureStream::reference_parameter_count() { + int args_count = 0; + for ( ; !at_return_type(); next()) { + if (is_object()) { + args_count++; + } + } + return args_count; +} + bool SignatureVerifier::is_valid_signature(Symbol* sig) { const char* signature = (const char*)sig->bytes(); ssize_t len = sig->utf8_length();