Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: verifier support added

...

  • The Minimal Value Types project is an early prototype for Value Types
    • provides initial subset of Value Type functionality
    • provides a new type which is:
      • immutable, identity-agnostic, non-nullable, non-synchronizable, final
      • does not inherit from java.lang.Object
    • Value Types contained in References, other Value Types or in Arrays are flattenable
    • Value Types can
    • Arrays of value types are flattened
    • Can contain primitives or references

...

How to Try Minimal Value Types:

Early Access Binaries

http://jdk.java.net/valhalla/

Repository and Build Instructions

...

hg clone http://hg.openjdk.java.net/valhalla/valhalla valhalla-mvt

cd valhalla-mvt

sh get_source.sh

hg defpath du <openjdkname> 

hg sh common/bin/hgforest.sh update -r mvtmvt // name of branch

To update repository: 

cd valhalla-mvt

sh common/bin/hgforest.sh pull

hg pull

hg sh common/bin/hgforest.sh update -r mvt  // name of branch

...

http://cr.openjdk.java.net/~chegar/docs/sandbox.html // instructions for working with branch repositories (not yet updated for consolidation)

Note: Valhalla is a child of the jdk10/hs repository, to keep current with latest hotspot development.

...

  • platforms: x64 Linux, x64 Mac OS Xno verifier (work-in-progress for an update)
  • no VarHandles (work-in-progress for an update)
  • no support for atomic fields containing value types (work-in-progress for an update)
  • no JNI, unsafe, jvmti, redefineclasses, reflection
  • -Xint and C2 only, no C1, no tiered-compilation
  • interpreter is not optimized, focus is on JIT optimization
  • Need additional USE CASES for optimizations
  • Working on additional test cases

...