< prev index next >

src/hotspot/share/oops/klass.hpp

Print this page




 596   AccessFlags access_flags() const         { return _access_flags;  }
 597   void set_access_flags(AccessFlags flags) { _access_flags = flags; }
 598 
 599   bool is_public() const                { return _access_flags.is_public(); }
 600   bool is_final() const                 { return _access_flags.is_final(); }
 601   bool is_interface() const             { return _access_flags.is_interface(); }
 602   bool is_abstract() const              { return _access_flags.is_abstract(); }
 603   bool is_super() const                 { return _access_flags.is_super(); }
 604   bool is_synthetic() const             { return _access_flags.is_synthetic(); }
 605   void set_is_synthetic()               { _access_flags.set_is_synthetic(); }
 606   bool has_finalizer() const            { return _access_flags.has_finalizer(); }
 607   bool has_final_method() const         { return _access_flags.has_final_method(); }
 608   void set_has_finalizer()              { _access_flags.set_has_finalizer(); }
 609   void set_has_final_method()           { _access_flags.set_has_final_method(); }
 610   bool has_vanilla_constructor() const  { return _access_flags.has_vanilla_constructor(); }
 611   void set_has_vanilla_constructor()    { _access_flags.set_has_vanilla_constructor(); }
 612   bool has_miranda_methods () const     { return access_flags().has_miranda_methods(); }
 613   void set_has_miranda_methods()        { _access_flags.set_has_miranda_methods(); }
 614   bool is_shared() const                { return access_flags().is_shared_class(); } // shadows MetaspaceObj::is_shared)()
 615   void set_is_shared()                  { _access_flags.set_is_shared_class(); }


 616 
 617   bool is_cloneable() const;
 618   void set_is_cloneable();
 619 
 620   // Biased locking support
 621   // Note: the prototype header is always set up to be at least the
 622   // prototype markOop. If biased locking is enabled it may further be
 623   // biasable and have an epoch.
 624   markOop prototype_header() const      { return _prototype_header; }
 625   // NOTE: once instances of this klass are floating around in the
 626   // system, this header must only be updated at a safepoint.
 627   // NOTE 2: currently we only ever set the prototype header to the
 628   // biasable prototype for instanceKlasses. There is no technical
 629   // reason why it could not be done for arrayKlasses aside from
 630   // wanting to reduce the initial scope of this optimization. There
 631   // are potential problems in setting the bias pattern for
 632   // JVM-internal oops.
 633   inline void set_prototype_header(markOop header);
 634   static ByteSize prototype_header_offset() { return in_ByteSize(offset_of(Klass, _prototype_header)); }
 635 




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


< prev index next >