feat(phase-29 crack-wave): type-lift SVec/Fr_801670E4 -> engine_types.h (func_801670E4 sweep enabler)

This commit is contained in:
Drew T
2026-07-18 12:16:04 -06:00
parent b346c0abe8
commit cceec3b8ea
2 changed files with 16 additions and 14 deletions
-14
View File
@@ -5104,21 +5104,7 @@ INCLUDE_ASM("asm/ov_SC01_077/nonmatchings/ov_SC01_077_jr_8015AE2C", func_8016706
// @stuck: 16/279 masked. 3 runs, ONE residual class: gcc's list-scheduler puts `la $s2` (p=DATA) + `addu $s4,$zero,$zero` (i=0) BEFORE the callee-arg address setup (addiu $a1,$sp,0x10 / addu $a2,$a1,$zero); the target emits them AFTER. Inert to ~40 statement-order permutations + pin/barrier combos (sched priority dominates the LUID tie-break, sched.c rank_for_schedule). Runs: 19-24 (blk1), 111-114 (region-B cx-load rotation), 177-182 (blk3). Permuter fuel.
typedef struct { s16 x, y, z, pad; } SVec_801670E4; /* 8 bytes */
typedef struct {
/* 0x00 */ u16 cx, cy, cz;
/* 0x06 */ u16 _p06;
/* 0x08 */ u16 a8[4];
/* 0x10 */ s32 pos[3];
/* 0x1C */ s32 _p1C;
/* 0x20 */ SVec_801670E4 v[4];
/* 0x40 */ struct { u8 r, g, b, cd; } col[4];
/* 0x50 */ u32 code;
/* 0x54 */ s32 _p54;
/* 0x58 */ u8 m1[0x20];
/* 0x78 */ u8 m2[0x20];
} Fr_801670E4; /* 0x98 bytes -> sp+0x10 .. sp+0xA8 */
extern void func_80149350(s32);
extern void func_800D20C0(void *a0, void *a1, s32 a2);
+16
View File
@@ -625,3 +625,19 @@ typedef struct {
u8 pad44[0x10];
} Ent_956C;
/* Phase-29 crack-wave lift (func_801670E4 family) */
typedef struct { s16 x, y, z, pad; } SVec_801670E4; /* 8 bytes */
typedef struct {
/* 0x00 */ u16 cx, cy, cz;
/* 0x06 */ u16 _p06;
/* 0x08 */ u16 a8[4];
/* 0x10 */ s32 pos[3];
/* 0x1C */ s32 _p1C;
/* 0x20 */ SVec_801670E4 v[4];
/* 0x40 */ struct { u8 r, g, b, cd; } col[4];
/* 0x50 */ u32 code;
/* 0x54 */ s32 _p54;
/* 0x58 */ u8 m1[0x20];
/* 0x78 */ u8 m2[0x20];
} Fr_801670E4; /* 0x98 bytes -> sp+0x10 .. sp+0xA8 */