src/share/vm/oops/instanceKlass.hpp

Print this page




1159   void static deallocate_interfaces(ClassLoaderData* loader_data,
1160                                     const Klass* super_klass,
1161                                     Array<Klass*>* local_interfaces,
1162                                     Array<Klass*>* transitive_interfaces);
1163 
1164   // The constant pool is on stack if any of the methods are executing or
1165   // referenced by handles.
1166   bool on_stack() const { return _constants->on_stack(); }
1167 
1168   // callbacks for actions during class unloading
1169   static void notify_unload_class(InstanceKlass* ik);
1170   static void release_C_heap_structures(InstanceKlass* ik);
1171 
1172   // Naming
1173   const char* signature_name() const;
1174   static Symbol* package_from_name(const Symbol* name, TRAPS);
1175 
1176   // GC specific object visitors
1177   //
1178   // Mark Sweep
1179   int  oop_ms_adjust_pointers(oop obj);
1180 #if INCLUDE_ALL_GCS
1181   // Parallel Scavenge
1182   void oop_ps_push_contents(  oop obj, PSPromotionManager* pm);
1183   // Parallel Compact
1184   void oop_pc_follow_contents(oop obj, ParCompactionManager* cm);
1185   void oop_pc_update_pointers(oop obj, ParCompactionManager* cm);
1186 #endif
1187 
1188   // Oop fields (and metadata) iterators
1189   //  [nv = true]  Use non-virtual calls to do_oop_nv.
1190   //  [nv = false] Use virtual calls to do_oop.
1191   //
1192   // The InstanceKlass iterators also visits the Object's klass.
1193 
1194   // Forward iteration
1195  public:
1196   // Iterate over all oop fields in the oop maps.
1197   template <bool nv, class OopClosureType>
1198   inline void oop_oop_iterate_oop_maps(oop obj, OopClosureType* closure);
1199 




1159   void static deallocate_interfaces(ClassLoaderData* loader_data,
1160                                     const Klass* super_klass,
1161                                     Array<Klass*>* local_interfaces,
1162                                     Array<Klass*>* transitive_interfaces);
1163 
1164   // The constant pool is on stack if any of the methods are executing or
1165   // referenced by handles.
1166   bool on_stack() const { return _constants->on_stack(); }
1167 
1168   // callbacks for actions during class unloading
1169   static void notify_unload_class(InstanceKlass* ik);
1170   static void release_C_heap_structures(InstanceKlass* ik);
1171 
1172   // Naming
1173   const char* signature_name() const;
1174   static Symbol* package_from_name(const Symbol* name, TRAPS);
1175 
1176   // GC specific object visitors
1177   //
1178   // Mark Sweep
1179   int  oop_ms_adjust_pointers(oop obj, MarkSweep* ms);
1180 #if INCLUDE_ALL_GCS
1181   // Parallel Scavenge
1182   void oop_ps_push_contents(  oop obj, PSPromotionManager* pm);
1183   // Parallel Compact
1184   void oop_pc_follow_contents(oop obj, ParCompactionManager* cm);
1185   void oop_pc_update_pointers(oop obj, ParCompactionManager* cm);
1186 #endif
1187 
1188   // Oop fields (and metadata) iterators
1189   //  [nv = true]  Use non-virtual calls to do_oop_nv.
1190   //  [nv = false] Use virtual calls to do_oop.
1191   //
1192   // The InstanceKlass iterators also visits the Object's klass.
1193 
1194   // Forward iteration
1195  public:
1196   // Iterate over all oop fields in the oop maps.
1197   template <bool nv, class OopClosureType>
1198   inline void oop_oop_iterate_oop_maps(oop obj, OopClosureType* closure);
1199