[iterate-4A] jit: opcode-frequency histogram (XENIA_JIT_HIST) for coverage targeting
Gated 1-in-16 sampled opcode histogram in the recompiler (tallied in run_block, printed sorted with cumulative % at clean exit). Drives which opcodes the JIT lowers first. Boot+movie result: workload is FP-heavy — addi 15%, lwz 12%, rlwinm 10%, lfs 9%, stfs 7.5%, lfsx 5%, fmaddsx 4.6%, bc 3.7%, fmulsx 3.6%, stw 3.4% ... top-20 = 90%, ~33% floating-point. This is why we go straight to a Cranelift machine-code JIT (which attacks the FP op bodies) rather than a closure-threaded stage (which only removes dispatch). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -4396,6 +4396,8 @@ fn dump_thread_diagnostic(
|
||||
}
|
||||
// JIT differential harness: checked/skipped/mismatch tally at clean exit.
|
||||
xenia_cpu::recompiler::report_diff_summary();
|
||||
// JIT opcode-frequency histogram (XENIA_JIT_HIST) — drives M1 coverage.
|
||||
xenia_cpu::recompiler::report_histogram();
|
||||
|
||||
// STEP-10 diagnostic (observe-only, env-gated `XENIA_DUMP_SLOTS=1`).
|
||||
// Prints each scheduler slot's full runqueue with the fields needed to
|
||||
|
||||
Reference in New Issue
Block a user