Mercurial > hg > graal-compiler
comparison src/share/vm/classfile/javaClasses.hpp @ 11019:eaf3742822ec
Merge
author | chegar |
---|---|
date | Mon, 17 Jun 2013 11:17:49 +0100 |
parents | 7ee0d5c53c78 6bd680e9ea35 |
children | ba9dacff9c9d |
comparison
equal
deleted
inserted
replaced
11018:0861193d358a | 11019:eaf3742822ec |
---|---|
206 | 206 |
207 #define CLASS_INJECTED_FIELDS(macro) \ | 207 #define CLASS_INJECTED_FIELDS(macro) \ |
208 macro(java_lang_Class, klass, intptr_signature, false) \ | 208 macro(java_lang_Class, klass, intptr_signature, false) \ |
209 macro(java_lang_Class, array_klass, intptr_signature, false) \ | 209 macro(java_lang_Class, array_klass, intptr_signature, false) \ |
210 macro(java_lang_Class, oop_size, int_signature, false) \ | 210 macro(java_lang_Class, oop_size, int_signature, false) \ |
211 macro(java_lang_Class, static_oop_field_count, int_signature, false) | 211 macro(java_lang_Class, static_oop_field_count, int_signature, false) \ |
212 macro(java_lang_Class, protection_domain, object_signature, false) \ | |
213 macro(java_lang_Class, init_lock, object_signature, false) \ | |
214 macro(java_lang_Class, signers, object_signature, false) | |
212 | 215 |
213 class java_lang_Class : AllStatic { | 216 class java_lang_Class : AllStatic { |
214 friend class VMStructs; | 217 friend class VMStructs; |
215 | 218 |
216 private: | 219 private: |
219 static int _klass_offset; | 222 static int _klass_offset; |
220 static int _array_klass_offset; | 223 static int _array_klass_offset; |
221 | 224 |
222 static int _oop_size_offset; | 225 static int _oop_size_offset; |
223 static int _static_oop_field_count_offset; | 226 static int _static_oop_field_count_offset; |
227 | |
228 static int _protection_domain_offset; | |
229 static int _init_lock_offset; | |
230 static int _signers_offset; | |
224 | 231 |
225 static bool offsets_computed; | 232 static bool offsets_computed; |
226 static int classRedefinedCount_offset; | 233 static int classRedefinedCount_offset; |
227 static GrowableArray<Klass*>* _fixup_mirror_list; | 234 static GrowableArray<Klass*>* _fixup_mirror_list; |
228 | 235 |
236 static void set_init_lock(oop java_class, oop init_lock); | |
229 public: | 237 public: |
230 static void compute_offsets(); | 238 static void compute_offsets(); |
231 | 239 |
232 // Instance creation | 240 // Instance creation |
233 static oop create_mirror(KlassHandle k, TRAPS); | 241 static oop create_mirror(KlassHandle k, Handle protection_domain, TRAPS); |
234 static void fixup_mirror(KlassHandle k, TRAPS); | 242 static void fixup_mirror(KlassHandle k, TRAPS); |
235 static oop create_basic_type_mirror(const char* basic_type_name, BasicType type, TRAPS); | 243 static oop create_basic_type_mirror(const char* basic_type_name, BasicType type, TRAPS); |
236 // Conversion | 244 // Conversion |
237 static Klass* as_Klass(oop java_class); | 245 static Klass* as_Klass(oop java_class); |
238 static void set_klass(oop java_class, Klass* klass); | 246 static void set_klass(oop java_class, Klass* klass); |
259 static int klass_offset_in_bytes() { return _klass_offset; } | 267 static int klass_offset_in_bytes() { return _klass_offset; } |
260 static int array_klass_offset_in_bytes() { return _array_klass_offset; } | 268 static int array_klass_offset_in_bytes() { return _array_klass_offset; } |
261 // Support for classRedefinedCount field | 269 // Support for classRedefinedCount field |
262 static int classRedefinedCount(oop the_class_mirror); | 270 static int classRedefinedCount(oop the_class_mirror); |
263 static void set_classRedefinedCount(oop the_class_mirror, int value); | 271 static void set_classRedefinedCount(oop the_class_mirror, int value); |
272 | |
273 // Support for embedded per-class oops | |
274 static oop protection_domain(oop java_class); | |
275 static void set_protection_domain(oop java_class, oop protection_domain); | |
276 static oop init_lock(oop java_class); | |
277 static objArrayOop signers(oop java_class); | |
278 static void set_signers(oop java_class, objArrayOop signers); | |
264 | 279 |
265 static int oop_size(oop java_class); | 280 static int oop_size(oop java_class); |
266 static void set_oop_size(oop java_class, int size); | 281 static void set_oop_size(oop java_class, int size); |
267 static int static_oop_field_count(oop java_class); | 282 static int static_oop_field_count(oop java_class); |
268 static void set_static_oop_field_count(oop java_class, int size); | 283 static void set_static_oop_field_count(oop java_class, int size); |