src/share/vm/oops/instanceKlass.hpp

changeset 4981
d587a5c30bd8
parent 4965
6337ca4dcad8
child 4984
c115fac239eb
     1.1 --- a/src/share/vm/oops/instanceKlass.hpp	Wed Apr 24 09:00:04 2013 -0400
     1.2 +++ b/src/share/vm/oops/instanceKlass.hpp	Wed Apr 24 16:19:35 2013 -0400
     1.3 @@ -236,7 +236,7 @@
     1.4      _misc_rewritten            = 1 << 0, // methods rewritten.
     1.5      _misc_has_nonstatic_fields = 1 << 1, // for sizing with UseCompressedOops
     1.6      _misc_should_verify_class  = 1 << 2, // allow caching of preverification
     1.7 -    _misc_is_anonymous         = 1 << 3, // has embedded _inner_classes field
     1.8 +    _misc_is_anonymous         = 1 << 3, // has embedded _host_klass field
     1.9      _misc_is_contended         = 1 << 4, // marked with contended annotation
    1.10      _misc_has_default_methods  = 1 << 5  // class/superclass/implemented interfaces has default methods
    1.11    };
    1.12 @@ -934,7 +934,9 @@
    1.13    // referenced by handles.
    1.14    bool on_stack() const { return _constants->on_stack(); }
    1.15  
    1.16 -  void release_C_heap_structures();
    1.17 +  // callbacks for actions during class unloading
    1.18 +  static void notify_unload_class(InstanceKlass* ik);
    1.19 +  static void release_C_heap_structures(InstanceKlass* ik);
    1.20  
    1.21    // Parallel Scavenge and Parallel Old
    1.22    PARALLEL_GC_DECLS
    1.23 @@ -1022,6 +1024,8 @@
    1.24    // Returns the array class with this class as element type
    1.25    Klass* array_klass_impl(bool or_null, TRAPS);
    1.26  
    1.27 +  // Free CHeap allocated fields.
    1.28 +  void release_C_heap_structures();
    1.29  public:
    1.30    // CDS support - remove and restore oops from metadata. Oops are not shared.
    1.31    virtual void remove_unshareable_info();

mercurial