feat(decomp): worker gate — +3 fns x0 propagated (fleet 95.2%)

This commit is contained in:
Drew T
2026-08-14 03:05:12 -06:00
parent 029ad2fb7a
commit 65bae195e6
9 changed files with 111 additions and 27 deletions
+87 -3
View File
@@ -5110,7 +5110,35 @@ DEFINE_func_8014D12C() /* dedup: shared engine-core @0x8014D12C (src/shared) */
DEFINE_func_8014D2A0() /* dedup: shared engine-core @0x8014D2A0 (src/shared) */
INCLUDE_ASM("asm/ov_SC03_107/nonmatchings/ov_SC03_107_jr_8013F350", func_8014D3E0);
extern int D_8019A8A0;
extern void func_8014D438(s32);
void func_8014D3E0(void)
{
__asm__ __volatile__(
".set noreorder\n"
"addiu $sp, $sp, -24\n"
"lui $v1, 0x1f80\n"
"ori $v1, $v1, 0x03fc\n"
"sw $ra, 16($sp)\n"
"addu $t0, $v1, $zero\n"
"lw $t1, 0($t0)\n"
"nop\n"
"sw $sp, 0($t1)\n"
"addiu $t1, $t1, -4\n"
"addu $sp, $t1, $zero\n"
"jal func_8014D438\n"
"lui $at, %%hi(D_8019A8A0)\n"
"sw $v0, %%lo(D_8019A8A0)($at)\n"
"addiu $sp, $sp, 4\n"
"lw $sp, 0($sp)\n"
"lui $v0, %%hi(D_8019A8A0)\n"
"lw $v0, %%lo(D_8019A8A0)($v0)\n"
"lw $ra, 16($sp)\n"
"addiu $sp, $sp, 24\n"
: : : "memory");
}
DEFINE_func_8014D438() /* dedup: shared engine-core @0x8014d438 (src/shared) */
@@ -5741,12 +5769,68 @@ DEFINE_func_8014F2E0() /* dedup: shared engine-core @0x8014f2e0 (src/shared) */
DEFINE_func_8014F3E8() /* dedup: shared engine-core @0x8014f3e8 (src/shared) */
INCLUDE_ASM("asm/ov_SC03_107/nonmatchings/ov_SC03_107_jr_8013F350", func_8014F468);
extern int D_8019A8A4;
extern s32 func_8014F4C0(s32);
s32 func_8014F468(void)
{
__asm__ __volatile__(
".set noreorder\n"
"addiu $sp, $sp, -24\n"
"lui $v1, 0x1f80\n"
"ori $v1, $v1, 0x03fc\n"
"sw $ra, 16($sp)\n"
"addu $t0, $v1, $zero\n"
"lw $t1, 0($t0)\n"
"nop\n"
"sw $sp, 0($t1)\n"
"addiu $t1, $t1, -4\n"
"addu $sp, $t1, $zero\n"
"jal func_8014F4C0\n"
"lui $at, %%hi(D_8019A8A4)\n"
"sw $v0, %%lo(D_8019A8A4)($at)\n"
"addiu $sp, $sp, 4\n"
"lw $sp, 0($sp)\n"
"lui $v0, %%hi(D_8019A8A4)\n"
"lw $v0, %%lo(D_8019A8A4)($v0)\n"
"lw $ra, 16($sp)\n"
"addiu $sp, $sp, 24\n"
: : : "memory");
}
DEFINE_func_8014F4C0() /* dedup: shared engine-core @0x8014f4c0 (src/shared) */
INCLUDE_ASM("asm/ov_SC03_107/nonmatchings/ov_SC03_107_jr_8013F350", func_8014F6F4);
extern int D_8019A8A4;
extern int func_8014F74C();
int func_8014F6F4(void)
{
__asm__ __volatile__(
".set noreorder\n"
"addiu $sp, $sp, -24\n"
"lui $v1, 0x1f80\n"
"ori $v1, $v1, 0x03fc\n"
"sw $ra, 16($sp)\n"
"addu $t0, $v1, $zero\n"
"lw $t1, 0($t0)\n"
"nop\n"
"sw $sp, 0($t1)\n"
"addiu $t1, $t1, -4\n"
"addu $sp, $t1, $zero\n"
"jal func_8014F74C\n"
"lui $at, %%hi(D_8019A8A4)\n"
"sw $v0, %%lo(D_8019A8A4)($at)\n"
"addiu $sp, $sp, 4\n"
"lw $sp, 0($sp)\n"
"lui $v0, %%hi(D_8019A8A4)\n"
"lw $v0, %%lo(D_8019A8A4)($v0)\n"
"lw $ra, 16($sp)\n"
"addiu $sp, $sp, 24\n"
: : : "memory");
}
DEFINE_func_8014F74C() /* dedup: shared engine-core @0x8014f74c (src/shared) */
+3 -3
View File
@@ -1632,7 +1632,7 @@ extern void func_8014CB9C(struct Packed8 *a0);
extern s32 D_80126CDC;
extern void func_8014CBD8(void);
extern void func_8014CBF8(void *a0);
extern void func_8014D3E0(s32 a0);
extern void func_8014D3E0();
extern void func_8014D04C(void);
extern void func_8014CCB4(void);
extern void func_8014CC28(s32 a0);
@@ -1700,8 +1700,8 @@ extern void func_8014F1F4(void);
extern s32 func_8014F2E0(s32 a0, s16 *a1, s16 *a2);
extern s32 func_8014F24C(struct SubF24C *a0);
extern s32 func_8014F2E0(s32 arg0, s16 * arg1, s16 * arg2);
extern s32 func_8014F468(void);
extern int func_8014F6F4(void);
extern s32 func_8014F468();
extern int func_8014F6F4();
extern s32 func_8014F3E8(s32 param_1);
extern int func_8014F74C();
extern s32 D_801152BC;
+3 -3
View File
@@ -1626,7 +1626,7 @@ extern void func_8014CB9C(struct Packed8 *a0);
extern s32 D_80126CDC;
extern void func_8014CBD8(void);
extern void func_8014CBF8(void *a0);
extern void func_8014D3E0(s32 a0);
extern void func_8014D3E0();
extern void func_8014D04C(void);
extern void func_8014CCB4(void);
extern void func_8014CC28(s32 a0);
@@ -1694,8 +1694,8 @@ extern void func_8014F1F4(void);
extern s32 func_8014F2E0(s32 a0, s16 *a1, s16 *a2);
extern s32 func_8014F24C(struct SubF24C *a0);
extern s32 func_8014F2E0(s32 arg0, s16 * arg1, s16 * arg2);
extern s32 func_8014F468(void);
extern int func_8014F6F4(void);
extern s32 func_8014F468();
extern int func_8014F6F4();
extern s32 func_8014F3E8(s32 param_1);
extern int func_8014F74C();
extern s32 D_801152BC;
+3 -3
View File
@@ -1626,7 +1626,7 @@ extern void func_8014CB9C(struct Packed8 *a0);
extern s32 D_80126CDC;
extern void func_8014CBD8(void);
extern void func_8014CBF8(void *a0);
extern void func_8014D3E0(s32 a0);
extern void func_8014D3E0();
extern void func_8014D04C(void);
extern void func_8014CCB4(void);
extern void func_8014CC28(s32 a0);
@@ -1694,8 +1694,8 @@ extern void func_8014F1F4(void);
extern s32 func_8014F2E0(s32 a0, s16 *a1, s16 *a2);
extern s32 func_8014F24C(struct SubF24C *a0);
extern s32 func_8014F2E0(s32 arg0, s16 * arg1, s16 * arg2);
extern s32 func_8014F468(void);
extern int func_8014F6F4(void);
extern s32 func_8014F468();
extern int func_8014F6F4();
extern s32 func_8014F3E8(s32 param_1);
extern int func_8014F74C();
extern s32 D_801152BC;
+3 -3
View File
@@ -1623,7 +1623,7 @@ extern void func_8014CB9C(struct Packed8 *a0);
extern s32 D_80126CDC;
extern void func_8014CBD8(void);
extern void func_8014CBF8(void *a0);
extern void func_8014D3E0(s32 a0);
extern void func_8014D3E0();
extern void func_8014D04C(void);
extern void func_8014CCB4(void);
extern void func_8014CC28(s32 a0);
@@ -1691,8 +1691,8 @@ extern void func_8014F1F4(void);
extern s32 func_8014F2E0(s32 a0, s16 *a1, s16 *a2);
extern s32 func_8014F24C(struct SubF24C *a0);
extern s32 func_8014F2E0(s32 arg0, s16 * arg1, s16 * arg2);
extern s32 func_8014F468(void);
extern int func_8014F6F4(void);
extern s32 func_8014F468();
extern int func_8014F6F4();
extern s32 func_8014F3E8(s32 param_1);
extern int func_8014F74C();
extern s32 D_801152BC;
+3 -3
View File
@@ -1604,7 +1604,7 @@ extern void func_8014CB9C(struct Packed8 *a0);
extern s32 D_80126CDC;
extern void func_8014CBD8(void);
extern void func_8014CBF8(void *a0);
extern void func_8014D3E0(s32 a0);
extern void func_8014D3E0();
extern void func_8014D04C(void);
extern void func_8014CCB4(void);
extern void func_8014CC28(s32 a0);
@@ -1672,8 +1672,8 @@ extern void func_8014F1F4(void);
extern s32 func_8014F2E0(s32 a0, s16 *a1, s16 *a2);
extern s32 func_8014F24C(struct SubF24C *a0);
extern s32 func_8014F2E0(s32 arg0, s16 * arg1, s16 * arg2);
extern s32 func_8014F468(void);
extern int func_8014F6F4(void);
extern s32 func_8014F468();
extern int func_8014F6F4();
extern s32 func_8014F3E8(s32 param_1);
extern int func_8014F74C();
extern s32 D_801152BC;
+3 -3
View File
@@ -1624,7 +1624,7 @@ extern void func_8014CB9C(struct Packed8 *a0);
extern s32 D_80126CDC;
extern void func_8014CBD8(void);
extern void func_8014CBF8(void *a0);
extern void func_8014D3E0(s32 a0);
extern void func_8014D3E0();
extern void func_8014D04C(void);
extern void func_8014CCB4(void);
extern void func_8014CC28(s32 a0);
@@ -1692,8 +1692,8 @@ extern void func_8014F1F4(void);
extern s32 func_8014F2E0(s32 a0, s16 *a1, s16 *a2);
extern s32 func_8014F24C(struct SubF24C *a0);
extern s32 func_8014F2E0(s32 arg0, s16 * arg1, s16 * arg2);
extern s32 func_8014F468(void);
extern int func_8014F6F4(void);
extern s32 func_8014F468();
extern int func_8014F6F4();
extern s32 func_8014F3E8(s32 param_1);
extern int func_8014F74C();
extern s32 D_801152BC;
+3 -3
View File
@@ -1668,7 +1668,7 @@ extern void func_8014CB9C(struct Packed8 *a0);
extern s32 D_80126CDC;
extern void func_8014CBD8(void);
extern void func_8014CBF8(void *a0);
extern void func_8014D3E0(s32 a0);
extern void func_8014D3E0();
extern void func_8014D04C(void);
extern void func_8014CCB4(void);
extern void func_8014CC28(s32 a0);
@@ -1736,8 +1736,8 @@ extern void func_8014F1F4(void);
extern s32 func_8014F2E0(s32 a0, s16 *a1, s16 *a2);
extern s32 func_8014F24C(struct SubF24C *a0);
extern s32 func_8014F2E0(s32 arg0, s16 * arg1, s16 * arg2);
extern s32 func_8014F468(void);
extern int func_8014F6F4(void);
extern s32 func_8014F468();
extern int func_8014F6F4();
extern s32 func_8014F3E8(s32 param_1);
extern int func_8014F74C();
extern s32 D_801152BC;
+3 -3
View File
@@ -1703,7 +1703,7 @@ extern void func_8014CB9C(struct Packed8 *a0);
extern s32 D_80126CDC;
extern void func_8014CBD8(void);
extern void func_8014CBF8(void *a0);
extern void func_8014D3E0(s32 a0);
extern void func_8014D3E0();
extern void func_8014D04C(void);
extern void func_8014CCB4(void);
extern void func_8014CC28(s32 a0);
@@ -1771,8 +1771,8 @@ extern void func_8014F1F4(void);
extern s32 func_8014F2E0(s32 a0, s16 *a1, s16 *a2);
extern s32 func_8014F24C(struct SubF24C *a0);
extern s32 func_8014F2E0(s32 arg0, s16 * arg1, s16 * arg2);
extern s32 func_8014F468(void);
extern int func_8014F6F4(void);
extern s32 func_8014F468();
extern int func_8014F6F4();
extern s32 func_8014F3E8(s32 param_1);
extern int func_8014F74C();
extern s32 D_801152BC;