mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-09-27 22:45:39 -04:00
7e32da8f64
- The draft calls ((void(*)(void))func_80142C84)() but nothing declares that symbol above the splice: it is DEFINED by DEFINE_func_80142C84() in engine_core.h, so gather_externs has no extern line to harvest, and the member TU instantiates the macro BELOW our function. - The wrong guess was the useful step: a no-prototype `extern s32 func_80142C84();` turned `undeclared` into `conflicting types` — a DIFFERENT error, proving the diagnosis right and the type wrong. Synthesised from the macro's own definition head -> MATCH (34 ins) -> 136/136. - NEW macro_def_sig_map() (1,878 signatures): the complement of header_sig_map(), which reads the externs a macro emits FOR ITS CALLEES; this reads the signature a macro DEFINES. Cookbook §121. - ALL THREE byte-identical stragglers carried since SESSION-24 are now closed: func_80146750 137/137 (T84), func_801759D8 137/137 (T93), func_80142B2C 136/136 (T95) = 410 members, and not one was a compiler wall (a signedness-wrong header decl, a type-name collision, a missing extern). - Blast radius 0 (74 further families re-swept). FOUR data points now: only §117 (wrong LOGIC) generalised at 1,209 members; §118/§120/§121 are path-reachability gaps worth ~one family each. - GATES: R22 clean-fleet 140/140; dedup 1886/0; 0 NON_MATCHING (G4). - METRICS: fn-count 91.88 -> 91.96% (+273, exact) · instr 87.3 -> 87.4% (+12,296) · distinct +0 (both byte-identical families — §111 predicted exactly that).
161 lines
9.1 KiB
Markdown
161 lines
9.1 KiB
Markdown
# BFM FLEET matching progress (generated by tools/progress.py --fleet — authoritative)
|
||
# 140 binaries: main + resident + 138 location overlays. DETERMINISTIC,
|
||
# source-derived (committed src/*.c + config/dedup.us.yaml). Live byte gate: `make check-all`;
|
||
# cross-binary collapsible-byte leverage: docs/duplicates.cross.md.
|
||
|
||
# THREE progress metrics (all matter — see the labels):
|
||
FLEET fn-count byte-ident: 325279 / 353720 = 91.96% (REAL+LINKED+empties; FUNCTION-count, ×134-inflated — one crack counts per overlay)
|
||
FLEET instr-weighted : 11490979 / 13141652 = 87.4% (shipped .text across main + resident + 138 overlays; the decomp.dev-DISPLAY number)
|
||
FLEET distinct-code(uniq): 4395820 / 5634875 = 78.0% (69744/87459 unique fns; the DISTINCT-RE number)
|
||
MAIN game-code weighted : 436 / 60201 = 0.7% (INCLUDED in the fleet numbers above since 2026-07-22 — roadmap §1 metrics contract; LINKED-excluding Ghidra sig dated 2026-06-14; caveat is R34: no independent second oracle for a PS-X EXE, NOT drift)
|
||
(fleet EXCLUDING main, for continuity with pre-2026-07-22 readings: 11490543 / 13081451 = 87.8%)
|
||
|
||
FLEET REAL substantive : 323424 (of which dedup-shared 239530 via 1886 groups / 239604 instances)
|
||
FLEET LINKED PsyQ objs : 959
|
||
FLEET NON_MATCHING : 7 (0 in any default build — G4)
|
||
FLEET INCLUDE_ASM stubs : 28434
|
||
FLEET matchable : 353720
|
||
|
||
| binary | REAL | shared | LINKED | byte-ident | matchable | byte-ident % |
|
||
|---|---:|---:|---:|---:|---:|---:|
|
||
| main | 54 | 2 | 959 | 1055 | 2096 | 50.3% |
|
||
| resident | 129 | 0 | 0 | 131 | 145 | 90.3% |
|
||
| ov_SC01_000 | 2310 | 1742 | 0 | 2310 | 2403 | 96.1% |
|
||
| ov_SC01_001 | 2317 | 1743 | 0 | 2319 | 2466 | 94.0% |
|
||
| ov_SC01_004 | 2308 | 1734 | 0 | 2309 | 2414 | 95.7% |
|
||
| ov_SC01_005 | 2339 | 1757 | 0 | 2339 | 2503 | 93.4% |
|
||
| ov_SC01_006 | 2339 | 1757 | 0 | 2339 | 2503 | 93.4% |
|
||
| ov_SC01_008 | 2308 | 1734 | 0 | 2310 | 2426 | 95.2% |
|
||
| ov_SC01_009 | 2333 | 1735 | 0 | 2334 | 2507 | 93.1% |
|
||
| ov_SC01_074 | 2314 | 1735 | 0 | 2316 | 2425 | 95.5% |
|
||
| ov_SC01_077 | 2481 | 1702 | 0 | 2483 | 2585 | 96.1% |
|
||
| ov_SC01_080 | 2348 | 1738 | 0 | 2348 | 2512 | 93.5% |
|
||
| ov_SC01_084 | 2357 | 1738 | 0 | 2362 | 2579 | 91.6% |
|
||
| ov_SC02_000 | 2411 | 1773 | 0 | 2411 | 2683 | 89.9% |
|
||
| ov_SC02_003 | 2411 | 1773 | 0 | 2411 | 2683 | 89.9% |
|
||
| ov_SC02_004 | 2313 | 1738 | 0 | 2313 | 2401 | 96.3% |
|
||
| ov_SC02_005 | 2436 | 1734 | 0 | 2446 | 2927 | 83.6% |
|
||
| ov_SC02_011 | 2444 | 1741 | 0 | 2455 | 2893 | 84.9% |
|
||
| ov_SC02_015 | 2318 | 1740 | 0 | 2318 | 2414 | 96.0% |
|
||
| ov_SC02_016 | 2356 | 1740 | 0 | 2359 | 2545 | 92.7% |
|
||
| ov_SC02_017 | 2405 | 1740 | 0 | 2413 | 2732 | 88.3% |
|
||
| ov_SC02_021 | 2323 | 1740 | 0 | 2323 | 2437 | 95.3% |
|
||
| ov_SC02_026 | 2338 | 1738 | 0 | 2344 | 2572 | 91.1% |
|
||
| ov_SC02_027 | 2362 | 1738 | 0 | 2371 | 2692 | 88.1% |
|
||
| ov_SC02_028 | 2364 | 1738 | 0 | 2374 | 2701 | 87.9% |
|
||
| ov_SC02_031 | 2351 | 1739 | 0 | 2356 | 2562 | 92.0% |
|
||
| ov_SC02_035 | 2324 | 1738 | 0 | 2327 | 2520 | 92.3% |
|
||
| ov_SC02_039 | 2309 | 1738 | 0 | 2309 | 2416 | 95.6% |
|
||
| ov_SC02_041 | 2352 | 1738 | 0 | 2355 | 2561 | 92.0% |
|
||
| ov_SC03_001 | 2453 | 1739 | 0 | 2470 | 2869 | 86.1% |
|
||
| ov_SC03_002 | 2371 | 1743 | 0 | 2386 | 2631 | 90.7% |
|
||
| ov_SC03_003 | 2319 | 1738 | 0 | 2320 | 2423 | 95.7% |
|
||
| ov_SC03_006 | 2393 | 1744 | 0 | 2402 | 2767 | 86.8% |
|
||
| ov_SC03_007 | 2370 | 1738 | 0 | 2374 | 2623 | 90.5% |
|
||
| ov_SC03_010 | 2328 | 1738 | 0 | 2328 | 2471 | 94.2% |
|
||
| ov_SC03_011 | 2335 | 1738 | 0 | 2341 | 2527 | 92.6% |
|
||
| ov_SC03_012 | 2310 | 1738 | 0 | 2311 | 2406 | 96.1% |
|
||
| ov_SC03_013 | 2334 | 1738 | 0 | 2334 | 2493 | 93.6% |
|
||
| ov_SC03_014 | 2395 | 1763 | 0 | 2395 | 2685 | 89.2% |
|
||
| ov_SC03_015 | 2397 | 1763 | 0 | 2397 | 2685 | 89.3% |
|
||
| ov_SC03_023 | 2321 | 1738 | 0 | 2322 | 2435 | 95.4% |
|
||
| ov_SC03_024 | 2386 | 1743 | 0 | 2393 | 2641 | 90.6% |
|
||
| ov_SC03_028 | 2355 | 1738 | 0 | 2359 | 2664 | 88.6% |
|
||
| ov_SC03_029 | 2366 | 1740 | 0 | 2376 | 2644 | 89.9% |
|
||
| ov_SC03_030 | 2332 | 1743 | 0 | 2334 | 2495 | 93.5% |
|
||
| ov_SC03_031 | 2328 | 1738 | 0 | 2331 | 2514 | 92.7% |
|
||
| ov_SC03_089 | 2344 | 1738 | 0 | 2351 | 2581 | 91.1% |
|
||
| ov_SC03_090 | 2347 | 1738 | 0 | 2355 | 2625 | 89.7% |
|
||
| ov_SC03_091 | 2349 | 1738 | 0 | 2357 | 2640 | 89.3% |
|
||
| ov_SC03_092 | 2365 | 1738 | 0 | 2377 | 2587 | 91.9% |
|
||
| ov_SC03_093 | 2336 | 1738 | 0 | 2340 | 2563 | 91.3% |
|
||
| ov_SC03_094 | 2331 | 1738 | 0 | 2337 | 2577 | 90.7% |
|
||
| ov_SC03_095 | 2320 | 1738 | 0 | 2323 | 2474 | 93.9% |
|
||
| ov_SC03_096 | 2321 | 1738 | 0 | 2324 | 2465 | 94.3% |
|
||
| ov_SC03_097 | 2357 | 1738 | 0 | 2364 | 2603 | 90.8% |
|
||
| ov_SC03_098 | 2328 | 1738 | 0 | 2331 | 2541 | 91.7% |
|
||
| ov_SC03_099 | 2321 | 1738 | 0 | 2324 | 2504 | 92.8% |
|
||
| ov_SC03_100 | 2331 | 1738 | 0 | 2335 | 2539 | 92.0% |
|
||
| ov_SC03_101 | 2334 | 1738 | 0 | 2338 | 2528 | 92.5% |
|
||
| ov_SC03_102 | 2322 | 1738 | 0 | 2325 | 2492 | 93.3% |
|
||
| ov_SC03_103 | 2327 | 1740 | 0 | 2330 | 2510 | 92.8% |
|
||
| ov_SC03_104 | 2351 | 1738 | 0 | 2358 | 2616 | 90.1% |
|
||
| ov_SC03_105 | 2346 | 1738 | 0 | 2353 | 2597 | 90.6% |
|
||
| ov_SC03_108 | 2312 | 1738 | 0 | 2312 | 2443 | 94.6% |
|
||
| ov_SC03_109 | 2317 | 1738 | 0 | 2319 | 2424 | 95.7% |
|
||
| ov_SC03_110 | 2319 | 1738 | 0 | 2319 | 2468 | 94.0% |
|
||
| ov_SC03_111 | 2330 | 1738 | 0 | 2333 | 2510 | 92.9% |
|
||
| ov_SC03_112 | 2327 | 1740 | 0 | 2329 | 2526 | 92.2% |
|
||
| ov_SC03_113 | 2320 | 1740 | 0 | 2323 | 2468 | 94.1% |
|
||
| ov_SC03_114 | 2308 | 1738 | 0 | 2310 | 2415 | 95.7% |
|
||
| ov_SC03_115 | 2327 | 1738 | 0 | 2329 | 2472 | 94.2% |
|
||
| ov_SC03_116 | 2316 | 1738 | 0 | 2319 | 2438 | 95.1% |
|
||
| ov_SC03_117 | 2350 | 1738 | 0 | 2356 | 2557 | 92.1% |
|
||
| ov_SC03_118 | 2398 | 1762 | 0 | 2399 | 2685 | 89.3% |
|
||
| ov_SC03_119 | 2394 | 1762 | 0 | 2395 | 2685 | 89.2% |
|
||
| ov_SC03_121 | 2324 | 1738 | 0 | 2327 | 2459 | 94.6% |
|
||
| ov_SC03_124 | 2415 | 1734 | 0 | 2435 | 2741 | 88.8% |
|
||
| ov_SC03_125 | 2358 | 1738 | 0 | 2370 | 2588 | 91.6% |
|
||
| ov_SC03_126 | 2321 | 1740 | 0 | 2321 | 2423 | 95.8% |
|
||
| ov_SC04_000 | 2341 | 1742 | 0 | 2350 | 2546 | 92.3% |
|
||
| ov_SC04_002 | 2363 | 1738 | 0 | 2367 | 2636 | 89.8% |
|
||
| ov_SC04_003 | 2334 | 1738 | 0 | 2338 | 2502 | 93.4% |
|
||
| ov_SC04_004 | 2343 | 1738 | 0 | 2345 | 2558 | 91.7% |
|
||
| ov_SC04_005 | 2353 | 1738 | 0 | 2359 | 2612 | 90.3% |
|
||
| ov_SC04_006 | 2320 | 1738 | 0 | 2322 | 2454 | 94.6% |
|
||
| ov_SC04_007 | 2347 | 1738 | 0 | 2351 | 2569 | 91.5% |
|
||
| ov_SC04_008 | 2313 | 1738 | 0 | 2313 | 2415 | 95.8% |
|
||
| ov_SC04_009 | 2327 | 1738 | 0 | 2330 | 2441 | 95.5% |
|
||
| ov_SC04_010 | 2317 | 1738 | 0 | 2318 | 2419 | 95.8% |
|
||
| ov_SC04_011 | 2376 | 1738 | 0 | 2382 | 2803 | 85.0% |
|
||
| ov_SC04_012 | 2315 | 1738 | 0 | 2316 | 2420 | 95.7% |
|
||
| ov_SC04_015 | 2385 | 1739 | 0 | 2396 | 2611 | 91.8% |
|
||
| ov_SC04_016 | 2317 | 1738 | 0 | 2319 | 2440 | 95.0% |
|
||
| ov_SC04_018 | 2451 | 1773 | 0 | 2451 | 2857 | 85.8% |
|
||
| ov_SC04_019 | 2451 | 1773 | 0 | 2451 | 2857 | 85.8% |
|
||
| ov_SC04_020 | 2346 | 1738 | 0 | 2358 | 2567 | 91.9% |
|
||
| ov_SC04_021 | 2321 | 1740 | 0 | 2321 | 2423 | 95.8% |
|
||
| ov_SC05_000 | 2319 | 1742 | 0 | 2322 | 2422 | 95.9% |
|
||
| ov_SC05_001 | 2341 | 1738 | 0 | 2346 | 2574 | 91.1% |
|
||
| ov_SC05_002 | 2325 | 1738 | 0 | 2328 | 2442 | 95.3% |
|
||
| ov_SC05_003 | 2321 | 1738 | 0 | 2322 | 2481 | 93.6% |
|
||
| ov_SC05_004 | 2317 | 1738 | 0 | 2319 | 2464 | 94.1% |
|
||
| ov_SC05_005 | 2321 | 1738 | 0 | 2322 | 2491 | 93.2% |
|
||
| ov_SC05_006 | 2315 | 1738 | 0 | 2315 | 2430 | 95.3% |
|
||
| ov_SC05_007 | 2325 | 1738 | 0 | 2330 | 2482 | 93.9% |
|
||
| ov_SC05_008 | 2346 | 1738 | 0 | 2348 | 2543 | 92.3% |
|
||
| ov_SC05_009 | 2320 | 1738 | 0 | 2324 | 2438 | 95.3% |
|
||
| ov_SC05_010 | 2348 | 1738 | 0 | 2352 | 2588 | 90.9% |
|
||
| ov_SC05_011 | 2316 | 1738 | 0 | 2317 | 2409 | 96.2% |
|
||
| ov_SC05_017 | 2438 | 1735 | 0 | 2449 | 2842 | 86.2% |
|
||
| ov_SC05_018 | 2377 | 1738 | 0 | 2390 | 2673 | 89.4% |
|
||
| ov_SC05_019 | 2321 | 1740 | 0 | 2321 | 2423 | 95.8% |
|
||
| ov_SC06_000 | 2397 | 1747 | 0 | 2400 | 2691 | 89.2% |
|
||
| ov_SC06_006 | 2340 | 1738 | 0 | 2341 | 2511 | 93.2% |
|
||
| ov_SC06_008 | 2361 | 1740 | 0 | 2367 | 2542 | 93.1% |
|
||
| ov_SC06_010 | 2340 | 1738 | 0 | 2345 | 2517 | 93.2% |
|
||
| ov_SC06_011 | 2325 | 1738 | 0 | 2329 | 2468 | 94.4% |
|
||
| ov_SC06_013 | 2319 | 1738 | 0 | 2320 | 2425 | 95.7% |
|
||
| ov_SC06_014 | 2326 | 1738 | 0 | 2328 | 2453 | 94.9% |
|
||
| ov_SC06_015 | 2324 | 1738 | 0 | 2324 | 2421 | 96.0% |
|
||
| ov_SC06_016 | 2340 | 1738 | 0 | 2342 | 2549 | 91.9% |
|
||
| ov_SC06_018 | 2354 | 1740 | 0 | 2361 | 2665 | 88.6% |
|
||
| ov_SC06_020 | 2329 | 1740 | 0 | 2330 | 2518 | 92.5% |
|
||
| ov_SC06_022 | 2354 | 1738 | 0 | 2362 | 2642 | 89.4% |
|
||
| ov_SC06_024 | 2362 | 1738 | 0 | 2368 | 2667 | 88.8% |
|
||
| ov_SC06_025 | 2348 | 1738 | 0 | 2353 | 2572 | 91.5% |
|
||
| ov_SC06_027 | 2308 | 1738 | 0 | 2309 | 2408 | 95.9% |
|
||
| ov_SC06_029 | 2369 | 1738 | 0 | 2381 | 2662 | 89.4% |
|
||
| ov_SC06_030 | 2323 | 1738 | 0 | 2323 | 2456 | 94.6% |
|
||
| ov_SC06_032 | 2349 | 1739 | 0 | 2356 | 2658 | 88.6% |
|
||
| ov_SC06_033 | 2350 | 1739 | 0 | 2357 | 2631 | 89.6% |
|
||
| ov_SC07_000 | 2336 | 1742 | 0 | 2338 | 2521 | 92.7% |
|
||
| ov_SC07_001 | 2320 | 1738 | 0 | 2322 | 2454 | 94.6% |
|
||
| ov_SC07_002 | 2347 | 1738 | 0 | 2351 | 2579 | 91.2% |
|
||
| ov_SC07_006 | 2210 | 1555 | 0 | 2290 | 2456 | 93.2% |
|
||
| ov_SC07_007 | 2229 | 1586 | 0 | 2313 | 2613 | 88.5% |
|
||
| ov_SC07_008 | 2305 | 1738 | 0 | 2305 | 2386 | 96.6% |
|
||
| ov_SC07_009 | 2315 | 1738 | 0 | 2317 | 2430 | 95.3% |
|
||
| ov_SC07_010 | 2232 | 1608 | 0 | 2315 | 2524 | 91.7% |
|
||
| ov_SC07_011 | 2229 | 1585 | 0 | 2309 | 2449 | 94.3% |
|