hotspot/src/share/vm/classfile/systemDictionary.cpp
changeset 37296 613278eb2a1e
parent 37267 ad8c0e8de29f
parent 37281 c4e7456d6ae1
child 38151 fffedc5e5cf8
--- a/hotspot/src/share/vm/classfile/systemDictionary.cpp	Fri Apr 08 01:00:10 2016 -0400
+++ b/hotspot/src/share/vm/classfile/systemDictionary.cpp	Fri Apr 08 12:36:27 2016 -0400
@@ -2067,7 +2067,18 @@
   int  sid  = (info >> CEIL_LG_OPTION_LIMIT);
   Symbol* symbol = vmSymbols::symbol_at((vmSymbols::SID)sid);
   InstanceKlass** klassp = &_well_known_klasses[id];
-  bool must_load = (init_opt < SystemDictionary::Opt);
+
+  bool must_load;
+#if INCLUDE_JVMCI
+  if (EnableJVMCI) {
+    // If JVMCI is enabled we require its classes to be found.
+    must_load = (init_opt < SystemDictionary::Opt) || (init_opt == SystemDictionary::Jvmci);
+  } else
+#endif
+  {
+    must_load = (init_opt < SystemDictionary::Opt);
+  }
+
   if ((*klassp) == NULL) {
     Klass* k;
     if (must_load) {