Files
BFM-decomp/docs
Drew T 34249a4696 docs(cookbook): §392-§394 — harvest the 7 sonnet overlay waves (105 agents, 57 MATCHes)
The hard gate caught me: m1/m2 (§379-§383) and the fable escalation (§385-§388)
were harvested, but o1-o4 and p1-p3 were not — 57 MATCH notes sat unbanked while
I was about to draw new waves.

§392 — seven byte-proven spelling levers, each of which closed a match on its own:
  (a) a same-address dual-sign read is fixed by ORDER (emit the unsigned
      store-source read first); cse merges lh/lhu for every cast spelling tried
  (b) a narrow temp picks the narrow load — s16 vs s32 decides lh vs lhu, and a
      signed decrement temp yields "sll 16" where unsigned yields "andi 0xFFFF"
  (c) tbl[idx-2] folds -8 into the lw offset; hoisting the subtract forces addiu
  (d) identical switch arms must be SEPARATE case blocks — the target duplicates
      arg setup per case and cross-jump-merges only the shared tail
  (e) distinct pseudos per repeated inline copy — one shared pair biases sched1's
      tie-break for the first copy only
  (f) split the widen into two statements to move the sll off a pinned register
  (g) the RETURN TYPE alone closed a 7-ins schedule residual (s32 -> void)

§393 — the BIRTHING BOOST: a single-set local gets max scheduling priority and
sched2's backward pass pushes it LATE; a zero-byte re-tie gives it a second set
and kills the boost. The scheduler-side sibling of §380 — same trick, different
pass, opposite symptom.

§394 — two align-1 accesses in one function reserve a phantom 8-byte stack slot;
a frame 8 bytes too large with no spill to account for it is the tell.
2026-09-01 13:14:55 -06:00
..