--- old/src/share/vm/classfile/classFileParser.cpp 2015-01-21 14:39:23.000000000 +0300 +++ new/src/share/vm/classfile/classFileParser.cpp 2015-01-21 14:39:23.000000000 +0300 @@ -1787,6 +1787,10 @@ if (_location != _in_method) break; // only allow for methods if (!privileged) break; // only allow in privileged code return _method_LambdaForm_Compiled; + case vmSymbols::VM_SYMBOL_ENUM_NAME(java_lang_invoke_LambdaForm_Shared_signature): + if (_location != _in_method) break; // only allow for methods + if (!privileged) break; // only allow in privileged code + return _method_LambdaForm_Shared; case vmSymbols::VM_SYMBOL_ENUM_NAME(java_lang_invoke_LambdaForm_Hidden_signature): if (_location != _in_method) break; // only allow for methods if (!privileged) break; // only allow in privileged code @@ -1828,6 +1832,8 @@ m->set_intrinsic_id(vmIntrinsics::_compiledLambdaForm); if (has_annotation(_method_LambdaForm_Hidden)) m->set_hidden(true); + if (has_annotation(_method_LambdaForm_Shared)) + m->set_shared(true); } void ClassFileParser::ClassAnnotationCollector::apply_to(instanceKlassHandle k) {