< prev index next >

src/hotspot/share/oops/klass.hpp

Print this page




 609   AccessFlags access_flags() const         { return _access_flags;  }
 610   void set_access_flags(AccessFlags flags) { _access_flags = flags; }
 611 
 612   bool is_public() const                { return _access_flags.is_public(); }
 613   bool is_final() const                 { return _access_flags.is_final(); }
 614   bool is_interface() const             { return _access_flags.is_interface(); }
 615   bool is_abstract() const              { return _access_flags.is_abstract(); }
 616   bool is_super() const                 { return _access_flags.is_super(); }
 617   bool is_synthetic() const             { return _access_flags.is_synthetic(); }
 618   void set_is_synthetic()               { _access_flags.set_is_synthetic(); }
 619   bool has_finalizer() const            { return _access_flags.has_finalizer(); }
 620   bool has_final_method() const         { return _access_flags.has_final_method(); }
 621   void set_has_finalizer()              { _access_flags.set_has_finalizer(); }
 622   void set_has_final_method()           { _access_flags.set_has_final_method(); }
 623   bool has_vanilla_constructor() const  { return _access_flags.has_vanilla_constructor(); }
 624   void set_has_vanilla_constructor()    { _access_flags.set_has_vanilla_constructor(); }
 625   bool has_miranda_methods () const     { return access_flags().has_miranda_methods(); }
 626   void set_has_miranda_methods()        { _access_flags.set_has_miranda_methods(); }
 627   bool is_shared() const                { return access_flags().is_shared_class(); } // shadows MetaspaceObj::is_shared)()
 628   void set_is_shared()                  { _access_flags.set_is_shared_class(); }


 629 
 630   bool is_cloneable() const;
 631   void set_is_cloneable();
 632 
 633   // Biased locking support
 634   // Note: the prototype header is always set up to be at least the
 635   // prototype markWord. If biased locking is enabled it may further be
 636   // biasable and have an epoch.
 637   markWord prototype_header() const      { return _prototype_header; }
 638   // NOTE: once instances of this klass are floating around in the
 639   // system, this header must only be updated at a safepoint.
 640   // NOTE 2: currently we only ever set the prototype header to the
 641   // biasable prototype for instanceKlasses. There is no technical
 642   // reason why it could not be done for arrayKlasses aside from
 643   // wanting to reduce the initial scope of this optimization. There
 644   // are potential problems in setting the bias pattern for
 645   // JVM-internal oops.
 646   inline void set_prototype_header(markWord header);
 647   static ByteSize prototype_header_offset() { return in_ByteSize(offset_of(Klass, _prototype_header)); }
 648 




 609   AccessFlags access_flags() const         { return _access_flags;  }
 610   void set_access_flags(AccessFlags flags) { _access_flags = flags; }
 611 
 612   bool is_public() const                { return _access_flags.is_public(); }
 613   bool is_final() const                 { return _access_flags.is_final(); }
 614   bool is_interface() const             { return _access_flags.is_interface(); }
 615   bool is_abstract() const              { return _access_flags.is_abstract(); }
 616   bool is_super() const                 { return _access_flags.is_super(); }
 617   bool is_synthetic() const             { return _access_flags.is_synthetic(); }
 618   void set_is_synthetic()               { _access_flags.set_is_synthetic(); }
 619   bool has_finalizer() const            { return _access_flags.has_finalizer(); }
 620   bool has_final_method() const         { return _access_flags.has_final_method(); }
 621   void set_has_finalizer()              { _access_flags.set_has_finalizer(); }
 622   void set_has_final_method()           { _access_flags.set_has_final_method(); }
 623   bool has_vanilla_constructor() const  { return _access_flags.has_vanilla_constructor(); }
 624   void set_has_vanilla_constructor()    { _access_flags.set_has_vanilla_constructor(); }
 625   bool has_miranda_methods () const     { return access_flags().has_miranda_methods(); }
 626   void set_has_miranda_methods()        { _access_flags.set_has_miranda_methods(); }
 627   bool is_shared() const                { return access_flags().is_shared_class(); } // shadows MetaspaceObj::is_shared)()
 628   void set_is_shared()                  { _access_flags.set_is_shared_class(); }
 629   bool is_hidden() const                { return access_flags().is_hidden_class(); }
 630   void set_is_hidden()                  { _access_flags.set_is_hidden_class(); }
 631 
 632   bool is_cloneable() const;
 633   void set_is_cloneable();
 634 
 635   // Biased locking support
 636   // Note: the prototype header is always set up to be at least the
 637   // prototype markWord. If biased locking is enabled it may further be
 638   // biasable and have an epoch.
 639   markWord prototype_header() const      { return _prototype_header; }
 640   // NOTE: once instances of this klass are floating around in the
 641   // system, this header must only be updated at a safepoint.
 642   // NOTE 2: currently we only ever set the prototype header to the
 643   // biasable prototype for instanceKlasses. There is no technical
 644   // reason why it could not be done for arrayKlasses aside from
 645   // wanting to reduce the initial scope of this optimization. There
 646   // are potential problems in setting the bias pattern for
 647   // JVM-internal oops.
 648   inline void set_prototype_header(markWord header);
 649   static ByteSize prototype_header_offset() { return in_ByteSize(offset_of(Klass, _prototype_header)); }
 650 


< prev index next >