comparison src/share/vm/oops/instanceKlass.hpp @ 17891:b6a2ba7d3ea7 hs25.20-b11

Merge
author amurillo
date Thu, 17 Apr 2014 16:09:07 -0700
parents 386dd1c71858
children 52b4284cb496 2c6ef90f030a 9906d432d6db
comparison
equal deleted inserted replaced
17862:70dc2c030c69 17891:b6a2ba7d3ea7
516 Method* find_method(Symbol* name, Symbol* signature) const; 516 Method* find_method(Symbol* name, Symbol* signature) const;
517 static Method* find_method(Array<Method*>* methods, Symbol* name, Symbol* signature); 517 static Method* find_method(Array<Method*>* methods, Symbol* name, Symbol* signature);
518 static Method* find_instance_method(Array<Method*>* methods, Symbol* name, Symbol* signature); 518 static Method* find_instance_method(Array<Method*>* methods, Symbol* name, Symbol* signature);
519 519
520 // find a local method index in default_methods (returns -1 if not found) 520 // find a local method index in default_methods (returns -1 if not found)
521 static int find_method_index(Array<Method*>* methods, Symbol* name, Symbol* signature); 521 static int find_method_index(Array<Method*>* methods, Symbol* name, Symbol* signature, bool skipping_overpass);
522 522
523 // lookup operation (returns NULL if not found) 523 // lookup operation (returns NULL if not found)
524 Method* uncached_lookup_method(Symbol* name, Symbol* signature) const; 524 Method* uncached_lookup_method(Symbol* name, Symbol* signature, MethodLookupMode mode) const;
525 525
526 // lookup a method in all the interfaces that this class implements 526 // lookup a method in all the interfaces that this class implements
527 // (returns NULL if not found) 527 // (returns NULL if not found)
528 Method* lookup_method_in_all_interfaces(Symbol* name, Symbol* signature, bool skip_default_methods) const; 528 Method* lookup_method_in_all_interfaces(Symbol* name, Symbol* signature, MethodLookupMode mode) const;
529 529
530 // lookup a method in local defaults then in all interfaces 530 // lookup a method in local defaults then in all interfaces
531 // (returns NULL if not found) 531 // (returns NULL if not found)
532 Method* lookup_method_in_ordered_interfaces(Symbol* name, Symbol* signature) const; 532 Method* lookup_method_in_ordered_interfaces(Symbol* name, Symbol* signature) const;
533 533
828 bool oop_is_instance_slow() const { return true; } 828 bool oop_is_instance_slow() const { return true; }
829 829
830 // Iterators 830 // Iterators
831 void do_local_static_fields(FieldClosure* cl); 831 void do_local_static_fields(FieldClosure* cl);
832 void do_nonstatic_fields(FieldClosure* cl); // including inherited fields 832 void do_nonstatic_fields(FieldClosure* cl); // including inherited fields
833 void do_local_static_fields(void f(fieldDescriptor*, TRAPS), TRAPS); 833 void do_local_static_fields(void f(fieldDescriptor*, Handle, TRAPS), Handle, TRAPS);
834 834
835 void methods_do(void f(Method* method)); 835 void methods_do(void f(Method* method));
836 void array_klasses_do(void f(Klass* k)); 836 void array_klasses_do(void f(Klass* k));
837 void array_klasses_do(void f(Klass* k, TRAPS), TRAPS); 837 void array_klasses_do(void f(Klass* k, TRAPS), TRAPS);
838 bool super_types_do(SuperTypeClosure* blk); 838 bool super_types_do(SuperTypeClosure* blk);
1036 static void initialize_impl (instanceKlassHandle this_oop, TRAPS); 1036 static void initialize_impl (instanceKlassHandle this_oop, TRAPS);
1037 static void eager_initialize_impl (instanceKlassHandle this_oop); 1037 static void eager_initialize_impl (instanceKlassHandle this_oop);
1038 static void set_initialization_state_and_notify_impl (instanceKlassHandle this_oop, ClassState state, TRAPS); 1038 static void set_initialization_state_and_notify_impl (instanceKlassHandle this_oop, ClassState state, TRAPS);
1039 static void call_class_initializer_impl (instanceKlassHandle this_oop, TRAPS); 1039 static void call_class_initializer_impl (instanceKlassHandle this_oop, TRAPS);
1040 static Klass* array_klass_impl (instanceKlassHandle this_oop, bool or_null, int n, TRAPS); 1040 static Klass* array_klass_impl (instanceKlassHandle this_oop, bool or_null, int n, TRAPS);
1041 static void do_local_static_fields_impl (instanceKlassHandle this_oop, void f(fieldDescriptor* fd, TRAPS), TRAPS); 1041 static void do_local_static_fields_impl (instanceKlassHandle this_oop, void f(fieldDescriptor* fd, Handle, TRAPS), Handle, TRAPS);
1042 /* jni_id_for_impl for jfieldID only */ 1042 /* jni_id_for_impl for jfieldID only */
1043 static JNIid* jni_id_for_impl (instanceKlassHandle this_oop, int offset); 1043 static JNIid* jni_id_for_impl (instanceKlassHandle this_oop, int offset);
1044 1044
1045 // Returns the array class for the n'th dimension 1045 // Returns the array class for the n'th dimension
1046 Klass* array_klass_impl(bool or_null, int n, TRAPS); 1046 Klass* array_klass_impl(bool or_null, int n, TRAPS);
1047 1047
1048 // Returns the array class with this class as element type 1048 // Returns the array class with this class as element type
1049 Klass* array_klass_impl(bool or_null, TRAPS); 1049 Klass* array_klass_impl(bool or_null, TRAPS);
1050
1051 // find a local method (returns NULL if not found)
1052 Method* find_method_impl(Symbol* name, Symbol* signature, bool skipping_overpass) const;
1053 static Method* find_method_impl(Array<Method*>* methods, Symbol* name, Symbol* signature, bool skipping_overpass);
1050 1054
1051 // Free CHeap allocated fields. 1055 // Free CHeap allocated fields.
1052 void release_C_heap_structures(); 1056 void release_C_heap_structures();
1053 public: 1057 public:
1054 // CDS support - remove and restore oops from metadata. Oops are not shared. 1058 // CDS support - remove and restore oops from metadata. Oops are not shared.