< prev index next >

src/hotspot/share/oops/method.hpp

Print this page
rev 55090 : secret-sfac


 652   void set_has_monitor_bytecodes()               { _access_flags.set_has_monitor_bytecodes(); }
 653 
 654   // monitor matching. This returns a conservative estimate of whether the monitorenter/monitorexit bytecodes
 655   // propererly nest in the method. It might return false, even though they actually nest properly, since the info.
 656   // has not been computed yet.
 657   bool guaranteed_monitor_matching() const       { return access_flags().is_monitor_matching(); }
 658   void set_guaranteed_monitor_matching()         { _access_flags.set_monitor_matching(); }
 659 
 660   // returns true if the method is an accessor function (setter/getter).
 661   bool is_accessor() const;
 662 
 663   // returns true if the method is a getter
 664   bool is_getter() const;
 665 
 666   // returns true if the method is a setter
 667   bool is_setter() const;
 668 
 669   // returns true if the method does nothing but return a constant of primitive type
 670   bool is_constant_getter() const;
 671 
 672   // returns true if the method is an initializer (<init> or <clinit>).
 673   bool is_initializer() const;
 674 
 675   // returns true if the method is static OR if the classfile version < 51
 676   bool has_valid_initializer_flags() const;
 677 
 678   // returns true if the method name is <clinit> and the method has
 679   // valid static initializer flags.
 680   bool is_static_initializer() const;







 681 
 682   // returns true if the method name is <init>
 683   bool is_object_initializer() const;
 684 
 685   // compiled code support
 686   // NOTE: code() is inherently racy as deopt can be clearing code
 687   // simultaneously. Use with caution.
 688   bool has_compiled_code() const;
 689 
 690 #ifdef TIERED
 691   bool has_aot_code() const                      { return aot_code() != NULL; }
 692 #endif
 693 
 694   // sizing
 695   static int header_size()                       {
 696     return align_up((int)sizeof(Method), wordSize) / wordSize;
 697   }
 698   static int size(bool is_native);
 699   int size() const                               { return method_size(); }
 700 #if INCLUDE_SERVICES
 701   void collect_statistics(KlassSizeStats *sz) const;
 702 #endif
 703   void log_touched(TRAPS);




 652   void set_has_monitor_bytecodes()               { _access_flags.set_has_monitor_bytecodes(); }
 653 
 654   // monitor matching. This returns a conservative estimate of whether the monitorenter/monitorexit bytecodes
 655   // propererly nest in the method. It might return false, even though they actually nest properly, since the info.
 656   // has not been computed yet.
 657   bool guaranteed_monitor_matching() const       { return access_flags().is_monitor_matching(); }
 658   void set_guaranteed_monitor_matching()         { _access_flags.set_monitor_matching(); }
 659 
 660   // returns true if the method is an accessor function (setter/getter).
 661   bool is_accessor() const;
 662 
 663   // returns true if the method is a getter
 664   bool is_getter() const;
 665 
 666   // returns true if the method is a setter
 667   bool is_setter() const;
 668 
 669   // returns true if the method does nothing but return a constant of primitive type
 670   bool is_constant_getter() const;
 671 






 672   // returns true if the method name is <clinit> and the method has
 673   // valid static initializer flags.
 674   bool is_class_initializer() const;
 675 
 676   // returns true if the method name is <init> and the method is not a static factory
 677   bool is_object_constructor() const;
 678 
 679   // returns true if the method is an object constructor or class initializer
 680   // (non-static <init> or <clinit>), but false for factories (static <init>).
 681   bool is_object_constructor_or_class_initializer() const;
 682 
 683   // returns true if the method name is <init> and the method is static
 684   bool is_static_init_factory() const;
 685 
 686   // compiled code support
 687   // NOTE: code() is inherently racy as deopt can be clearing code
 688   // simultaneously. Use with caution.
 689   bool has_compiled_code() const;
 690 
 691 #ifdef TIERED
 692   bool has_aot_code() const                      { return aot_code() != NULL; }
 693 #endif
 694 
 695   // sizing
 696   static int header_size()                       {
 697     return align_up((int)sizeof(Method), wordSize) / wordSize;
 698   }
 699   static int size(bool is_native);
 700   int size() const                               { return method_size(); }
 701 #if INCLUDE_SERVICES
 702   void collect_statistics(KlassSizeStats *sz) const;
 703 #endif
 704   void log_touched(TRAPS);


< prev index next >