Hi all, This PR follows up on changes made in [JDK-8368875](https://bugs.openjdk.org/browse/JDK-8368875). I updated the documentation to reflect the new information gained.
Furthermore, the investigation described in the issue yielded that we _must_ preserve the larval bit explicitly. I introduce a regression test. If we change the mark word preservation condition to `return (!is_unlocked() || !has_no_hash())` (i.e. what we had before), I have confirmed that we will crash a debug VM via failed assertion. Note that ZGC does not require mark word preservation. I've nonetheless decided to include it in case this behaviour is introduced later. Testing: tiers 1-3. ------------- Commit messages: - Flagless VM for larval test. - Update documentation. - Merge branch 'lworld' into JDK-8369134 - Recommit the test. - Revert "Refactor Parallel mark handling and add test." - Refactor Parallel mark handling and add test. Changes: https://git.openjdk.org/valhalla/pull/1666/files Webrev: https://webrevs.openjdk.org/?repo=valhalla&pr=1666&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8369134 Stats: 117 lines in 2 files changed: 114 ins; 0 del; 3 mod Patch: https://git.openjdk.org/valhalla/pull/1666.diff Fetch: git fetch https://git.openjdk.org/valhalla.git pull/1666/head:pull/1666 PR: https://git.openjdk.org/valhalla/pull/1666
