< prev index next > src/hotspot/share/oops/fieldInfo.hpp
Print this page
public:
class FieldFlags {
friend class VMStructs;
friend class JVMCIVMStructs;
+ friend class FieldDesc;
// The ordering of this enum is totally internal. More frequent
// flags should come earlier than less frequent ones, because
// earlier ones compress better.
enum FieldFlagBitPosition {
+ _ff_null_free_inline_type, // field's type is an inline type and the field is null free
+ _ff_flat, // field is a flat field
_ff_initialized, // has ConstantValue initializer attribute
_ff_injected, // internal field injected by the JVM
_ff_generic, // has a generic signature
_ff_stable, // trust as stable b/c declared as @Stable
_ff_contended, // is contended, may have contention-group
bool has_any_optionals() const {
return (_flags & _optional_item_bit_mask) != 0;
}
bool is_initialized() const { return test_flag(_ff_initialized); }
+ bool is_null_free_inline_type() const { return test_flag(_ff_null_free_inline_type); }
+ bool is_flat() const { return test_flag(_ff_flat); }
bool is_injected() const { return test_flag(_ff_injected); }
bool is_generic() const { return test_flag(_ff_generic); }
bool is_stable() const { return test_flag(_ff_stable); }
bool is_contended() const { return test_flag(_ff_contended); }
void update_initialized(bool z) { update_flag(_ff_initialized, z); }
+ void update_null_free_inline_type(bool z) { update_flag(_ff_null_free_inline_type, z); }
+ void update_flat(bool z) { update_flag(_ff_flat, z); }
void update_injected(bool z) { update_flag(_ff_injected, z); }
void update_generic(bool z) { update_flag(_ff_generic, z); }
void update_stable(bool z) { update_flag(_ff_stable, z); }
void update_contended(bool z) { update_flag(_ff_contended, z); }
};
< prev index next >