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