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

Shenandoah: Demote or remove ShenandoahOptimize*Final optimizations

    Details

    • Type: Enhancement
    • Status: Resolved
    • Priority: P4
    • Resolution: Fixed
    • Affects Version/s: 8-shenandoah, 11-shenandoah, 13, 14
    • Fix Version/s: 14
    • Component/s: hotspot
    • Subcomponent:
      gc
    • Resolved In Build:
      b10

      Description

      There are three Shenandoah optimizations at the moment:
       ShenandoahOptimizeStaticFinals (enabled by default)
       ShenandoahOptimizeInstanceFinals (disabled by default)
       ShenandoahOptimizeStableFinals (disabled by default)

      The last two are known to break some programs, and they are definitely incorrect in post-LRB/post-nofwdptr world, where exposing the from-space object with unusual markword would wreck some havoc. These should be removed.

      The first optimization is eliminating barriers on constants, that are handled separately, and never get exposed as from-space objects. We should keep that optimization on, but to add future debugging, we would want to keep the flag as diagnostic.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                shade Aleksey Shipilev
                Reporter:
                shade Aleksey Shipilev
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: