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

C2: verify memory liveness invariants after scheduling

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Unresolved
    • Icon: P4 P4
    • tbd
    • 25
    • hotspot

      Violation of memory liveness invariants can lead to subtle miscompilation issues such as JDK-8333393, JDK-8255763, and JDK-8288975. This RFE proposes adding debug-only verification code after scheduling (GCM and LCM) that computes liveness information for the memory subgraph and checks that certain invariants hold.

      Examples of candidate invariants to be explored are that "all-memory" (<Bot> in the notation given in memnode.cpp) definitions do not interfere, or that a MergeMem definition using a certain memory state does not interfere with that particular memory state later on.

            rcastanedalo Roberto Castaneda Lozano
            rcastanedalo Roberto Castaneda Lozano
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: