Skip to content

Match fn_8019A86C and ftCo_800B2AFC - #3176

Merged
ribbanya merged 4 commits into
doldecomp:masterfrom
MarkMcCaskey:match-close-residuals-0822
Aug 22, 2026
Merged

Match fn_8019A86C and ftCo_800B2AFC#3176
ribbanya merged 4 commits into
doldecomp:masterfrom
MarkMcCaskey:match-close-residuals-0822

Conversation

@MarkMcCaskey

@MarkMcCaskey MarkMcCaskey commented Aug 22, 2026

Copy link
Copy Markdown
Collaborator

Getting some “easy” wins to push us to 90% lol

The bracket-slot writes are a four-iteration loop over the tournament data, not four unrolled stores through a BracketEntry pointer. Indexing the array directly inside the loop creates the element-offset multiply after the stored value's load, which is the order retail colours (mulli in r0, the loaded byte in r4). Retune PAD_STACK for the local that the pointer no longer occupies.
@MarkMcCaskey MarkMcCaskey added the ai-assisted Utilizes a LLM to do the heavy lifting label Aug 22, 2026
@decomp-dev

decomp-dev Bot commented Aug 22, 2026

Copy link
Copy Markdown

Report for GALE01 (c41b18c - 944218f)

📈 Matched code: 90.00% (+0.10%, +3992 bytes)

✅ 2 new matches
Unit Item Bytes Before After
main/melee/ft/chara/ftCommon/ftCo_0A01 ftCo_800B2AFC +3 99.91% 100.00%
main/melee/gm/gmtou_1 fn_8019A86C +1 99.95% 100.00%

Each mpCheckFloor probe's position, normal, line and flags are used only inside the case that runs it, and retail allocates them as one contiguous block per call site, so they are declared in their own case blocks. The probe itself is written out per case the way ftCo_800AEA8C already is: found starts at 0 and doubles as the filter gobj argument, and the ignored-floor test joins through a one-case switch. Calling ftCo_IsIgnoredFloor through one more inline level keeps ftCo_800A1B38 out of line without the _noinline wrapper, whose per-site temporaries were taking the stack slots retail leaves below the last probe block.

ftCo_800B2AFC 99.9102% -> 100%; every other function in the TU is byte-identical.
@MarkMcCaskey MarkMcCaskey changed the title Match fn_8019A86C Match fn_8019A86C and ftCo_800B2AFC Aug 22, 2026
@MarkMcCaskey
MarkMcCaskey marked this pull request as ready for review August 22, 2026 18:17
@ribbanya
ribbanya merged commit e7844ca into doldecomp:master Aug 22, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ai-assisted Utilizes a LLM to do the heavy lifting

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants