RFR: 8258252: Move PtrQueue enqueue to PtrQueueSet subclasses [v2]

Kim Barrett kbarrett at openjdk.java.net
Wed Dec 16 07:58:13 UTC 2020


> Please review this refactoring in the PtrQueue/PtrQueueSet hierarchy.
> 
> The functions PtrQueue::enqueue and PtrQueue::enqueue_known_active are
> removed, along with the helper virtual function PtrQueue::handle_completed_buffer.
> 
> Instead we now have G1{Dirty,Redirty}CardQueueSet::enqueue and SATBMarkQueueSet::enqueue/enqueue_known_active, each tailored to the corresponding specific behavior. They use some shared helper routines from PtrQueueSet, and the PtrQueue buffer and index have been made accessible to clients.
> 
> Testing:
> mach5 tier1-3, 5 (stress tests)
> Local (linux-x64) tier1 with -XX:+UseShenandoahGC

Kim Barrett has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains three additional commits since the last revision:

 - Merge branch 'master' into move_enqueue
 - shenandoah support
 - move enqueue to qsets

-------------

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/1776/files
  - new: https://git.openjdk.java.net/jdk/pull/1776/files/9dc2a4e5..6cfd4bea

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=1776&range=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=1776&range=00-01

  Stats: 5048 lines in 107 files changed: 3421 ins; 1280 del; 347 mod
  Patch: https://git.openjdk.java.net/jdk/pull/1776.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/1776/head:pull/1776

PR: https://git.openjdk.java.net/jdk/pull/1776


More information about the hotspot-dev mailing list