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