< prev index next >

src/share/vm/oops/method.hpp

Print this page




 650   bool has_valid_initializer_flags() const;
 651 
 652   // returns true if the method name is <clinit> and the method has
 653   // valid static initializer flags.
 654   bool is_static_initializer() const;
 655 
 656   // returns true if the method name is <init>
 657   bool is_object_initializer() const;
 658 
 659   // compiled code support
 660   // NOTE: code() is inherently racy as deopt can be clearing code
 661   // simultaneously. Use with caution.
 662   bool has_compiled_code() const                 { return code() != NULL; }
 663 
 664 #ifdef TIERED
 665   bool has_aot_code() const                      { return aot_code() != NULL; }
 666 #endif
 667 
 668   // sizing
 669   static int header_size()                       {
 670     return align_size_up((int)sizeof(Method), wordSize) / wordSize;
 671   }
 672   static int size(bool is_native);
 673   int size() const                               { return method_size(); }
 674 #if INCLUDE_SERVICES
 675   void collect_statistics(KlassSizeStats *sz) const;
 676 #endif
 677   void log_touched(TRAPS);
 678   static void print_touched_methods(outputStream* out);
 679 
 680   // interpreter support
 681   static ByteSize const_offset()                 { return byte_offset_of(Method, _constMethod       ); }
 682   static ByteSize access_flags_offset()          { return byte_offset_of(Method, _access_flags      ); }
 683   static ByteSize from_compiled_offset()         { return byte_offset_of(Method, _from_compiled_entry); }
 684   static ByteSize code_offset()                  { return byte_offset_of(Method, _code); }
 685   static ByteSize method_data_offset()           {
 686     return byte_offset_of(Method, _method_data);
 687   }
 688   static ByteSize method_counters_offset()       {
 689     return byte_offset_of(Method, _method_counters);
 690   }




 650   bool has_valid_initializer_flags() const;
 651 
 652   // returns true if the method name is <clinit> and the method has
 653   // valid static initializer flags.
 654   bool is_static_initializer() const;
 655 
 656   // returns true if the method name is <init>
 657   bool is_object_initializer() const;
 658 
 659   // compiled code support
 660   // NOTE: code() is inherently racy as deopt can be clearing code
 661   // simultaneously. Use with caution.
 662   bool has_compiled_code() const                 { return code() != NULL; }
 663 
 664 #ifdef TIERED
 665   bool has_aot_code() const                      { return aot_code() != NULL; }
 666 #endif
 667 
 668   // sizing
 669   static int header_size()                       {
 670     return align_up((int)sizeof(Method), wordSize) / wordSize;
 671   }
 672   static int size(bool is_native);
 673   int size() const                               { return method_size(); }
 674 #if INCLUDE_SERVICES
 675   void collect_statistics(KlassSizeStats *sz) const;
 676 #endif
 677   void log_touched(TRAPS);
 678   static void print_touched_methods(outputStream* out);
 679 
 680   // interpreter support
 681   static ByteSize const_offset()                 { return byte_offset_of(Method, _constMethod       ); }
 682   static ByteSize access_flags_offset()          { return byte_offset_of(Method, _access_flags      ); }
 683   static ByteSize from_compiled_offset()         { return byte_offset_of(Method, _from_compiled_entry); }
 684   static ByteSize code_offset()                  { return byte_offset_of(Method, _code); }
 685   static ByteSize method_data_offset()           {
 686     return byte_offset_of(Method, _method_data);
 687   }
 688   static ByteSize method_counters_offset()       {
 689     return byte_offset_of(Method, _method_counters);
 690   }


< prev index next >