266
267 inline void forward_to(oop p);
268 inline bool cas_forward_to(oop p, markOop compare, atomic_memory_order order = memory_order_conservative);
269
270 // Like "forward_to", but inserts the forwarding pointer atomically.
271 // Exactly one thread succeeds in inserting the forwarding pointer, and
272 // this call returns "NULL" for that thread; any other thread has the
273 // value of the forwarding pointer returned and does not modify "this".
274 inline oop forward_to_atomic(oop p, atomic_memory_order order = memory_order_conservative);
275
276 inline oop forwardee() const;
277 inline oop forwardee_acquire() const;
278
279 // Age of object during scavenge
280 inline uint age() const;
281 inline void incr_age();
282
283 // mark-sweep support
284 void follow_body(int begin, int end);
285
286 // Garbage Collection support
287
288 #if INCLUDE_PARALLELGC
289 // Parallel Compact
290 inline void pc_update_contents(ParCompactionManager* cm);
291 #endif
292
293 template <typename OopClosureType>
294 inline void oop_iterate(OopClosureType* cl);
295
296 template <typename OopClosureType>
297 inline void oop_iterate(OopClosureType* cl, MemRegion mr);
298
299 template <typename OopClosureType>
300 inline int oop_iterate_size(OopClosureType* cl);
301
302 template <typename OopClosureType>
303 inline int oop_iterate_size(OopClosureType* cl, MemRegion mr);
304
305 template <typename OopClosureType>
306 inline void oop_iterate_backwards(OopClosureType* cl);
307
308 inline static bool is_instanceof_or_null(oop obj, Klass* klass);
309
310 // identity hash; returns the identity hash key (computes it if necessary)
311 // NOTE with the introduction of UseBiasedLocking that identity_hash() might reach a
|
266
267 inline void forward_to(oop p);
268 inline bool cas_forward_to(oop p, markOop compare, atomic_memory_order order = memory_order_conservative);
269
270 // Like "forward_to", but inserts the forwarding pointer atomically.
271 // Exactly one thread succeeds in inserting the forwarding pointer, and
272 // this call returns "NULL" for that thread; any other thread has the
273 // value of the forwarding pointer returned and does not modify "this".
274 inline oop forward_to_atomic(oop p, atomic_memory_order order = memory_order_conservative);
275
276 inline oop forwardee() const;
277 inline oop forwardee_acquire() const;
278
279 // Age of object during scavenge
280 inline uint age() const;
281 inline void incr_age();
282
283 // mark-sweep support
284 void follow_body(int begin, int end);
285
286 template <typename OopClosureType>
287 inline void oop_iterate(OopClosureType* cl);
288
289 template <typename OopClosureType>
290 inline void oop_iterate(OopClosureType* cl, MemRegion mr);
291
292 template <typename OopClosureType>
293 inline int oop_iterate_size(OopClosureType* cl);
294
295 template <typename OopClosureType>
296 inline int oop_iterate_size(OopClosureType* cl, MemRegion mr);
297
298 template <typename OopClosureType>
299 inline void oop_iterate_backwards(OopClosureType* cl);
300
301 inline static bool is_instanceof_or_null(oop obj, Klass* klass);
302
303 // identity hash; returns the identity hash key (computes it if necessary)
304 // NOTE with the introduction of UseBiasedLocking that identity_hash() might reach a
|