Sea of nodes is a graph representation of static-single assignment of a program that combines data flow and control flow, and relaxes the control flow from a total order to a partial order, keeping only the orderings required by data flow. 1

The V8 JavaScript engine was once notable for being one of the few large-scale compilers utilizing the sea of nodes approach. However, it has since transitioned to a more traditional CFG IR, citing reasons such as the sea of nodes being too complex, too limited, and too slow for compilation 2.

in a way, SoN is just CFG where pure nodes are floating 1

Footnotes

  1. Sea of nodes - Wikipedia

  2. Land ahoy: leaving the Sea of Nodes · V8