hotspot/src/share/vm/oops/instanceRefKlass.hpp
changeset 33151 686d694f5c6a
parent 32606 fdaa30d06ada
child 34666 1c7168ea0034
equal deleted inserted replaced
33150:9e514d10a7bf 33151:686d694f5c6a
    49 class InstanceRefKlass: public InstanceKlass {
    49 class InstanceRefKlass: public InstanceKlass {
    50   friend class InstanceKlass;
    50   friend class InstanceKlass;
    51 
    51 
    52   // Constructor
    52   // Constructor
    53   InstanceRefKlass(int vtable_len, int itable_len, int static_field_size, int nonstatic_oop_map_size, ReferenceType rt, AccessFlags access_flags, bool is_anonymous)
    53   InstanceRefKlass(int vtable_len, int itable_len, int static_field_size, int nonstatic_oop_map_size, ReferenceType rt, AccessFlags access_flags, bool is_anonymous)
    54     : InstanceKlass(vtable_len, itable_len, static_field_size, nonstatic_oop_map_size, rt, access_flags, is_anonymous) {}
    54     : InstanceKlass(vtable_len, itable_len, static_field_size, nonstatic_oop_map_size,
       
    55                     InstanceKlass::_misc_kind_reference, rt, access_flags, is_anonymous) {}
    55 
    56 
    56  public:
    57  public:
    57   InstanceRefKlass() { assert(DumpSharedSpaces || UseSharedSpaces, "only for CDS"); }
    58   InstanceRefKlass() { assert(DumpSharedSpaces || UseSharedSpaces, "only for CDS"); }
    58   // Type testing
       
    59   bool oop_is_instanceRef() const             { return true; }
       
    60 
       
    61   // Casting from Klass*
       
    62   static InstanceRefKlass* cast(Klass* k) {
       
    63     assert(k->oop_is_instanceRef(), "cast to InstanceRefKlass");
       
    64     return (InstanceRefKlass*) k;
       
    65   }
       
    66 
    59 
    67   // GC specific object visitors
    60   // GC specific object visitors
    68   //
    61   //
    69   // Mark Sweep
    62   // Mark Sweep
    70   int  oop_ms_adjust_pointers(oop obj);
    63   int  oop_ms_adjust_pointers(oop obj);