< prev index next >

src/hotspot/share/ci/ciInstanceKlass.hpp

Print this page

 99 
100   void print_impl(outputStream* st);
101 
102   ciConstantPoolCache* field_cache();
103 
104   bool is_shared() { return _is_shared; }
105 
106   void compute_shared_init_state();
107   bool compute_shared_has_subklass();
108   int  compute_nonstatic_fields();
109   GrowableArray<ciField*>* compute_nonstatic_fields_impl(GrowableArray<ciField*>* super_fields);
110   bool compute_has_trusted_loader();
111 
112   // Update the init_state for shared klasses
113   void update_if_shared(InstanceKlass::ClassState expected) {
114     if (_is_shared && _init_state != expected) {
115       if (is_loaded()) compute_shared_init_state();
116     }
117   }
118 


119 public:
120   // Has this klass been initialized?
121   bool                   is_initialized() {
122     update_if_shared(InstanceKlass::fully_initialized);
123     return _init_state == InstanceKlass::fully_initialized;
124   }
125   bool                   is_not_initialized() {
126     update_if_shared(InstanceKlass::fully_initialized);
127     return _init_state < InstanceKlass::being_initialized;
128   }
129   // Is this klass being initialized?
130   bool                   is_being_initialized() {
131     update_if_shared(InstanceKlass::being_initialized);
132     return _init_state == InstanceKlass::being_initialized;
133   }
134   // Has this klass been linked?
135   bool                   is_linked() {
136     update_if_shared(InstanceKlass::linked);
137     return _init_state >= InstanceKlass::linked;
138   }

 99 
100   void print_impl(outputStream* st);
101 
102   ciConstantPoolCache* field_cache();
103 
104   bool is_shared() { return _is_shared; }
105 
106   void compute_shared_init_state();
107   bool compute_shared_has_subklass();
108   int  compute_nonstatic_fields();
109   GrowableArray<ciField*>* compute_nonstatic_fields_impl(GrowableArray<ciField*>* super_fields);
110   bool compute_has_trusted_loader();
111 
112   // Update the init_state for shared klasses
113   void update_if_shared(InstanceKlass::ClassState expected) {
114     if (_is_shared && _init_state != expected) {
115       if (is_loaded()) compute_shared_init_state();
116     }
117   }
118 
119   static InstanceKlass::ClassState compute_init_state(InstanceKlass* ik);
120 
121 public:
122   // Has this klass been initialized?
123   bool                   is_initialized() {
124     update_if_shared(InstanceKlass::fully_initialized);
125     return _init_state == InstanceKlass::fully_initialized;
126   }
127   bool                   is_not_initialized() {
128     update_if_shared(InstanceKlass::fully_initialized);
129     return _init_state < InstanceKlass::being_initialized;
130   }
131   // Is this klass being initialized?
132   bool                   is_being_initialized() {
133     update_if_shared(InstanceKlass::being_initialized);
134     return _init_state == InstanceKlass::being_initialized;
135   }
136   // Has this klass been linked?
137   bool                   is_linked() {
138     update_if_shared(InstanceKlass::linked);
139     return _init_state >= InstanceKlass::linked;
140   }
< prev index next >