mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-09-26 21:36:06 -04:00
8b48f482f9
- Fable5Max cracked func_80129CF8 (191-ins region-a camera giant; match_one MATCH, 0-off): struct-base hoisting via SOURCE-LOCAL pointers (gcc-2.7.2 has no cross-bb CSE → a callee-saved base can only come from a local, NO pins), branch-polarity-off-the-opcode, S12 reused-temp fence, expand_block_move struct-assignment for the grouped copy, dead-local-aggregate for the frame. Distilled → cookbook §32. - banked ×1 in ov_SC01_077_a.c (d19c9580; clean fleet 136/136) after reconciling its loose-typed decls (u8[]/s32[]/struct BigCopy/s8-vs-u8; func_80012F74 s16-vs-s32) to canonical + byte-neutral access casts; RView (GsRVIEW2-shaped 32B) lifted to engine_types.h. - FINDING (byte-proven): ×134 propagation is BLOCKED by the fleet-wide loose-typing wall — the giant's shared callees/data are declared incompatibly across overlays, so the macro's externs conflict per overlay (dedup_propagate --recover only fixes the propagated fn's CALLER extern, not its callee/data). Unlike the flagship func_80132784 (compatible → ×134), loose-typed giants bank ×1, not ×134. - Drew's call (A, invest): build the fleet-wide canonical-decl reconcile tool = the ×134 giant unlock. Spec + conflict taxonomy + byte-neutral cast patterns: docs/canonical-decl-reconcile-design.md. - clean fleet check-all 136/136 BYTE-IDENTICAL (R22). No new governance rules.