< prev index next >

src/share/vm/oops/instanceKlass.hpp

Print this page

        

@@ -205,16 +205,19 @@
   int             _itable_len;           // length of Java itable (in words)
   // _is_marked_dependent can be set concurrently, thus cannot be part of the
   // _misc_flags.
   bool            _is_marked_dependent;  // used for marking during flushing and deoptimization
 
+ public:
   enum {
     _extra_is_being_redefined = 1 << 0, // used for locking redefinition
     _extra_has_value_fields   = 1 << 1, // has value fields and related embedded section is not empty
-    _extra_has_vcc_klass      = 1 << 2  // has a pointer to its Value Capable Class (MVT)
+    _extra_is_bufferable      = 1 << 2, // value can be buffered out side of the Java heap
+    _extra_has_vcc_klass      = 1 << 3  // has a pointer to its Value Capable Class (MVT)
   };
 
+ protected:
   u1              _extra_flags;
 
   // The low three bits of _misc_flags contains the kind field.
   // This can be used to quickly discriminate among the five kinds of
   // InstanceKlass.

@@ -541,10 +544,12 @@
 
   // marking
   bool is_marked_dependent() const         { return _is_marked_dependent; }
   void set_is_marked_dependent(bool value) { _is_marked_dependent = value; }
 
+  static ByteSize extra_flags_offset() { return in_ByteSize(offset_of(InstanceKlass, _extra_flags)); }
+
   // initialization (virtuals from Klass)
   bool should_be_initialized() const;  // means that initialize should be called
   void initialize(TRAPS);
   void link_class(TRAPS);
   bool link_class_or_fail(TRAPS); // returns false on failure
< prev index next >