Mercurial > hg > truffle
comparison src/share/vm/oops/instanceKlass.hpp @ 15052:5e6f29f287d6
added InstanceKlass::_graal_node_class field to accelerate Node.getNodeClass()
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Thu, 10 Apr 2014 00:01:30 +0200 |
parents | 4ca6dc0799b6 |
children | 89152779163c |
comparison
equal
deleted
inserted
replaced
15051:2df054b37edc | 15052:5e6f29f287d6 |
---|---|
239 u2 _minor_version; // minor version number of class file | 239 u2 _minor_version; // minor version number of class file |
240 u2 _major_version; // major version number of class file | 240 u2 _major_version; // major version number of class file |
241 Thread* _init_thread; // Pointer to current thread doing initialization (to handle recusive initialization) | 241 Thread* _init_thread; // Pointer to current thread doing initialization (to handle recusive initialization) |
242 int _vtable_len; // length of Java vtable (in words) | 242 int _vtable_len; // length of Java vtable (in words) |
243 int _itable_len; // length of Java itable (in words) | 243 int _itable_len; // length of Java itable (in words) |
244 #ifdef GRAAL | |
245 // com/oracle/graal/graph/NodeClass instance mirroring this class | |
246 oop _graal_node_class; | |
247 #endif | |
244 OopMapCache* volatile _oop_map_cache; // OopMapCache for all methods in the klass (allocated lazily) | 248 OopMapCache* volatile _oop_map_cache; // OopMapCache for all methods in the klass (allocated lazily) |
245 MemberNameTable* _member_names; // Member names | 249 MemberNameTable* _member_names; // Member names |
246 JNIid* _jni_ids; // First JNI identifier for static fields in this class | 250 JNIid* _jni_ids; // First JNI identifier for static fields in this class |
247 jmethodID* _methods_jmethod_ids; // jmethodIDs corresponding to method_idnum, or NULL if none | 251 jmethodID* _methods_jmethod_ids; // jmethodIDs corresponding to method_idnum, or NULL if none |
248 nmethodBucket* _dependencies; // list of dependent nmethods | 252 nmethodBucket* _dependencies; // list of dependent nmethods |
742 virtual void check_valid_for_instantiation(bool throwError, TRAPS); | 746 virtual void check_valid_for_instantiation(bool throwError, TRAPS); |
743 | 747 |
744 // initialization | 748 // initialization |
745 void call_class_initializer(TRAPS); | 749 void call_class_initializer(TRAPS); |
746 void set_initialization_state_and_notify(ClassState state, TRAPS); | 750 void set_initialization_state_and_notify(ClassState state, TRAPS); |
751 | |
752 #ifdef GRAAL | |
753 // Graal com.oracle.graal.graph.NodeClass mirror | |
754 oop graal_node_class() { return _graal_node_class; } | |
755 void set_graal_node_class(oop m) { klass_oop_store(&_graal_node_class, m); } | |
756 oop* adr_graal_node_class() { return (oop*)&this->_graal_node_class; } | |
757 | |
758 // GC support | |
759 virtual void oops_do(OopClosure* cl); | |
760 #endif | |
747 | 761 |
748 // OopMapCache support | 762 // OopMapCache support |
749 OopMapCache* oop_map_cache() { return _oop_map_cache; } | 763 OopMapCache* oop_map_cache() { return _oop_map_cache; } |
750 void set_oop_map_cache(OopMapCache *cache) { _oop_map_cache = cache; } | 764 void set_oop_map_cache(OopMapCache *cache) { _oop_map_cache = cache; } |
751 void mask_for(methodHandle method, int bci, InterpreterOopMap* entry); | 765 void mask_for(methodHandle method, int bci, InterpreterOopMap* entry); |