Language Virtual Machines such as V8 or GraalVM [3] use Graphs to represent code. One example Graph representation is the so-called Sea-of-nodes model [1]. Sea-of-nodes graphs of real-world programs have millions of edges, and are typically very hard to query, explore, and analyze. In this project we want to develop novel Graph query and visualization techniques (e.g., [2]) to help improving our understanding of Sea-of-nodes graphs in the context of the Graal compiler.
[1] https://www.oracle.com/technetwork/java/javase/tech/c2-ir95-150110.pdf and https://chrisseaton.com/truffleruby/basic-graal-graphs/
[2] https://arxiv.org/abs/1602.00370
[3] https://www.graalvm.org/