RFR: Simplify crossing map implementation [v2]

Kelvin Nilsen kdnilsen at openjdk.java.net
Tue Feb 1 21:47:05 UTC 2022


> The crossing map maintains a record of the first and last objects
> starting within each remembered set card's range of memory addresses.
> The previous implementations used bit-shifts.  It was detected during
> testing that the c++ compiler was emitting incorrect code in certain
> in-line expansions of the register_object() method.  gdb reports that
> there are 56 distinct contexts holding the expansion of this function.
> This simplified implementation does not exhibit the same broken
> behavior.

Kelvin Nilsen has updated the pull request incrementally with one additional commit since the last revision:

  Respond to reviewer feedback
  
  null out object_starts reference in ShenandoahCardCluster destructor.

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

Changes:
  - all: https://git.openjdk.java.net/shenandoah/pull/107/files
  - new: https://git.openjdk.java.net/shenandoah/pull/107/files/b562a0b4..8e94bfbd

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

  Stats: 1 line in 1 file changed: 1 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/shenandoah/pull/107.diff
  Fetch: git fetch https://git.openjdk.java.net/shenandoah pull/107/head:pull/107

PR: https://git.openjdk.java.net/shenandoah/pull/107


More information about the shenandoah-dev mailing list