1168 void deallocate_contents(ClassLoaderData* loader_data);
1169 static void deallocate_methods(ClassLoaderData* loader_data,
1170 Array<Method*>* methods);
1171 void static deallocate_interfaces(ClassLoaderData* loader_data,
1172 const Klass* super_klass,
1173 Array<InstanceKlass*>* local_interfaces,
1174 Array<InstanceKlass*>* transitive_interfaces);
1175
1176 // The constant pool is on stack if any of the methods are executing or
1177 // referenced by handles.
1178 bool on_stack() const { return _constants->on_stack(); }
1179
1180 // callbacks for actions during class unloading
1181 static void unload_class(InstanceKlass* ik);
1182 static void release_C_heap_structures(InstanceKlass* ik);
1183
1184 // Naming
1185 const char* signature_name() const;
1186 static Symbol* package_from_name(const Symbol* name, TRAPS);
1187
1188 // GC specific object visitors
1189 //
1190 #if INCLUDE_PARALLELGC
1191 // Parallel Compact
1192 void oop_pc_update_pointers(oop obj, ParCompactionManager* cm);
1193 #endif
1194
1195 // Oop fields (and metadata) iterators
1196 //
1197 // The InstanceKlass iterators also visits the Object's klass.
1198
1199 // Forward iteration
1200 public:
1201 // Iterate over all oop fields in the oop maps.
1202 template <typename T, class OopClosureType>
1203 inline void oop_oop_iterate_oop_maps(oop obj, OopClosureType* closure);
1204
1205 // Iterate over all oop fields and metadata.
1206 template <typename T, class OopClosureType>
1207 inline int oop_oop_iterate(oop obj, OopClosureType* closure);
1208
1209 // Iterate over all oop fields in one oop map.
1210 template <typename T, class OopClosureType>
1211 inline void oop_oop_iterate_oop_map(OopMapBlock* map, oop obj, OopClosureType* closure);
1212
1213
|
1168 void deallocate_contents(ClassLoaderData* loader_data);
1169 static void deallocate_methods(ClassLoaderData* loader_data,
1170 Array<Method*>* methods);
1171 void static deallocate_interfaces(ClassLoaderData* loader_data,
1172 const Klass* super_klass,
1173 Array<InstanceKlass*>* local_interfaces,
1174 Array<InstanceKlass*>* transitive_interfaces);
1175
1176 // The constant pool is on stack if any of the methods are executing or
1177 // referenced by handles.
1178 bool on_stack() const { return _constants->on_stack(); }
1179
1180 // callbacks for actions during class unloading
1181 static void unload_class(InstanceKlass* ik);
1182 static void release_C_heap_structures(InstanceKlass* ik);
1183
1184 // Naming
1185 const char* signature_name() const;
1186 static Symbol* package_from_name(const Symbol* name, TRAPS);
1187
1188 // Oop fields (and metadata) iterators
1189 //
1190 // The InstanceKlass iterators also visits the Object's klass.
1191
1192 // Forward iteration
1193 public:
1194 // Iterate over all oop fields in the oop maps.
1195 template <typename T, class OopClosureType>
1196 inline void oop_oop_iterate_oop_maps(oop obj, OopClosureType* closure);
1197
1198 // Iterate over all oop fields and metadata.
1199 template <typename T, class OopClosureType>
1200 inline int oop_oop_iterate(oop obj, OopClosureType* closure);
1201
1202 // Iterate over all oop fields in one oop map.
1203 template <typename T, class OopClosureType>
1204 inline void oop_oop_iterate_oop_map(OopMapBlock* map, oop obj, OopClosureType* closure);
1205
1206
|