264 static GrowableArray<Klass*>* _fixup_mirror_list;
265 static GrowableArray<Klass*>* _fixup_module_field_list;
266
267 static void set_init_lock(oop java_class, oop init_lock);
268 static void set_protection_domain(oop java_class, oop protection_domain);
269 static void set_class_loader(oop java_class, oop class_loader);
270 static void set_component_mirror(oop java_class, oop comp_mirror);
271 static void initialize_mirror_fields(Klass* k, Handle mirror, Handle protection_domain,
272 Handle classData, TRAPS);
273 static void set_mirror_module_field(JavaThread* current, Klass* K, Handle mirror, Handle module);
274 public:
275 static void allocate_fixup_lists();
276 static void compute_offsets();
277
278 // Instance creation
279 static void allocate_mirror(Klass* k, bool is_scratch, Handle protection_domain, Handle classData,
280 Handle& mirror, Handle& comp_mirror, TRAPS); // returns mirror and comp_mirror
281 static void create_mirror(Klass* k, Handle class_loader, Handle module,
282 Handle protection_domain, Handle classData, TRAPS);
283 static void fixup_mirror(Klass* k, TRAPS);
284 static oop create_basic_type_mirror(const char* basic_type_name, BasicType type, TRAPS);
285
286 // Archiving
287 static void serialize_offsets(SerializeClosure* f) NOT_CDS_RETURN;
288 static void create_scratch_mirror(Klass* k, TRAPS) NOT_CDS_JAVA_HEAP_RETURN;
289 static bool restore_archived_mirror(Klass *k, Handle class_loader, Handle module,
290 Handle protection_domain,
291 TRAPS) NOT_CDS_JAVA_HEAP_RETURN_(false);
292
293 static void fixup_module_field(Klass* k, Handle module);
294
295 // Conversion
296 static Klass* as_Klass(oop java_class);
297 static void set_klass(oop java_class, Klass* klass);
298 static BasicType as_BasicType(oop java_class, Klass** reference_klass = nullptr);
299 static Symbol* as_signature(oop java_class, bool intern_if_not_found);
300 static void print_signature(oop java_class, outputStream *st);
301 static const char* as_external_name(oop java_class);
302 // Testing
303 static bool is_instance(oop obj);
304
|
264 static GrowableArray<Klass*>* _fixup_mirror_list;
265 static GrowableArray<Klass*>* _fixup_module_field_list;
266
267 static void set_init_lock(oop java_class, oop init_lock);
268 static void set_protection_domain(oop java_class, oop protection_domain);
269 static void set_class_loader(oop java_class, oop class_loader);
270 static void set_component_mirror(oop java_class, oop comp_mirror);
271 static void initialize_mirror_fields(Klass* k, Handle mirror, Handle protection_domain,
272 Handle classData, TRAPS);
273 static void set_mirror_module_field(JavaThread* current, Klass* K, Handle mirror, Handle module);
274 public:
275 static void allocate_fixup_lists();
276 static void compute_offsets();
277
278 // Instance creation
279 static void allocate_mirror(Klass* k, bool is_scratch, Handle protection_domain, Handle classData,
280 Handle& mirror, Handle& comp_mirror, TRAPS); // returns mirror and comp_mirror
281 static void create_mirror(Klass* k, Handle class_loader, Handle module,
282 Handle protection_domain, Handle classData, TRAPS);
283 static void fixup_mirror(Klass* k, TRAPS);
284 static oop create_basic_type_mirror(const char* basic_type_name, BasicType type, bool is_scratch, TRAPS);
285
286 // Archiving
287 static void serialize_offsets(SerializeClosure* f) NOT_CDS_RETURN;
288 static void create_scratch_mirror(Klass* k, TRAPS) NOT_CDS_JAVA_HEAP_RETURN;
289 static bool restore_archived_mirror(Klass *k, Handle class_loader, Handle module,
290 Handle protection_domain,
291 TRAPS) NOT_CDS_JAVA_HEAP_RETURN_(false);
292
293 static void fixup_module_field(Klass* k, Handle module);
294
295 // Conversion
296 static Klass* as_Klass(oop java_class);
297 static void set_klass(oop java_class, Klass* klass);
298 static BasicType as_BasicType(oop java_class, Klass** reference_klass = nullptr);
299 static Symbol* as_signature(oop java_class, bool intern_if_not_found);
300 static void print_signature(oop java_class, outputStream *st);
301 static const char* as_external_name(oop java_class);
302 // Testing
303 static bool is_instance(oop obj);
304
|