946
947 bool is_not_c1_osr_compilable() const { return is_not_c1_compilable(); } // don't waste an accessFlags bit
948 void set_not_c1_osr_compilable() { set_not_c1_compilable(); } // don't waste an accessFlags bit
949 void clear_not_c1_osr_compilable() { clear_not_c1_compilable(); } // don't waste an accessFlags bit
950 bool is_not_c2_osr_compilable() const { return access_flags().is_not_c2_osr_compilable(); }
951 void set_not_c2_osr_compilable() { _access_flags.set_not_c2_osr_compilable(); }
952 void clear_not_c2_osr_compilable() { _access_flags.clear_not_c2_osr_compilable(); }
953
954 // Background compilation support
955 bool queued_for_compilation() const { return access_flags().queued_for_compilation(); }
956 void set_queued_for_compilation() { _access_flags.set_queued_for_compilation(); }
957 void clear_queued_for_compilation() { _access_flags.clear_queued_for_compilation(); }
958
959 // Resolve all classes in signature, return 'true' if successful
960 static bool load_signature_classes(const methodHandle& m, TRAPS);
961
962 // Return if true if not all classes references in signature, including return type, has been loaded
963 static bool has_unloaded_classes_in_signature(const methodHandle& m, TRAPS);
964
965 // Printing
966 void print_short_name(outputStream* st = tty); // prints as klassname::methodname; Exposed so field engineers can debug VM
967 #if INCLUDE_JVMTI
968 void print_name(outputStream* st = tty); // prints as "virtual void foo(int)"; exposed for TraceRedefineClasses
969 #else
970 void print_name(outputStream* st = tty) PRODUCT_RETURN; // prints as "virtual void foo(int)"
971 #endif
972
973 // Helper routine used for method sorting
974 static void sort_methods(Array<Method*>* methods, bool idempotent = false, bool set_idnums = true);
975
976 // Deallocation function for redefine classes or if an error occurs
977 void deallocate_contents(ClassLoaderData* loader_data);
978
979 // Printing
980 #ifndef PRODUCT
981 void print_on(outputStream* st) const;
982 #endif
983 void print_value_on(outputStream* st) const;
984 void print_linkage_flags(outputStream* st) PRODUCT_RETURN;
985
986 const char* internal_name() const { return "{method}"; }
987
988 // Check for valid method pointer
989 static bool has_method_vptr(const void* ptr);
990 bool is_valid_method() const;
|
946
947 bool is_not_c1_osr_compilable() const { return is_not_c1_compilable(); } // don't waste an accessFlags bit
948 void set_not_c1_osr_compilable() { set_not_c1_compilable(); } // don't waste an accessFlags bit
949 void clear_not_c1_osr_compilable() { clear_not_c1_compilable(); } // don't waste an accessFlags bit
950 bool is_not_c2_osr_compilable() const { return access_flags().is_not_c2_osr_compilable(); }
951 void set_not_c2_osr_compilable() { _access_flags.set_not_c2_osr_compilable(); }
952 void clear_not_c2_osr_compilable() { _access_flags.clear_not_c2_osr_compilable(); }
953
954 // Background compilation support
955 bool queued_for_compilation() const { return access_flags().queued_for_compilation(); }
956 void set_queued_for_compilation() { _access_flags.set_queued_for_compilation(); }
957 void clear_queued_for_compilation() { _access_flags.clear_queued_for_compilation(); }
958
959 // Resolve all classes in signature, return 'true' if successful
960 static bool load_signature_classes(const methodHandle& m, TRAPS);
961
962 // Return if true if not all classes references in signature, including return type, has been loaded
963 static bool has_unloaded_classes_in_signature(const methodHandle& m, TRAPS);
964
965 // Printing
966 void print_short_name(outputStream* st = tty) const; // prints as klassname::methodname; Exposed so field engineers can debug VM
967 #if INCLUDE_JVMTI
968 void print_name(outputStream* st = tty) const; // prints as "virtual void foo(int)"; exposed for TraceRedefineClasses
969 #else
970 void print_name(outputStream* st = tty) const PRODUCT_RETURN; // prints as "virtual void foo(int)"
971 #endif
972
973 // Helper routine used for method sorting
974 static void sort_methods(Array<Method*>* methods, bool idempotent = false, bool set_idnums = true);
975
976 // Deallocation function for redefine classes or if an error occurs
977 void deallocate_contents(ClassLoaderData* loader_data);
978
979 // Printing
980 #ifndef PRODUCT
981 void print_on(outputStream* st) const;
982 #endif
983 void print_value_on(outputStream* st) const;
984 void print_linkage_flags(outputStream* st) PRODUCT_RETURN;
985
986 const char* internal_name() const { return "{method}"; }
987
988 // Check for valid method pointer
989 static bool has_method_vptr(const void* ptr);
990 bool is_valid_method() const;
|