202 static int _static_oop_field_count_offset;
203
204 static int _protection_domain_offset;
205 static int _init_lock_offset;
206 static int _signers_offset;
207 static int _class_loader_offset;
208 static int _module_offset;
209 static int _component_mirror_offset;
210
211 static bool offsets_computed;
212 static int classRedefinedCount_offset;
213
214 static GrowableArray<Klass*>* _fixup_mirror_list;
215 static GrowableArray<Klass*>* _fixup_module_field_list;
216
217 static void set_init_lock(oop java_class, oop init_lock);
218 static void set_protection_domain(oop java_class, oop protection_domain);
219 static void set_class_loader(oop java_class, oop class_loader);
220 static void set_component_mirror(oop java_class, oop comp_mirror);
221 static void initialize_mirror_fields(KlassHandle k, Handle mirror, Handle protection_domain, TRAPS);
222 public:
223 static void compute_offsets();
224
225 // Instance creation
226 static void create_mirror(KlassHandle k, Handle class_loader, Handle module,
227 Handle protection_domain, TRAPS);
228 static void fixup_mirror(KlassHandle k, TRAPS);
229 static oop create_basic_type_mirror(const char* basic_type_name, BasicType type, TRAPS);
230
231 static void fixup_module_field(KlassHandle k, Handle module);
232
233 // Conversion
234 static Klass* as_Klass(oop java_class);
235 static void set_klass(oop java_class, Klass* klass);
236 static BasicType as_BasicType(oop java_class, Klass** reference_klass = NULL);
237 static BasicType as_BasicType(oop java_class, KlassHandle* reference_klass) {
238 Klass* refk_oop = NULL;
239 BasicType result = as_BasicType(java_class, &refk_oop);
240 (*reference_klass) = KlassHandle(refk_oop);
241 return result;
|
202 static int _static_oop_field_count_offset;
203
204 static int _protection_domain_offset;
205 static int _init_lock_offset;
206 static int _signers_offset;
207 static int _class_loader_offset;
208 static int _module_offset;
209 static int _component_mirror_offset;
210
211 static bool offsets_computed;
212 static int classRedefinedCount_offset;
213
214 static GrowableArray<Klass*>* _fixup_mirror_list;
215 static GrowableArray<Klass*>* _fixup_module_field_list;
216
217 static void set_init_lock(oop java_class, oop init_lock);
218 static void set_protection_domain(oop java_class, oop protection_domain);
219 static void set_class_loader(oop java_class, oop class_loader);
220 static void set_component_mirror(oop java_class, oop comp_mirror);
221 static void initialize_mirror_fields(KlassHandle k, Handle mirror, Handle protection_domain, TRAPS);
222 static void set_mirror_module_field(KlassHandle K, Handle mirror, Handle module, TRAPS);
223 public:
224 static void compute_offsets();
225
226 // Instance creation
227 static void create_mirror(KlassHandle k, Handle class_loader, Handle module,
228 Handle protection_domain, TRAPS);
229 static void fixup_mirror(KlassHandle k, TRAPS);
230 static oop create_basic_type_mirror(const char* basic_type_name, BasicType type, TRAPS);
231
232 static void fixup_module_field(KlassHandle k, Handle module);
233
234 // Conversion
235 static Klass* as_Klass(oop java_class);
236 static void set_klass(oop java_class, Klass* klass);
237 static BasicType as_BasicType(oop java_class, Klass** reference_klass = NULL);
238 static BasicType as_BasicType(oop java_class, KlassHandle* reference_klass) {
239 Klass* refk_oop = NULL;
240 BasicType result = as_BasicType(java_class, &refk_oop);
241 (*reference_klass) = KlassHandle(refk_oop);
242 return result;
|