< prev index next >

src/hotspot/share/oops/valueKlass.hpp

Print this page

        

*** 141,151 **** void set_alignment(int alignment) { *(int*)adr_alignment() = alignment; } ! int get_first_field_offset() const { int offset = *(int*)adr_first_field_offset(); assert(offset != 0, "Must be initialized before use"); return *(int*)adr_first_field_offset(); } --- 141,151 ---- void set_alignment(int alignment) { *(int*)adr_alignment() = alignment; } ! int first_field_offset() const { int offset = *(int*)adr_first_field_offset(); assert(offset != 0, "Must be initialized before use"); return *(int*)adr_first_field_offset(); }
*** 159,174 **** void set_exact_size_in_bytes(int exact_size) { *(int*)adr_exact_size_in_bytes() = exact_size; } private: ! int collect_fields(GrowableArray<SigEntry>* sig, int base_off = 0) const; void cleanup_blobs(); - int first_field_offset_old() const; protected: // Returns the array class for the n'th dimension Klass* array_klass_impl(ArrayStorageProperties storage_props, bool or_null, int n, TRAPS); --- 159,175 ---- void set_exact_size_in_bytes(int exact_size) { *(int*)adr_exact_size_in_bytes() = exact_size; } + int first_field_offset_old(); + private: ! int collect_fields(GrowableArray<SigEntry>* sig, int base_off = 0); void cleanup_blobs(); protected: // Returns the array class for the n'th dimension Klass* array_klass_impl(ArrayStorageProperties storage_props, bool or_null, int n, TRAPS);
*** 204,223 **** // allocate_instance() allocates a stand alone value in the Java heap instanceOop allocate_instance(TRAPS); // minimum number of bytes occupied by nonstatic fields, HeapWord aligned or pow2 ! int raw_value_byte_size() const; ! ! int first_field_offset() const { ! // To be refactored/simplified once old layout code and UseNewLayout are removed ! if (UseNewLayout) { ! return get_first_field_offset(); ! } else { ! return first_field_offset_old(); ! } ! }; address data_for_oop(oop o) const { return ((address) (void*) o) + first_field_offset(); } --- 205,215 ---- // allocate_instance() allocates a stand alone value in the Java heap instanceOop allocate_instance(TRAPS); // minimum number of bytes occupied by nonstatic fields, HeapWord aligned or pow2 ! int raw_value_byte_size(); address data_for_oop(oop o) const { return ((address) (void*) o) + first_field_offset(); }
< prev index next >