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

C2: Add an assembly "verification" pass to find redundant instructions

XMLWordPrintable

      C2 sometimes generates instructions that compute values that go unused, e.g. JDK-8020282. For the ideal graph, we have verification passes to ensure the graph is well-formed. Applying this principle to the generated assembly, we can set out to find such instructions automatically.

      A few possibilities to strive towards that:
       - Apply heuristics that detect when the result of an instruction is immediately overwritten by another instruction without reading from it.
       - Leverage the information we have in the hotspot (dis)assembler to perform basic symbolic execution to mark unused computations.

            Unassigned Unassigned
            mhaessig Manuel Hässig
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: