Hi all, 

This PR refactors the mark word to use the order of bits as specified in [JEP 
450](https://openjdk.org/jeps/450). 

Specifically, there are three portions to this change:
- Moving the age bits lower to their intended position.
- Fixing a miscompilation in the native `hashCode` intrinsic that got unearthed 
as a result.
- Updating the documentation to be more inline with the mainline docs and 
minimal Valhalla additions.

Feedback is welcome, especially for the doc changes. If there are any ideas of 
other places in which similar miscompilations could occur, that would be 
valuable to know as well.

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

Commit messages:
 - Revise documentation.
 - Fix hashCode intrinsic miscompilation.
 - Fix outdated markWord test semantics.
 - Chuck out weird markWord code.
 - Emulate old Valhalla decode_pointer behavior.
 - Fix typo.
 - Follow JEP450 MarkWord specification.

Changes: https://git.openjdk.org/valhalla/pull/1578/files
  Webrev: https://webrevs.openjdk.org/?repo=valhalla&pr=1578&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8367073
  Stats: 105 lines in 3 files changed: 15 ins; 74 del; 16 mod
  Patch: https://git.openjdk.org/valhalla/pull/1578.diff
  Fetch: git fetch https://git.openjdk.org/valhalla.git pull/1578/head:pull/1578

PR: https://git.openjdk.org/valhalla/pull/1578

Reply via email to