src/share/vm/code/nmethod.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hs-comp2 Sdiff src/share/vm/code

src/share/vm/code/nmethod.hpp

Print this page




 431   address entry_point() const                     { return _entry_point;             } // normal entry point
 432   address verified_entry_point() const            { return _verified_entry_point;    } // if klass is correct
 433 
 434   // flag accessing and manipulation
 435   bool  is_in_use() const                         { return _state == in_use; }
 436   bool  is_alive() const                          { return _state == in_use || _state == not_entrant; }
 437   bool  is_not_entrant() const                    { return _state == not_entrant; }
 438   bool  is_zombie() const                         { return _state == zombie; }
 439   bool  is_unloaded() const                       { return _state == unloaded;   }
 440 
 441 #if INCLUDE_RTM_OPT
 442   // rtm state accessing and manipulating
 443   RTMState  rtm_state() const                     { return _rtm_state; }
 444   void set_rtm_state(RTMState state)              { _rtm_state = state; }
 445 #endif
 446 
 447   // Make the nmethod non entrant. The nmethod will continue to be
 448   // alive.  It is used when an uncommon trap happens.  Returns true
 449   // if this thread changed the state of the nmethod or false if
 450   // another thread performed the transition.
 451   bool  make_not_entrant() { return make_not_entrant_or_zombie(not_entrant); }



 452   bool  make_zombie()      { return make_not_entrant_or_zombie(zombie); }
 453 
 454   // used by jvmti to track if the unload event has been reported
 455   bool  unload_reported()                         { return _unload_reported; }
 456   void  set_unload_reported()                     { _unload_reported = true; }
 457 
 458   void set_unloading_next(nmethod* next)          { _unloading_next = next; }
 459   nmethod* unloading_next()                       { return _unloading_next; }
 460 
 461   static unsigned char global_unloading_clock()   { return _global_unloading_clock; }
 462   static void increase_unloading_clock();
 463 
 464   void set_unloading_clock(unsigned char unloading_clock);
 465   unsigned char unloading_clock();
 466 
 467   bool  is_marked_for_deoptimization() const      { return _marked_for_deoptimization; }
 468   void  mark_for_deoptimization()                 { _marked_for_deoptimization = true; }
 469 
 470   void  make_unloaded(BoolObjectClosure* is_alive, oop cause);
 471 




 431   address entry_point() const                     { return _entry_point;             } // normal entry point
 432   address verified_entry_point() const            { return _verified_entry_point;    } // if klass is correct
 433 
 434   // flag accessing and manipulation
 435   bool  is_in_use() const                         { return _state == in_use; }
 436   bool  is_alive() const                          { return _state == in_use || _state == not_entrant; }
 437   bool  is_not_entrant() const                    { return _state == not_entrant; }
 438   bool  is_zombie() const                         { return _state == zombie; }
 439   bool  is_unloaded() const                       { return _state == unloaded;   }
 440 
 441 #if INCLUDE_RTM_OPT
 442   // rtm state accessing and manipulating
 443   RTMState  rtm_state() const                     { return _rtm_state; }
 444   void set_rtm_state(RTMState state)              { _rtm_state = state; }
 445 #endif
 446 
 447   // Make the nmethod non entrant. The nmethod will continue to be
 448   // alive.  It is used when an uncommon trap happens.  Returns true
 449   // if this thread changed the state of the nmethod or false if
 450   // another thread performed the transition.
 451   bool  make_not_entrant() {
 452     assert(!method()->is_method_handle_intrinsic(), "Cannot make MH intrinsic not entrant");
 453     return make_not_entrant_or_zombie(not_entrant);
 454   }
 455   bool  make_zombie()      { return make_not_entrant_or_zombie(zombie); }
 456 
 457   // used by jvmti to track if the unload event has been reported
 458   bool  unload_reported()                         { return _unload_reported; }
 459   void  set_unload_reported()                     { _unload_reported = true; }
 460 
 461   void set_unloading_next(nmethod* next)          { _unloading_next = next; }
 462   nmethod* unloading_next()                       { return _unloading_next; }
 463 
 464   static unsigned char global_unloading_clock()   { return _global_unloading_clock; }
 465   static void increase_unloading_clock();
 466 
 467   void set_unloading_clock(unsigned char unloading_clock);
 468   unsigned char unloading_clock();
 469 
 470   bool  is_marked_for_deoptimization() const      { return _marked_for_deoptimization; }
 471   void  mark_for_deoptimization()                 { _marked_for_deoptimization = true; }
 472 
 473   void  make_unloaded(BoolObjectClosure* is_alive, oop cause);
 474 


src/share/vm/code/nmethod.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File