mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-10-01 15:43:06 -04:00
d242877065
- tools/cc1_dumps.sh: run the pinned cc1 with -dr/-ds/-dj/-dc/-dl/-dg and count standalone (use (reg)) insns in the .combine dump — each is one 8-byte never-referenced reload slot. The NEAR-2 residual = 12 such orphans vs the target's 16, now ENUMERATED pseudo-by-pseudo instead of inferred from ablations. - The orphan mechanism, exact (combine.c:10835 + mips.md force_not_mem): every short-mem read is a movhi+shift-pair triple; the fold orphans its ashift temp iff the HI reg carries an extra HImode use and the death-note walk hits a label/jump. Single-use loads never orphan; the head can never orphan (walk reaches insn 0). - The zero-code +4 factory is byte-refuted: 18 new probe families x 3 placements (s16 respellings, cast truncations, <<16>>16 factories, placement sweeps, loop t/n, dossier-file re-sweep) all land at vars=224-same-bytes or drift. p_optr reproduces the target's exact 16-orphan frame at +7 insns — opacity that defeats cse equally blinds num_sign_bit_copies; fold-const closes the tree level. Three canonicalizers, one wall. - Dossier NOTES.md updated with the S50 ledger; backlog klass -> WALL(P32) for both names. - NOT banked: no 0-closeness draft exists. The dial draft (NEAR 2) remains the floor.