--- old/src/hotspot/share/oops/instanceKlass.hpp 2019-09-04 12:23:29.000000000 -0400 +++ new/src/hotspot/share/oops/instanceKlass.hpp 2019-09-04 12:23:29.000000000 -0400 @@ -257,7 +257,8 @@ _extra_is_being_redefined = 1 << 0, // used for locking redefinition _extra_has_resolved_methods = 1 << 1, // resolved methods table entries added for this class _extra_has_value_fields = 1 << 2, // has value fields and related embedded section is not empty - _extra_is_bufferable = 1 << 3 // value can be buffered out side of the Java heap + _extra_is_bufferable = 1 << 3, // value can be buffered out side of the Java heap + _extra_is_empty_value = 1 << 4 // empty value type }; protected: @@ -424,6 +425,13 @@ _extra_flags |= _extra_has_value_fields; } + bool is_empty_value() const { + return (_extra_flags & _extra_is_empty_value) != 0; + } + void set_is_empty_value() { + _extra_flags |= _extra_is_empty_value; + } + // field sizes int nonstatic_field_size() const { return _nonstatic_field_size; } void set_nonstatic_field_size(int size) { _nonstatic_field_size = size; }