Compile blocks of CPU instructions to host code and run them without per-instruction dispatch. Depends on the event scheduler (#16).
Scope
- Block recompiler: translate a run of SM83 ops to host code
- Block budget =
min(block len, next scheduled event) — interrupts land on the same instruction boundary as the interpreter (accuracy preserved without per-tick checks)
- Compiled memory-access code calls the scheduler catch-up API (
advance_to(now)) on IO access
- Verify with the differential state-trace harness (interpreter vs JIT in lockstep)
Notes
Small benefit, mostly just for exploring.
Compile blocks of CPU instructions to host code and run them without per-instruction dispatch. Depends on the event scheduler (#16).
Scope
min(block len, next scheduled event)— interrupts land on the same instruction boundary as the interpreter (accuracy preserved without per-tick checks)advance_to(now)) on IO accessNotes
Small benefit, mostly just for exploring.