197 void set_has_method_handle_invokes(bool z) { _has_method_handle_invokes = z; }
198
199 bool is_lazy_critical_native() const { return _lazy_critical_native; }
200 void set_lazy_critical_native(bool z) { _lazy_critical_native = z; }
201
202 bool has_wide_vectors() const { return _has_wide_vectors; }
203 void set_has_wide_vectors(bool z) { _has_wide_vectors = z; }
204
205 enum { not_installed = -1, // in construction, only the owner doing the construction is
206 // allowed to advance state
207 in_use = 0, // executable nmethod
208 not_used = 1, // not entrant, but revivable
209 not_entrant = 2, // marked for deoptimization but activations may still exist,
210 // will be transformed to zombie when all activations are gone
211 unloaded = 3, // there should be no activations, should not be called, will be
212 // transformed to zombie by the sweeper, when not "locked in vm".
213 zombie = 4 // no activations exist, nmethod is ready for purge
214 };
215
216 virtual bool is_in_use() const = 0;
217 virtual int comp_level() const = 0;
218 virtual int compile_id() const = 0;
219
220 virtual address verified_entry_point() const = 0;
221 virtual void log_identity(xmlStream* log) const = 0;
222 virtual void log_state_change() const = 0;
223 virtual bool make_not_used() = 0;
224 virtual bool make_not_entrant() = 0;
225 virtual bool make_entrant() = 0;
226 virtual address entry_point() const = 0;
227 virtual bool make_zombie() = 0;
228 virtual bool is_osr_method() const = 0;
229 virtual int osr_entry_bci() const = 0;
230 Method* method() const { return _method; }
231 virtual void print_pcs() = 0;
232 bool is_native_method() const { return _method != NULL && _method->is_native(); }
233 bool is_java_method() const { return _method != NULL && !_method->is_native(); }
234
235 // ScopeDesc retrieval operation
236 PcDesc* pc_desc_at(address pc) { return find_pc_desc(pc, false); }
|
197 void set_has_method_handle_invokes(bool z) { _has_method_handle_invokes = z; }
198
199 bool is_lazy_critical_native() const { return _lazy_critical_native; }
200 void set_lazy_critical_native(bool z) { _lazy_critical_native = z; }
201
202 bool has_wide_vectors() const { return _has_wide_vectors; }
203 void set_has_wide_vectors(bool z) { _has_wide_vectors = z; }
204
205 enum { not_installed = -1, // in construction, only the owner doing the construction is
206 // allowed to advance state
207 in_use = 0, // executable nmethod
208 not_used = 1, // not entrant, but revivable
209 not_entrant = 2, // marked for deoptimization but activations may still exist,
210 // will be transformed to zombie when all activations are gone
211 unloaded = 3, // there should be no activations, should not be called, will be
212 // transformed to zombie by the sweeper, when not "locked in vm".
213 zombie = 4 // no activations exist, nmethod is ready for purge
214 };
215
216 virtual bool is_in_use() const = 0;
217 virtual bool is_not_installed() const = 0;
218 virtual int comp_level() const = 0;
219 virtual int compile_id() const = 0;
220
221 virtual address verified_entry_point() const = 0;
222 virtual void log_identity(xmlStream* log) const = 0;
223 virtual void log_state_change() const = 0;
224 virtual bool make_not_used() = 0;
225 virtual bool make_not_entrant() = 0;
226 virtual bool make_entrant() = 0;
227 virtual address entry_point() const = 0;
228 virtual bool make_zombie() = 0;
229 virtual bool is_osr_method() const = 0;
230 virtual int osr_entry_bci() const = 0;
231 Method* method() const { return _method; }
232 virtual void print_pcs() = 0;
233 bool is_native_method() const { return _method != NULL && _method->is_native(); }
234 bool is_java_method() const { return _method != NULL && !_method->is_native(); }
235
236 // ScopeDesc retrieval operation
237 PcDesc* pc_desc_at(address pc) { return find_pc_desc(pc, false); }
|