src/hotspot/share/code/nmethod.hpp
changeset 52659 8b26bd8b1832
parent 52411 35ebea32a23c
child 52781 436097b038a1
equal deleted inserted replaced
52658:2d18e5ed0f8d 52659:8b26bd8b1832
   156   // set to [(ReservedCodeCacheSize / (1024 * 1024)) * 2] each time the method
   156   // set to [(ReservedCodeCacheSize / (1024 * 1024)) * 2] each time the method
   157   // is active while stack scanning (mark_active_nmethods()). The hotness
   157   // is active while stack scanning (mark_active_nmethods()). The hotness
   158   // counter is decreased (by 1) while sweeping.
   158   // counter is decreased (by 1) while sweeping.
   159   int _hotness_counter;
   159   int _hotness_counter;
   160 
   160 
       
   161   // Local state used to keep track of whether unloading is happening or not
       
   162   volatile uint8_t _is_unloading_state;
       
   163 
   161   // These are used for compiled synchronized native methods to
   164   // These are used for compiled synchronized native methods to
   162   // locate the owner and stack slot for the BasicLock so that we can
   165   // locate the owner and stack slot for the BasicLock so that we can
   163   // properly revoke the bias of the owner if necessary. They are
   166   // properly revoke the bias of the owner if necessary. They are
   164   // needed because there is no debug information for compiled native
   167   // needed because there is no debug information for compiled native
   165   // wrappers and the oop maps are insufficient to allow
   168   // wrappers and the oop maps are insufficient to allow
   321   bool  is_alive() const                          { return _state < zombie; }
   324   bool  is_alive() const                          { return _state < zombie; }
   322   bool  is_not_entrant() const                    { return _state == not_entrant; }
   325   bool  is_not_entrant() const                    { return _state == not_entrant; }
   323   bool  is_zombie() const                         { return _state == zombie; }
   326   bool  is_zombie() const                         { return _state == zombie; }
   324   bool  is_unloaded() const                       { return _state == unloaded; }
   327   bool  is_unloaded() const                       { return _state == unloaded; }
   325 
   328 
       
   329   void clear_unloading_state();
       
   330   virtual bool is_unloading();
   326   virtual void do_unloading(bool unloading_occurred);
   331   virtual void do_unloading(bool unloading_occurred);
   327 
   332 
   328 #if INCLUDE_RTM_OPT
   333 #if INCLUDE_RTM_OPT
   329   // rtm state accessing and manipulating
   334   // rtm state accessing and manipulating
   330   RTMState  rtm_state() const                     { return _rtm_state; }
   335   RTMState  rtm_state() const                     { return _rtm_state; }