hotspot/src/share/vm/classfile/systemDictionary.hpp
changeset 24322 c2978d1578e3
parent 23872 536c66fc43d3
child 24337 ddce5dcb6be1
equal deleted inserted replaced
24320:394d55c783dc 24322:c2978d1578e3
   149   do_klass(reflect_UnsafeStaticFieldAccessorImpl_klass, sun_reflect_UnsafeStaticFieldAccessorImpl, Opt_Only_JDK15      ) \
   149   do_klass(reflect_UnsafeStaticFieldAccessorImpl_klass, sun_reflect_UnsafeStaticFieldAccessorImpl, Opt_Only_JDK15      ) \
   150   do_klass(reflect_CallerSensitive_klass,               sun_reflect_CallerSensitive,               Opt                 ) \
   150   do_klass(reflect_CallerSensitive_klass,               sun_reflect_CallerSensitive,               Opt                 ) \
   151                                                                                                                          \
   151                                                                                                                          \
   152   /* support for dynamic typing; it's OK if these are NULL in earlier JDKs */                                            \
   152   /* support for dynamic typing; it's OK if these are NULL in earlier JDKs */                                            \
   153   do_klass(DirectMethodHandle_klass,                    java_lang_invoke_DirectMethodHandle,       Opt                 ) \
   153   do_klass(DirectMethodHandle_klass,                    java_lang_invoke_DirectMethodHandle,       Opt                 ) \
   154   do_klass(MethodHandle_klass,                          java_lang_invoke_MethodHandle,             Pre_JSR292          ) \
   154   do_klass(MethodHandle_klass,                          java_lang_invoke_MethodHandle,             Pre                 ) \
   155   do_klass(MemberName_klass,                            java_lang_invoke_MemberName,               Pre_JSR292          ) \
   155   do_klass(MemberName_klass,                            java_lang_invoke_MemberName,               Pre                 ) \
   156   do_klass(MethodHandleNatives_klass,                   java_lang_invoke_MethodHandleNatives,      Pre_JSR292          ) \
   156   do_klass(MethodHandleNatives_klass,                   java_lang_invoke_MethodHandleNatives,      Pre                 ) \
   157   do_klass(LambdaForm_klass,                            java_lang_invoke_LambdaForm,               Opt                 ) \
   157   do_klass(LambdaForm_klass,                            java_lang_invoke_LambdaForm,               Opt                 ) \
   158   do_klass(MethodType_klass,                            java_lang_invoke_MethodType,               Pre_JSR292          ) \
   158   do_klass(MethodType_klass,                            java_lang_invoke_MethodType,               Pre                 ) \
   159   do_klass(BootstrapMethodError_klass,                  java_lang_BootstrapMethodError,            Pre_JSR292          ) \
   159   do_klass(BootstrapMethodError_klass,                  java_lang_BootstrapMethodError,            Pre                 ) \
   160   do_klass(CallSite_klass,                              java_lang_invoke_CallSite,                 Pre_JSR292          ) \
   160   do_klass(CallSite_klass,                              java_lang_invoke_CallSite,                 Pre                 ) \
   161   do_klass(ConstantCallSite_klass,                      java_lang_invoke_ConstantCallSite,         Pre_JSR292          ) \
   161   do_klass(ConstantCallSite_klass,                      java_lang_invoke_ConstantCallSite,         Pre                 ) \
   162   do_klass(MutableCallSite_klass,                       java_lang_invoke_MutableCallSite,          Pre_JSR292          ) \
   162   do_klass(MutableCallSite_klass,                       java_lang_invoke_MutableCallSite,          Pre                 ) \
   163   do_klass(VolatileCallSite_klass,                      java_lang_invoke_VolatileCallSite,         Pre_JSR292          ) \
   163   do_klass(VolatileCallSite_klass,                      java_lang_invoke_VolatileCallSite,         Pre                 ) \
   164   /* Note: MethodHandle must be first, and VolatileCallSite last in group */                                             \
   164   /* Note: MethodHandle must be first, and VolatileCallSite last in group */                                             \
   165                                                                                                                          \
   165                                                                                                                          \
   166   do_klass(StringBuffer_klass,                          java_lang_StringBuffer,                    Pre                 ) \
   166   do_klass(StringBuffer_klass,                          java_lang_StringBuffer,                    Pre                 ) \
   167   do_klass(StringBuilder_klass,                         java_lang_StringBuilder,                   Pre                 ) \
   167   do_klass(StringBuilder_klass,                         java_lang_StringBuilder,                   Pre                 ) \
   168   do_klass(misc_Unsafe_klass,                           sun_misc_Unsafe,                           Pre                 ) \
   168   do_klass(misc_Unsafe_klass,                           sun_misc_Unsafe,                           Pre                 ) \
   202     FIRST_WKID = NO_WKID + 1
   202     FIRST_WKID = NO_WKID + 1
   203   };
   203   };
   204 
   204 
   205   enum InitOption {
   205   enum InitOption {
   206     Pre,                        // preloaded; error if not present
   206     Pre,                        // preloaded; error if not present
   207     Pre_JSR292,                 // preloaded if EnableInvokeDynamic
       
   208 
   207 
   209     // Order is significant.  Options before this point require resolve_or_fail.
   208     // Order is significant.  Options before this point require resolve_or_fail.
   210     // Options after this point will use resolve_or_null instead.
   209     // Options after this point will use resolve_or_null instead.
   211 
   210 
   212     Opt,                        // preload tried; NULL if not present
   211     Opt,                        // preload tried; NULL if not present
   383     assert(k != NULL, "preloaded klass not initialized");
   382     assert(k != NULL, "preloaded klass not initialized");
   384     return k;
   383     return k;
   385   }
   384   }
   386 
   385 
   387   static Klass* check_klass_Pre(       Klass* k) { return check_klass(k); }
   386   static Klass* check_klass_Pre(       Klass* k) { return check_klass(k); }
   388   static Klass* check_klass_Pre_JSR292(Klass* k) { return EnableInvokeDynamic ? check_klass(k) : k; }
       
   389   static Klass* check_klass_Opt(       Klass* k) { return k; }
   387   static Klass* check_klass_Opt(       Klass* k) { return k; }
   390   static Klass* check_klass_Opt_Only_JDK15(Klass* k) {
   388   static Klass* check_klass_Opt_Only_JDK15(Klass* k) {
   391     assert(JDK_Version::is_gte_jdk15x_version(), "JDK 1.5 only");
   389     assert(JDK_Version::is_gte_jdk15x_version(), "JDK 1.5 only");
   392     return k;
   390     return k;
   393   }
   391   }