From 8e0e99f439d61f792bfa03e2cdf9787fbe9b1389 Mon Sep 17 00:00:00 2001 From: Joseph Ferano Date: Sun, 13 Sep 2026 22:35:19 +0700 Subject: [PATCH] A stub handoff for the cost lane --- HANDOFF-x86-cost.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 HANDOFF-x86-cost.md diff --git a/HANDOFF-x86-cost.md b/HANDOFF-x86-cost.md new file mode 100644 index 0000000..2c029fd --- /dev/null +++ b/HANDOFF-x86-cost.md @@ -0,0 +1,21 @@ +# Handoff — what the x86 backend costs, and keeping it from rotting + +Branch: `dev-loop`. This lane is item 7 of `HANDOFF-x86-rt.md`'s "What remains" — code size and speed, measured +rather than guessed — plus the closing note under it, which asks for the survey to run on its own so a refusal +cannot sit unnoticed for a month again. + +Nothing in `lib/` is touched. Another lane is rewriting `lib/x86.ml` at the same time, so everything here lives in +`spike/x86` and in `test/dune`, and anything this lane finds that would want a compiler change is written down at +the bottom rather than made. + +## The plan, in the order it is being done + +1. `test/dune` grows an `@x86` alias beside `@sanitize` and `@valgrind`, running `spike/x86/survey.sh` in a strict + mode that exits nonzero when anything DIFFERs or is refused by name. Done first because it is the half that + stops the rot and it is bounded. +2. `spike/x86/cost.sh` measures binary size, the program's own text, and best-of-N wall time for each corpus + program both ways, and `spike/x86/COST.md` reads the numbers out. + +## Status + +Stub. Nothing measured yet.