206 static InstanceKlass* acquire_class_for_current_thread(
207 InstanceKlass *ik,
208 Handle class_loader,
209 Handle protection_domain,
210 const ClassFileStream* cfs,
211 TRAPS);
212 static DumpTimeSharedClassInfo* find_or_allocate_info_for(InstanceKlass* k);
213 static void write_dictionary(RunTimeSharedDictionary* dictionary,
214 bool is_builtin);
215 static void write_lambda_proxy_class_dictionary(LambdaProxyClassDictionary* dictionary);
216 static bool is_jfr_event_class(InstanceKlass *k);
217 static bool is_registered_lambda_proxy_class(InstanceKlass* ik);
218 static void warn_excluded(InstanceKlass* k, const char* reason);
219 static bool should_be_excluded(InstanceKlass* k);
220
221 static bool _dump_in_progress;
222 DEBUG_ONLY(static bool _no_class_loading_should_happen;)
223
224 public:
225 static bool is_hidden_lambda_proxy(InstanceKlass* ik);
226 static Handle init_security_info(Handle class_loader, InstanceKlass* ik, PackageEntry* pkg_entry, TRAPS);
227 static InstanceKlass* find_builtin_class(Symbol* class_name);
228
229 static const RunTimeSharedClassInfo* find_record(RunTimeSharedDictionary* static_dict,
230 RunTimeSharedDictionary* dynamic_dict,
231 Symbol* name);
232
233 static bool has_platform_or_app_classes();
234
235 // Called by PLATFORM/APP loader only
236 static InstanceKlass* find_or_load_shared_class(Symbol* class_name,
237 Handle class_loader,
238 TRAPS);
239
240
241 static void allocate_shared_data_arrays(int size, TRAPS);
242
243 // Check if sharing is supported for the class loader.
244 static bool is_sharing_possible(ClassLoaderData* loader_data);
245
|
206 static InstanceKlass* acquire_class_for_current_thread(
207 InstanceKlass *ik,
208 Handle class_loader,
209 Handle protection_domain,
210 const ClassFileStream* cfs,
211 TRAPS);
212 static DumpTimeSharedClassInfo* find_or_allocate_info_for(InstanceKlass* k);
213 static void write_dictionary(RunTimeSharedDictionary* dictionary,
214 bool is_builtin);
215 static void write_lambda_proxy_class_dictionary(LambdaProxyClassDictionary* dictionary);
216 static bool is_jfr_event_class(InstanceKlass *k);
217 static bool is_registered_lambda_proxy_class(InstanceKlass* ik);
218 static void warn_excluded(InstanceKlass* k, const char* reason);
219 static bool should_be_excluded(InstanceKlass* k);
220
221 static bool _dump_in_progress;
222 DEBUG_ONLY(static bool _no_class_loading_should_happen;)
223
224 public:
225 static bool is_hidden_lambda_proxy(InstanceKlass* ik);
226 static bool is_early_klass(InstanceKlass* k); // Was k loaded while JvmtiExport::is_early_phase()==true
227 static Handle init_security_info(Handle class_loader, InstanceKlass* ik, PackageEntry* pkg_entry, TRAPS);
228 static InstanceKlass* find_builtin_class(Symbol* class_name);
229
230 static const RunTimeSharedClassInfo* find_record(RunTimeSharedDictionary* static_dict,
231 RunTimeSharedDictionary* dynamic_dict,
232 Symbol* name);
233
234 static bool has_platform_or_app_classes();
235
236 // Called by PLATFORM/APP loader only
237 static InstanceKlass* find_or_load_shared_class(Symbol* class_name,
238 Handle class_loader,
239 TRAPS);
240
241
242 static void allocate_shared_data_arrays(int size, TRAPS);
243
244 // Check if sharing is supported for the class loader.
245 static bool is_sharing_possible(ClassLoaderData* loader_data);
246
|