1.1 --- a/src/share/vm/oops/instanceKlass.hpp Mon Apr 20 14:48:03 2009 -0700 1.2 +++ b/src/share/vm/oops/instanceKlass.hpp Tue Apr 21 23:21:04 2009 -0700 1.3 @@ -163,6 +163,8 @@ 1.4 klassOop _implementors[implementors_limit]; 1.5 // Generic signature, or null if none. 1.6 symbolOop _generic_signature; 1.7 + // invokedynamic bootstrap method (a java.dyn.MethodHandle) 1.8 + oop _bootstrap_method; 1.9 // Annotations for this class, or null if none. 1.10 typeArrayOop _class_annotations; 1.11 // Annotation objects (byte arrays) for fields, or null if no annotations. 1.12 @@ -464,6 +466,10 @@ 1.13 u2 method_index) { _enclosing_method_class_index = class_index; 1.14 _enclosing_method_method_index = method_index; } 1.15 1.16 + // JSR 292 support 1.17 + oop bootstrap_method() const { return _bootstrap_method; } 1.18 + void set_bootstrap_method(oop mh) { oop_store(&_bootstrap_method, mh); } 1.19 + 1.20 // jmethodID support 1.21 static jmethodID get_jmethod_id(instanceKlassHandle ik_h, size_t idnum, 1.22 jmethodID new_id, jmethodID* new_jmeths); 1.23 @@ -744,6 +750,7 @@ 1.24 oop* adr_inner_classes() const { return (oop*)&this->_inner_classes;} 1.25 oop* adr_implementors() const { return (oop*)&this->_implementors[0];} 1.26 oop* adr_generic_signature() const { return (oop*)&this->_generic_signature;} 1.27 + oop* adr_bootstrap_method() const { return (oop*)&this->_bootstrap_method;} 1.28 oop* adr_methods_jmethod_ids() const { return (oop*)&this->_methods_jmethod_ids;} 1.29 oop* adr_methods_cached_itable_indices() const { return (oop*)&this->_methods_cached_itable_indices;} 1.30 oop* adr_class_annotations() const { return (oop*)&this->_class_annotations;}