< prev index next >

src/hotspot/share/gc/shenandoah/shenandoahStringDedup.cpp

Print this page

        

*** 48,65 **** if (java_string->age() <= StringDeduplicationAgeThreshold) { const markWord mark = java_string->mark(); // Having/had displaced header, too risk to deal with them, skip ! if (mark == markWord::INFLATING() || mark->has_displaced_mark_helper()) { return; } // Increase string age and enqueue it when it rearches age threshold ! markWord new_mark = mark->incr_age(); if (mark == java_string->cas_set_mark(new_mark, mark)) { ! if (mark->age() == StringDeduplicationAgeThreshold) { StringDedupQueue::push(ShenandoahWorkerSession::worker_id(), java_string); } } } } --- 48,65 ---- if (java_string->age() <= StringDeduplicationAgeThreshold) { const markWord mark = java_string->mark(); // Having/had displaced header, too risk to deal with them, skip ! if (mark == markWord::INFLATING() || mark.has_displaced_mark_helper()) { return; } // Increase string age and enqueue it when it rearches age threshold ! markWord new_mark = mark.incr_age(); if (mark == java_string->cas_set_mark(new_mark, mark)) { ! if (mark.age() == StringDeduplicationAgeThreshold) { StringDedupQueue::push(ShenandoahWorkerSession::worker_id(), java_string); } } } }
< prev index next >