Files
goldeneye-pc-port/src
James Dansereau 1db6992e5e Fix D203/D253: Facility SIGSEGV on Linux — callback prototype ABI mismatch
stanCheckLinkedSpecialTile was decompiled with an all-s32 middle-arg
prototype while its callers pass it through the standTileLocusCallback_B_t
typedef (f32 f32 f32). On x86-64 SysV the int/float class split puts the
6th arg (outFlags/record) in %rdx per the typedef but %r9 per the
definition, so the FORCECROUCH/LADDER store hit a stale scratch register.
MIPS o32 passes both through GPRs a0-a5 identically, which is why the
mismatch was invisible on N64 and in the decompilation.

ABI-class edit (AGENTS.md #2 narrow exception): body never uses the three
middle params; N64 codegen unaffected. Verified under gdb on WSL:
pre-fix SIGSEGV at stan.c:2441 with r9=0x3 and a valid record in the
caller frame; post-fix the same walk route completes clean.
2026-09-13 18:55:26 -04:00
..
2023-09-28 11:49:33 -04:00
2020-11-20 14:35:54 -06:00
2022-06-06 15:07:33 -05:00
2026-08-16 17:30:25 -04:00
2026-08-16 17:30:25 -04:00
2026-08-16 17:30:25 -04:00
2020-11-20 14:35:54 -06:00
2022-06-06 15:07:33 -05:00
2020-11-20 14:35:54 -06:00
2022-06-06 15:07:33 -05:00
2022-06-06 15:07:33 -05:00
2026-08-16 17:30:25 -04:00
2022-06-06 15:07:33 -05:00
2023-09-28 11:49:33 -04:00
2026-08-16 17:30:25 -04:00
2023-09-28 11:49:33 -04:00
2023-09-28 11:49:33 -04:00
2026-08-16 17:30:25 -04:00
2026-08-16 17:30:25 -04:00
2022-06-06 15:07:33 -05:00
2022-06-06 15:07:33 -05:00
2022-06-06 15:07:33 -05:00
2022-06-06 15:07:33 -05:00
2026-08-16 17:30:25 -04:00
2026-08-16 17:30:25 -04:00
2022-10-29 10:41:01 -04:00
2022-06-06 15:07:33 -05:00
2022-06-06 15:07:33 -05:00
2022-06-06 15:07:33 -05:00
2023-09-28 11:49:33 -04:00
2023-09-28 11:49:33 -04:00
2026-08-16 17:30:25 -04:00
2026-08-16 17:30:25 -04:00
2022-06-06 15:07:33 -05:00
2022-06-06 15:07:33 -05:00
2023-09-28 11:49:33 -04:00
2023-09-28 11:49:33 -04:00
2023-09-28 11:49:33 -04:00
2023-09-28 11:49:33 -04:00