Skip to content

Commit

Permalink
Update base for Update on "[compiler] ReactiveIR: refactor Branch/Fal…
Browse files Browse the repository at this point in the history
…lthrough"

Continuing the exploration of the sea-of-nodes ReactiveIR.

Three main changes:
* ReactiveGraph has both entry and exit. Entry is mostly for completeness since it would be the first entry in the nodes map.
* Moves the 'terminal' data from JoinNode to BranchNode. Each branch has both an entry and exit, but these are intended for use with reconstruction back to ReactiveFunction and for interpreting the IR or forward data flow analysis.
* Renames JoinNode => FallthroughNode, removing the terminal.

Combined with the previous changes — ensuring that every block ends in a terminal that has controls transitively through to its entry node — it's now always possible to reach all nodes from the exit and to walk forward for forward data flow analysis or abstract/actual interpretation of the instructions.

[ghstack-poisoned]
  • Loading branch information
josephsavona committed Jan 21, 2025
1 parent d9441e4 commit ae47b2e
Showing 0 changed files with 0 additions and 0 deletions.

0 comments on commit ae47b2e

Please sign in to comment.