mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-10-08 09:43:04 -04:00
phase-36: S104 s104_d38 — func_801818A4 banked at 0 through the whole-object gate + propagated — $16 pin → 0: the cast copy of the parameter deleted (cse.c:846-856 + the second pass :8352-8355 kept a copy that crossed the call)
This commit is contained in:
@@ -2631,18 +2631,17 @@ void func_80186AE0(void *a0) {
|
||||
|
||||
s32 func_80186B1C(void *a0, void *a1) {
|
||||
s16 stack_buf[8];
|
||||
register s16 *s0 __asm__("$16") = (s16 *)a1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus9)
|
||||
s16 v0;
|
||||
s32 result;
|
||||
s32 ret;
|
||||
|
||||
v0 = s0[6];
|
||||
v0 = ((s16 *)a1)[6];
|
||||
stack_buf[2] = v0;
|
||||
v0 = s0[7];
|
||||
v0 = ((s16 *)a1)[7];
|
||||
stack_buf[5] = 0;
|
||||
stack_buf[1] = 0;
|
||||
stack_buf[6] = v0;
|
||||
v0 = s0[2];
|
||||
v0 = ((s16 *)a1)[2];
|
||||
stack_buf[4] = v0;
|
||||
stack_buf[0] = v0;
|
||||
|
||||
@@ -2651,7 +2650,7 @@ s32 func_80186B1C(void *a0, void *a1) {
|
||||
if (result != 0) {
|
||||
ret = 1;
|
||||
} else {
|
||||
v0 = s0[3];
|
||||
v0 = ((s16 *)a1)[3];
|
||||
stack_buf[4] = v0;
|
||||
stack_buf[0] = v0;
|
||||
result = func_8012DEB8((s32)a0, (s32)&stack_buf[0], (s32)&stack_buf[4]);
|
||||
|
||||
@@ -6451,18 +6451,17 @@ void func_80181868(void *a0) {
|
||||
|
||||
s32 func_801818A4(void *a0, void *a1) {
|
||||
s16 stack_buf[8];
|
||||
register s16 *s0 __asm__("$16") = (s16 *)a1; // !FAKE: pin $16 — NEEDED DIFFERS (P36 rung B tus7)
|
||||
s16 v0;
|
||||
s32 result;
|
||||
s32 ret;
|
||||
|
||||
v0 = s0[6];
|
||||
v0 = ((s16 *)a1)[6];
|
||||
stack_buf[2] = v0;
|
||||
v0 = s0[7];
|
||||
v0 = ((s16 *)a1)[7];
|
||||
stack_buf[5] = 0;
|
||||
stack_buf[1] = 0;
|
||||
stack_buf[6] = v0;
|
||||
v0 = s0[2];
|
||||
v0 = ((s16 *)a1)[2];
|
||||
stack_buf[4] = v0;
|
||||
stack_buf[0] = v0;
|
||||
|
||||
@@ -6471,7 +6470,7 @@ s32 func_801818A4(void *a0, void *a1) {
|
||||
if (result != 0) {
|
||||
ret = 1;
|
||||
} else {
|
||||
v0 = s0[3];
|
||||
v0 = ((s16 *)a1)[3];
|
||||
stack_buf[4] = v0;
|
||||
stack_buf[0] = v0;
|
||||
result = func_8012DEB8((s32)a0, (s32)&stack_buf[0], (s32)&stack_buf[4]);
|
||||
|
||||
Reference in New Issue
Block a user