Files
Syphon_Filter_3/docs
Christopher Williams b29963eafb phase11: promote sf3_cc + sf3_diff to tools/ (worker F) + cookbook 184-185
Worker F's judgement, which I agree with: these two together are the highest-value tooling built
this phase, because the first removes the COST of a spelling and the second removes the GUESSWORK
about what is wrong.

  tools/sf3_cc <file.c>              one-file cpp -> cc1 -> maspsx, printing the assembly.
                                     A spelling costs ~0.1s, which turns 'try a few variants'
                                     into 'grid the whole space'.
  tools/sf3_diff 0xS 0xE <workdir>   opcode-level diff of the candidate object against the
                                     original, difflib-aligned, so you see the SHAPE of the
                                     residual rather than a byte count.

A differing-byte count tells you HOW WRONG a candidate is; it does not tell you WHICH DIMENSION
the error lives in. sf3_diff marks differing instructions with '<<', so a run of identical
mnemonics with differing register names is the allocator class -- a CLASSIFY signal, not a
spelling signal.

184: a load's BASIC BLOCK is not source-movable -- sched2 cannot cross blocks, so a load in a
different block than the candidate's is a SOURCE-ORDER fact.
2026-09-24 11:47:41 -04:00
..