src/share/vm/classfile/javaClasses.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/share/vm/classfile/javaClasses.hpp	Fri Oct 17 13:54:44 2014
--- new/src/share/vm/classfile/javaClasses.hpp	Fri Oct 17 13:54:44 2014

*** 241,250 **** --- 241,251 ---- static int _signers_offset; static int _class_loader_offset; static int _component_mirror_offset; static bool offsets_computed; + static int _classData_offset; static int classRedefinedCount_offset; static GrowableArray<Klass*>* _fixup_mirror_list; static void set_init_lock(oop java_class, oop init_lock);
*** 283,292 **** --- 284,296 ---- static Klass* array_klass(oop java_class); static void set_array_klass(oop java_class, Klass* klass); // compiler support for class operations static int klass_offset_in_bytes() { return _klass_offset; } static int array_klass_offset_in_bytes() { return _array_klass_offset; } + + static oop classData(oop obj); + // Support for classRedefinedCount field static int classRedefinedCount(oop the_class_mirror); static void set_classRedefinedCount(oop the_class_mirror, int value); // Support for embedded per-class oops
*** 313,322 **** --- 317,345 ---- friend class JavaClasses; friend class InstanceKlass; // verification code accesses offsets friend class ClassFileParser; // access to number_of_fake_fields }; + /** + * java.lang.Class$ClassData + */ + class java_lang_Class_ClassData : AllStatic { + friend class JavaClasses; + + private: + static int _elementData_offset; + static int _size_offset; + + static void compute_offsets(); + + public: + static bool is_instance(oop obj); + static oop memberNameTable(oop obj); + static objArrayOop elementData(oop obj); + static int size(oop obj); + }; + // Interface to java.lang.Thread objects class java_lang_Thread : AllStatic { private: // Note that for this class the layout changed between JDK1.2 and JDK1.3,

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