src/share/vm/oops/method.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 8141564.04 Sdiff src/share/vm/oops

src/share/vm/oops/method.hpp

Print this page




 922 
 923   // Printing
 924   void print_short_name(outputStream* st = tty); // prints as klassname::methodname; Exposed so field engineers can debug VM
 925 #if INCLUDE_JVMTI
 926   void print_name(outputStream* st = tty); // prints as "virtual void foo(int)"; exposed for TraceRedefineClasses
 927 #else
 928   void print_name(outputStream* st = tty)        PRODUCT_RETURN; // prints as "virtual void foo(int)"
 929 #endif
 930 
 931   // Helper routine used for method sorting
 932   static void sort_methods(Array<Method*>* methods, bool idempotent = false, bool set_idnums = true);
 933 
 934   // Deallocation function for redefine classes or if an error occurs
 935   void deallocate_contents(ClassLoaderData* loader_data);
 936 
 937   // Printing
 938 #ifndef PRODUCT
 939   void print_on(outputStream* st) const;
 940 #endif
 941   void print_value_on(outputStream* st) const;

 942 
 943   const char* internal_name() const { return "{method}"; }
 944 
 945   // Check for valid method pointer
 946   static bool has_method_vptr(const void* ptr);
 947   bool is_valid_method() const;
 948 
 949   // Verify
 950   void verify() { verify_on(tty); }
 951   void verify_on(outputStream* st);
 952 
 953  private:
 954 
 955   // Inlined elements
 956   address* native_function_addr() const          { assert(is_native(), "must be native"); return (address*) (this+1); }
 957   address* signature_handler_addr() const        { return native_function_addr() + 1; }
 958 };
 959 
 960 
 961 // Utility class for compressing line number tables




 922 
 923   // Printing
 924   void print_short_name(outputStream* st = tty); // prints as klassname::methodname; Exposed so field engineers can debug VM
 925 #if INCLUDE_JVMTI
 926   void print_name(outputStream* st = tty); // prints as "virtual void foo(int)"; exposed for TraceRedefineClasses
 927 #else
 928   void print_name(outputStream* st = tty)        PRODUCT_RETURN; // prints as "virtual void foo(int)"
 929 #endif
 930 
 931   // Helper routine used for method sorting
 932   static void sort_methods(Array<Method*>* methods, bool idempotent = false, bool set_idnums = true);
 933 
 934   // Deallocation function for redefine classes or if an error occurs
 935   void deallocate_contents(ClassLoaderData* loader_data);
 936 
 937   // Printing
 938 #ifndef PRODUCT
 939   void print_on(outputStream* st) const;
 940 #endif
 941   void print_value_on(outputStream* st) const;
 942   void print_linkage_flags(outputStream* st) PRODUCT_RETURN;
 943 
 944   const char* internal_name() const { return "{method}"; }
 945 
 946   // Check for valid method pointer
 947   static bool has_method_vptr(const void* ptr);
 948   bool is_valid_method() const;
 949 
 950   // Verify
 951   void verify() { verify_on(tty); }
 952   void verify_on(outputStream* st);
 953 
 954  private:
 955 
 956   // Inlined elements
 957   address* native_function_addr() const          { assert(is_native(), "must be native"); return (address*) (this+1); }
 958   address* signature_handler_addr() const        { return native_function_addr() + 1; }
 959 };
 960 
 961 
 962 // Utility class for compressing line number tables


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