1293 // For RedefineClasses and class file parsing errors, we need to deallocate
1294 // instanceKlasses and the metadata they point to.
1295 void deallocate_contents(ClassLoaderData* loader_data);
1296 static void deallocate_methods(ClassLoaderData* loader_data,
1297 Array<Method*>* methods);
1298 void static deallocate_interfaces(ClassLoaderData* loader_data,
1299 const Klass* super_klass,
1300 Array<InstanceKlass*>* local_interfaces,
1301 Array<InstanceKlass*>* transitive_interfaces);
1302
1303 // The constant pool is on stack if any of the methods are executing or
1304 // referenced by handles.
1305 bool on_stack() const { return _constants->on_stack(); }
1306
1307 // callbacks for actions during class unloading
1308 static void notify_unload_class(InstanceKlass* ik);
1309 static void release_C_heap_structures(InstanceKlass* ik);
1310
1311 // Naming
1312 const char* signature_name() const;
1313 static Symbol* package_from_name(const Symbol* name, TRAPS);
1314
1315 // GC specific object visitors
1316 //
1317 #if INCLUDE_PARALLELGC
1318 // Parallel Scavenge
1319 void oop_ps_push_contents( oop obj, PSPromotionManager* pm);
1320 // Parallel Compact
1321 void oop_pc_follow_contents(oop obj, ParCompactionManager* cm);
1322 void oop_pc_update_pointers(oop obj, ParCompactionManager* cm);
1323 #endif
1324
1325 // Oop fields (and metadata) iterators
1326 //
1327 // The InstanceKlass iterators also visits the Object's klass.
1328
1329 // Forward iteration
1330 public:
1331 // Iterate over all oop fields in the oop maps.
1332 template <typename T, class OopClosureType>
|
1293 // For RedefineClasses and class file parsing errors, we need to deallocate
1294 // instanceKlasses and the metadata they point to.
1295 void deallocate_contents(ClassLoaderData* loader_data);
1296 static void deallocate_methods(ClassLoaderData* loader_data,
1297 Array<Method*>* methods);
1298 void static deallocate_interfaces(ClassLoaderData* loader_data,
1299 const Klass* super_klass,
1300 Array<InstanceKlass*>* local_interfaces,
1301 Array<InstanceKlass*>* transitive_interfaces);
1302
1303 // The constant pool is on stack if any of the methods are executing or
1304 // referenced by handles.
1305 bool on_stack() const { return _constants->on_stack(); }
1306
1307 // callbacks for actions during class unloading
1308 static void notify_unload_class(InstanceKlass* ik);
1309 static void release_C_heap_structures(InstanceKlass* ik);
1310
1311 // Naming
1312 const char* signature_name() const;
1313 const char* signature_name_of(char c) const;
1314 static Symbol* package_from_name(const Symbol* name, TRAPS);
1315
1316 // GC specific object visitors
1317 //
1318 #if INCLUDE_PARALLELGC
1319 // Parallel Scavenge
1320 void oop_ps_push_contents( oop obj, PSPromotionManager* pm);
1321 // Parallel Compact
1322 void oop_pc_follow_contents(oop obj, ParCompactionManager* cm);
1323 void oop_pc_update_pointers(oop obj, ParCompactionManager* cm);
1324 #endif
1325
1326 // Oop fields (and metadata) iterators
1327 //
1328 // The InstanceKlass iterators also visits the Object's klass.
1329
1330 // Forward iteration
1331 public:
1332 // Iterate over all oop fields in the oop maps.
1333 template <typename T, class OopClosureType>
|