206 // allowed to advance state |
206 // allowed to advance state |
207 in_use = 0, // executable nmethod |
207 in_use = 0, // executable nmethod |
208 not_used = 1, // not entrant, but revivable |
208 not_used = 1, // not entrant, but revivable |
209 not_entrant = 2, // marked for deoptimization but activations may still exist, |
209 not_entrant = 2, // marked for deoptimization but activations may still exist, |
210 // will be transformed to zombie when all activations are gone |
210 // will be transformed to zombie when all activations are gone |
211 zombie = 3, // no activations exist, nmethod is ready for purge |
211 unloaded = 3, // there should be no activations, should not be called, will be |
212 unloaded = 4 // there should be no activations, should not be called, |
212 // transformed to zombie by the sweeper, when not "locked in vm". |
213 // will be transformed to zombie immediately |
213 zombie = 4 // no activations exist, nmethod is ready for purge |
214 }; |
214 }; |
215 |
215 |
216 virtual bool is_in_use() const = 0; |
216 virtual bool is_in_use() const = 0; |
217 virtual int comp_level() const = 0; |
217 virtual int comp_level() const = 0; |
218 virtual int compile_id() const = 0; |
218 virtual int compile_id() const = 0; |