< prev index next >

src/hotspot/share/prims/jvm.cpp

Print this page
rev 59729 : 8247377: Zero and Minimal VMs are broken after JDK-8198698 ('SystemDictionaryShared' has not been declared)
Reviewed-by:

@@ -3734,10 +3734,11 @@
                                               jobject methodType,
                                               jobject implMethodMember,
                                               jobject instantiatedMethodType,
                                               jclass lambdaProxyClass))
   JVMWrapper("JVM_RegisterLambdaProxyClassForArchiving");
+#if INCLUDE_CDS
   if (!DynamicDumpSharedSpaces) {
     return;
   }
 
   Klass* caller_k = java_lang_Class::as_Klass(JNIHandles::resolve(caller));

@@ -3770,11 +3771,11 @@
   Handle instantiated_method_type_oop(THREAD, JNIHandles::resolve_non_null(instantiatedMethodType));
   Symbol* instantiated_method_type = java_lang_invoke_MethodType::as_signature(instantiated_method_type_oop(), true);
 
   SystemDictionaryShared::add_lambda_proxy_class(caller_ik, lambda_ik, invoked_name, invoked_type,
                                                  method_type, m, instantiated_method_type);
-
+#endif // INCLUDE_CDS
 JVM_END
 
 JVM_ENTRY(jclass, JVM_LookupLambdaProxyClassFromArchive(JNIEnv* env,
                                                         jclass caller,
                                                         jstring invokedName,

@@ -3782,10 +3783,11 @@
                                                         jobject methodType,
                                                         jobject implMethodMember,
                                                         jobject instantiatedMethodType,
                                                         jboolean initialize))
   JVMWrapper("JVM_LookupLambdaProxyClassFromArchive");
+#if INCLUDE_CDS
   if (!DynamicArchive::is_mapped()) {
     return NULL;
   }
 
   if (invokedName == NULL || invokedType == NULL || methodType == NULL ||

@@ -3820,10 +3822,13 @@
   if (lambda_ik != NULL) {
     InstanceKlass* loaded_lambda = SystemDictionaryShared::prepare_shared_lambda_proxy_class(lambda_ik, caller_ik, initialize, THREAD);
     jcls = loaded_lambda == NULL ? NULL : (jclass) JNIHandles::make_local(env, loaded_lambda->java_mirror());
   }
   return jcls;
+#else
+  return NULL;
+#endif // INCLUDE_CDS
 JVM_END
 
 JVM_ENTRY(jboolean, JVM_IsCDSDumpingEnabled(JNIEnv* env))
     JVMWrapper("JVM_IsCDSDumpingEnable");
     return DynamicDumpSharedSpaces;
< prev index next >