Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8330631

Lilliput: Modify runtime/CompressedOops/CompressedClassPointers for tinycp

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P4 P4
    • repo-lilliput
    • repo-lilliput
    • hotspot

      runtime/CompressedOops/CompressedClassPointers tries a bunch of different JVM settings and checks whether these settings result in the expected Narrow Klass Pointer encoding.

      With +COH, we use smaller class pointer sizes and larger shifts. We also try to minimize the shift size when determining the encoding settings. We do that to minimize the effects of hyperaligning on cache use.

      That means that presented with a klass encoding range in the lower 4G, we still may not use zero-based encoding, instead opting for a non-zero encoding that gives us a smaller shift. For example:

      reserved between 0x4000_0000 and 0x5000_0000 (256m at 1G)
      Traditionally, we would use shift=0 and base=0 for 32bit cp.
      With 22bit cp, we instead use shift=7 and base=0x4000_000.

      That means the test should not expect zero-based or unscaled encoding.






            stuefe Thomas Stuefe
            stuefe Thomas Stuefe
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: