mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-09-26 21:36:06 -04:00
fix(phase-30 T6): byte-neutral decl conforms unblock the SC07 EXTEND lane
The dedup_extend SC07 lane banked 0/36. Captured every failure's own compiler error rather than guessing: 5 PLUMBING (declaration conflicts) + 4 DIFF per binary, and the PLUMBING set reduces to 4 distinct symbols repeated across all four binaries. Fixed at the lowest available blast radius, each byte-neutral BY CONSTRUCTION and proven by R22: - func_80146C3C (8 of 36): T2, but 1 token. DEFINE_func_8016A08C / DEFINE_func_8016A1CC declared it `(void)` while the SC07 TUs declare `(u8 *a0)`. Both macros already CAST at the call site, so the prototype is codegen-irrelevant -> relax to `()` (no-prototype). Measured first: all 4,020 fleet decls are (void)/()/(u8*)/(u8 *a0) — no default-promotion param anywhere, so `()` is compatible with every one of them (the gcc-2.7.2 `()` dead-end needs a promoting param; there is none). - func_8014F4C0 (4 of 36, self-axis), D_80126CC4 (3), func_8012E5CC (1): T1 binary-local. Conformed the SC07 decls to the fleet-canonical form. Every one has ZERO uncast uses in its TU (verified per file), so the decls were pure splat boilerplate with no codegen effect. Deliberately NOT touched: engine_core.h beyond those 2 lines. The §29 law is about BULK header edits (the 2,046-file sed that still didn't build); 2 targeted macro lines with a measured compatibility argument is not that. R22 clean-fleet: make clean && extract-all && check-all -> 140 passed, 0 failed of 140. Enabling change only; no function banked in this commit. Method note (mine, recorded): I read `corpus.stubs` while `make extract-all` was mid-flight and got garbage — R32's coverage assertion refused to answer instead of returning a wrong stub set. A measurement taken during a rebuild is not a measurement (S27's law, re-earned). Also: `nohup CMD &` inside a backgrounded Bash call makes the harness signal completion of the WRAPPER, not the campaign — the R22 "finished" at 63/140. Waited on `pgrep -x make` instead.
This commit is contained in:
@@ -365,7 +365,7 @@ extern s32 func_8012E504(s32 a0, s32 a1);
|
||||
extern s32 func_8012E544(s32 a0);
|
||||
extern s32 func_8012E57C(s32 a0, s32 a1);
|
||||
extern s32 RotTransPers(s32 a0, s32 a1, s32 *a2, s32 *a3);
|
||||
extern void func_8012E5CC(s32 param_1, u16 param_2, u16 param_3);
|
||||
extern s32 func_8012E5CC(s32 a0, s32 a1, s32 a2);
|
||||
extern void func_8012E688(s32 param_1, u16 param_2, u16 param_3);
|
||||
extern s32 func_8012E778(int param_1, int param_2);
|
||||
extern void func_8012E88C(u8 *a0);
|
||||
@@ -536,7 +536,7 @@ extern void func_80136C54(void);
|
||||
extern void func_80136D00(void);
|
||||
extern void SetLineG2(void *);
|
||||
extern void func_80136D08(s32 arg0, s32 arg1);
|
||||
extern u16 D_80126CC4;
|
||||
extern s16 D_80126CC4;
|
||||
extern M2C_UNK func_800153CC(M2C_UNK, u16, M2C_UNK, M2C_UNK, s32, s32);
|
||||
extern void func_80136DFC(void);
|
||||
extern void func_80136EC4(void);
|
||||
@@ -3366,7 +3366,7 @@ DEFINE_func_801472F0() /* dedup: shared engine-core @0x801472f0 (src/shared) */
|
||||
extern s16 currentLocationId;
|
||||
extern s32 D_80126B58;
|
||||
extern void func_80015978(s32, s32*);
|
||||
extern void func_8012E5CC(s32, u16, u16);
|
||||
extern s32 func_8012E5CC(s32, s32, s32);
|
||||
extern void func_8002D4C8(s32 a0, s32 a1);
|
||||
|
||||
void func_80147364(u16 param_1, u16 param_2) {
|
||||
@@ -5942,7 +5942,7 @@ DEFINE_func_8014F3E8() /* dedup: shared engine-core @0x8014F3E8 (src/shared) */
|
||||
|
||||
|
||||
|
||||
extern void func_8014F4C0();
|
||||
extern s32 func_8014F4C0();
|
||||
|
||||
s32 func_8014F468(void)
|
||||
{
|
||||
|
||||
@@ -529,7 +529,7 @@ extern void func_80136C54(void);
|
||||
extern void func_80136D00(void);
|
||||
extern void SetLineG2(void *);
|
||||
extern void func_80136D08(s32 arg0, s32 arg1);
|
||||
extern u16 D_80126CC4;
|
||||
extern s16 D_80126CC4;
|
||||
extern M2C_UNK func_800153CC(M2C_UNK, u16, M2C_UNK, M2C_UNK, s32, s32);
|
||||
extern void func_80136DFC(void);
|
||||
extern void func_80136EC4(void);
|
||||
@@ -5725,7 +5725,7 @@ DEFINE_func_8014F2E0() /* dedup: shared engine-core @0x8014f2e0 (src/shared) */
|
||||
DEFINE_func_8014F3E8() /* dedup: shared engine-core @0x8014F3E8 (src/shared) */
|
||||
|
||||
|
||||
extern void func_8014F4C0(u8 *a0);
|
||||
extern s32 func_8014F4C0();
|
||||
|
||||
s32 func_8014F468(void)
|
||||
{
|
||||
|
||||
@@ -4766,7 +4766,7 @@ DEFINE_func_8014F2E0() /* dedup: shared engine-core @0x8014f2e0 (src/shared) */
|
||||
DEFINE_func_8014F3E8() /* dedup: shared engine-core @0x8014F3E8 (src/shared) */
|
||||
|
||||
|
||||
extern void func_8014F4C0(u8 *a0);
|
||||
extern s32 func_8014F4C0();
|
||||
|
||||
s32 func_8014F468(void)
|
||||
{
|
||||
|
||||
@@ -529,7 +529,7 @@ extern void func_80136C54(void);
|
||||
extern void func_80136D00(void);
|
||||
extern void SetLineG2(void *);
|
||||
extern void func_80136D08(s32 arg0, s32 arg1);
|
||||
extern u16 D_80126CC4;
|
||||
extern s16 D_80126CC4;
|
||||
extern M2C_UNK func_800153CC(M2C_UNK, u16, M2C_UNK, M2C_UNK, s32, s32);
|
||||
extern void func_80136DFC(void);
|
||||
extern void func_80136EC4(void);
|
||||
@@ -5727,7 +5727,7 @@ DEFINE_func_8014F2E0() /* dedup: shared engine-core @0x8014f2e0 (src/shared) */
|
||||
DEFINE_func_8014F3E8() /* dedup: shared engine-core @0x8014F3E8 (src/shared) */
|
||||
|
||||
|
||||
extern void func_8014F4C0(u8 *a0);
|
||||
extern s32 func_8014F4C0();
|
||||
|
||||
s32 func_8014F468(void)
|
||||
{
|
||||
|
||||
@@ -20581,7 +20581,7 @@
|
||||
extern void func_80147324(s32 arg0); \
|
||||
extern s32 func_80146A6C(s32 a0, void *a1, s32 a2, s32 a3, s32 a4, s32 a5, s32 a6); \
|
||||
extern void func_80147364(); \
|
||||
extern void func_80146C3C(void); \
|
||||
extern void func_80146C3C(); \
|
||||
void func_8016A08C(s32 param_1) { \
|
||||
register s32 s0 __asm__("$16"); \
|
||||
register void *s1 __asm__("$17"); \
|
||||
@@ -22406,7 +22406,7 @@
|
||||
extern u8 D_80078EBF; \
|
||||
extern void func_80147324(s32 arg0); \
|
||||
extern void func_80147364(); \
|
||||
extern void func_80146C3C(void); \
|
||||
extern void func_80146C3C(); \
|
||||
void func_8016A1CC(int param_1) \
|
||||
{ \
|
||||
register int iVar1 __asm__("$2"); \
|
||||
|
||||
Reference in New Issue
Block a user