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

src/share/vm/oops/method.hpp

Print this page




 907 
 908   // Printing
 909   void print_short_name(outputStream* st = tty); // prints as klassname::methodname; Exposed so field engineers can debug VM
 910 #if INCLUDE_JVMTI
 911   void print_name(outputStream* st = tty); // prints as "virtual void foo(int)"; exposed for TraceRedefineClasses
 912 #else
 913   void print_name(outputStream* st = tty)        PRODUCT_RETURN; // prints as "virtual void foo(int)"
 914 #endif
 915 
 916   // Helper routine used for method sorting
 917   static void sort_methods(Array<Method*>* methods, bool idempotent = false, bool set_idnums = true);
 918 
 919   // Deallocation function for redefine classes or if an error occurs
 920   void deallocate_contents(ClassLoaderData* loader_data);
 921 
 922   // Printing
 923 #ifndef PRODUCT
 924   void print_on(outputStream* st) const;
 925 #endif
 926   void print_value_on(outputStream* st) const;

 927 
 928   const char* internal_name() const { return "{method}"; }
 929 
 930   // Check for valid method pointer
 931   static bool has_method_vptr(const void* ptr);
 932   bool is_valid_method() const;
 933 
 934   // Verify
 935   void verify() { verify_on(tty); }
 936   void verify_on(outputStream* st);
 937 
 938  private:
 939 
 940   // Inlined elements
 941   address* native_function_addr() const          { assert(is_native(), "must be native"); return (address*) (this+1); }
 942   address* signature_handler_addr() const        { return native_function_addr() + 1; }
 943 };
 944 
 945 
 946 // Utility class for compressing line number tables




 907 
 908   // Printing
 909   void print_short_name(outputStream* st = tty); // prints as klassname::methodname; Exposed so field engineers can debug VM
 910 #if INCLUDE_JVMTI
 911   void print_name(outputStream* st = tty); // prints as "virtual void foo(int)"; exposed for TraceRedefineClasses
 912 #else
 913   void print_name(outputStream* st = tty)        PRODUCT_RETURN; // prints as "virtual void foo(int)"
 914 #endif
 915 
 916   // Helper routine used for method sorting
 917   static void sort_methods(Array<Method*>* methods, bool idempotent = false, bool set_idnums = true);
 918 
 919   // Deallocation function for redefine classes or if an error occurs
 920   void deallocate_contents(ClassLoaderData* loader_data);
 921 
 922   // Printing
 923 #ifndef PRODUCT
 924   void print_on(outputStream* st) const;
 925 #endif
 926   void print_value_on(outputStream* st) const;
 927   void print_linkage_flags(outputStream* st) PRODUCT_RETURN;
 928 
 929   const char* internal_name() const { return "{method}"; }
 930 
 931   // Check for valid method pointer
 932   static bool has_method_vptr(const void* ptr);
 933   bool is_valid_method() const;
 934 
 935   // Verify
 936   void verify() { verify_on(tty); }
 937   void verify_on(outputStream* st);
 938 
 939  private:
 940 
 941   // Inlined elements
 942   address* native_function_addr() const          { assert(is_native(), "must be native"); return (address*) (this+1); }
 943   address* signature_handler_addr() const        { return native_function_addr() + 1; }
 944 };
 945 
 946 
 947 // 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