< prev index next >

src/hotspot/share/gc/parallel/psPromotionManager.cpp

Print this page
*** 279,11 ***
  
  void PSPromotionManager::process_array_chunk(PartialArrayScanTask task) {
    assert(PSChunkLargeArrays, "invariant");
  
    oop old = task.to_source_array();
!   assert(old->is_objArray(), "invariant");
    assert(old->is_forwarded(), "invariant");
  
    TASKQUEUE_STATS_ONLY(++_array_chunks_processed);
  
    oop const obj = old->forwardee();
--- 279,11 ---
  
  void PSPromotionManager::process_array_chunk(PartialArrayScanTask task) {
    assert(PSChunkLargeArrays, "invariant");
  
    oop old = task.to_source_array();
!   assert(old->forward_safe_klass()->is_objArray_klass(), "invariant");
    assert(old->is_forwarded(), "invariant");
  
    TASKQUEUE_STATS_ONLY(++_array_chunks_processed);
  
    oop const obj = old->forwardee();

*** 317,11 ***
    // Attempt to CAS in the header.
    // This tests if the header is still the same as when
    // this started.  If it is the same (i.e., no forwarding
    // pointer has been installed), then this thread owns
    // it.
!   if (obj->forward_to_atomic(obj, obj_mark) == nullptr) {
      // We won any races, we "own" this object.
      assert(obj == obj->forwardee(), "Sanity");
  
      _promotion_failed_info.register_copy_failure(obj->size());
  
--- 317,11 ---
    // Attempt to CAS in the header.
    // This tests if the header is still the same as when
    // this started.  If it is the same (i.e., no forwarding
    // pointer has been installed), then this thread owns
    // it.
!   if (obj->forward_to_self_atomic(obj_mark) == nullptr) {
      // We won any races, we "own" this object.
      assert(obj == obj->forwardee(), "Sanity");
  
      _promotion_failed_info.register_copy_failure(obj->size());
  
< prev index next >