Create a trace (by projecting from the current point of execution)
Convert global variables to constants
Type based redundancy elimination
Peephole redundancy elimination
Create executor
What we want is:
Create a trace and redundancy elimination
Partial evaluation
Create executor
To get there we need to combine current steps 1-4 into a single step and implement the partial evaluator. The partial evaluator is discussed elsewhere, this issue is about combining the earlier passes.
Activity
GH-128939: Refactor JIT optimize structs (GH-128940)
pythonGH-128939: Refactor JIT optimize structs (pythonGH-128940)