IGV: stack overflow when displaying deep graphs

XMLWordPrintable

      When running
      java -Xcomp -XX:LoopUnrollLimit=8192 -XX:CompileCommand=compileonly,Test2::test -XX:CompileCommand=IGVPrintLevel,Test2::test,6 Test2.java
      One gets 3 compilations: the one due to -Xcomp that fall into a unloaded trap immediately, OSR, and non-OSR. If we look at the graph in the last compilation, because of unrolling, it looks long, reaching more than 17k nodes, in a long chain. IGV will refuse to display it because of a stack overflow:
      A java.lang.StackOverflowError exception has occurred. Click Show Details or see the messages.log file located in your file://[...]src/utils/IdealGraphVisualizer/application/target/userdir/var/log/ folder.
      java.lang.StackOverflowError
      at java.base/java.util.HashMap.putVal(HashMap.java:627)
      at java.base/java.util.HashMap.put(HashMap.java:610)
      at com.sun.hotspot.igv.view.DiagramScene.processOutputSlot(DiagramScene.java:1194)
      at com.sun.hotspot.igv.view.DiagramScene.processOutputSlot(DiagramScene.java:1239)
      at com.sun.hotspot.igv.view.DiagramScene.processOutputSlot(DiagramScene.java:1239)
      at com.sun.hotspot.igv.view.DiagramScene.processOutputSlot(DiagramScene.java:1239)
      [last line repeated ~1000 times]
      This was found during JDK-8357781, as C2 was also stackoverflowing on the same example.

        1. Test2.java
          0.9 kB
          Marc Chevalier

            Assignee:
            Unassigned
            Reporter:
            Emanuel Peter
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated: