diff -r 50c604cb0d5f -r 30245956af37 hotspot/src/share/vm/runtime/vframe.cpp --- a/hotspot/src/share/vm/runtime/vframe.cpp Mon Jul 23 13:04:59 2012 -0700 +++ b/hotspot/src/share/vm/runtime/vframe.cpp Tue Jul 24 10:51:00 2012 -0700 @@ -410,8 +410,9 @@ Klass::cast(method()->method_holder()) ->is_subclass_of(SystemDictionary::reflect_MethodAccessorImpl_klass())) { // This is an auxilary frame -- skip it - } else if (method()->is_method_handle_adapter()) { - // This is an internal adapter frame from the MethodHandleCompiler -- skip it + } else if (method()->is_method_handle_intrinsic() || + method()->is_compiled_lambda_form()) { + // This is an internal adapter frame for method handles -- skip it } else { // This is non-excluded frame, we need to count it against the depth if (depth-- <= 0) {