Commit Graph

2635 Commits

Author SHA1 Message Date
Drew T 2c9ec80230 phase-36: S104 s104_e7 — func_80188034 banked at 0 through the whole-object gate + propagated — e7 sibling, the same division move 2026-09-11 01:13:09 -06:00
Drew T a4378aa049 phase-36: S104 s104_e7 — func_80181E98 banked at 0 through the whole-object gate + propagated — barrier → 0: inline returns + the sign-split test as one ternary (expr.c:9124; jump.c:2371/2469) 2026-09-11 01:12:32 -06:00
Drew T 8310031fe5 phase-36: S104 s104_e7 — func_80181294 banked at 0 through the whole-object gate + propagated — $2 pin → 0: a ternary into the u16 slot (jump.c:731 refuses a SUBREG destination) 2026-09-11 01:11:36 -06:00
Drew T bd0167bf98 phase-36: S104 s104_e7 — func_801831FC banked at 0 through the whole-object gate + propagated — $2 pin → 0: the hand-rolled shift as a real / 0x800 into a fresh local (set_preference global.c:1535/1545) 2026-09-11 01:11:00 -06:00
Drew T ef48a0c499 phase-36: S104 s104_e7 — func_80181BBC banked at 0 through the whole-object gate + propagated — $4 pin → 0: every temp one value (a multi-death local is refused by local-alloc.c:472) 2026-09-11 01:10:04 -06:00
Drew T a2e8a89248 phase-36: S104 s104_e3 — func_80036FB0 banked at 0 through the whole-object gate + propagated — keepalive + dead f64 → 0: the TU's own for-loop idiom over an indexed array (duplicate_loop_exit_test jump.c:2131; combine.c:2306 → reload1.c:2331 slot) 2026-09-11 01:06:00 -06:00
Drew T 577b2592d6 phase-36: S104 s104_e4 — func_80186770 banked at 0 through the whole-object gate + propagated — → 0: the global inline in the call + the store as an indexed access (local-alloc.c:1486-1500; expr.c:4568-4577) 2026-09-11 00:47:03 -06:00
Drew T bb7973c040 phase-36: S104 s104_e4 — func_80184754 banked at 0 through the whole-object gate + propagated — launder → 0: the parameter copy deleted + the call at its real arity (global.c:594-610) 2026-09-11 00:46:19 -06:00
Drew T b06062ac1a phase-36: S104 s104_e4 — func_80183B9C banked at 0 through the whole-object gate + propagated — 4 → 0: the call at its real arity keeps reorg from stealing into the delay slot (reorg.c:3374-3376) 2026-09-11 00:45:26 -06:00
Drew T 2e7bc09474 phase-36: S104 s104_e1 — func_801AB818 banked at 0 through the whole-object gate + propagated — memory barrier → 0: a memory read between the two stack-slot stores (flow.c:1726-1727/2379) spelled as an array index (expr.c:4568-4577, sched.c:831-839) 2026-09-11 00:42:31 -06:00
Drew T 74657a03ba phase-36: S104 — the widened R31/R35 pass (882 classes, 482 s): delever_regen --bank: 4 of 4 MATCH row(s) banked, 1 sibling(s) propagated — no 2026-09-11 00:36:21 -06:00
Drew T 65b0855c1c phase-36: S104 part-3 bank resumed — 6 of 38 MATCH rows banked (the rest banked before the timeout); e1–e5 TU-batch packs; R22 follows 2026-09-11 00:32:13 -06:00
Drew T c5786dac6f phase-36: S104 part-3 bank (R37 ×4 + the all-families pass since part 2, live residue only), interrupted by a 590 s tool timeout mid-run — the 30 files it had written verified by R22 check-all 218/218 before this commit; the rest resumes 2026-09-11 00:27:14 -06:00
Drew T c1fd262551 phase-36: S104 s104_d34 — func_8018BA4C banked at 0 through the whole-object gate + propagated — d34 copy 2026-09-11 00:12:09 -06:00
Drew T 804faacc85 phase-36: S104 s104_d34 — func_8017ED60 banked at 0 through the whole-object gate + propagated — d34 copy 2026-09-11 00:11:28 -06:00
Drew T f22b8b7d54 phase-36: S104 s104_d34 — func_8017EF54 banked at 0 through the whole-object gate + propagated — d34 copy 2026-09-11 00:10:33 -06:00
Drew T 1dca90ccf0 phase-36: S104 s104_d34 — func_80181408 banked at 0 through the whole-object gate + propagated — 2 levers + a dead pad → 0: the address alias for the second call (cse.c:1937/2107), the goto chain as an if/else with a store per arm, the field decremented in place 2026-09-11 00:09:58 -06:00
Drew T 27fb22cadb phase-36: S104 s104_d39 — func_80185484 banked at 0 through the whole-object gate + propagated — 2 levers → 0: (s16) casts at BOTH shift sites (c-typeck.c:2418-2450, cse.c:5577-5667) 2026-09-11 00:07:41 -06:00
Drew T 261c01c397 phase-36: S104 s104_d38 — func_80188FB4 banked at 0 through the whole-object gate + propagated — d38 sibling: an unmarked do-while removed 2026-09-11 00:06:13 -06:00
Drew T e0c9c78481 phase-36: S104 s104_d38 — func_801848A4 banked at 0 through the whole-object gate + propagated — d38 sibling: an unmarked do-while removed 2026-09-11 00:05:31 -06:00
Drew T 1e0da43585 phase-36: S104 s104_d38 — func_801865E4 banked at 0 through the whole-object gate + propagated — d38 sibling: an unmarked do-while removed 2026-09-11 00:04:56 -06:00
Drew T ad48b5154e phase-36: S104 s104_d38 — func_801826E8 banked at 0 through the whole-object gate + propagated — d38 sibling: an unmarked do-while removed 2026-09-11 00:04:13 -06:00
Drew T ac8bc32657 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) 2026-09-11 00:03:35 -06:00
Drew T c3023eee40 phase-36: S104 s104_d35 — func_80183CE8 banked at 0 through the whole-object gate + propagated — d35 copy 2026-09-11 00:02:08 -06:00
Drew T f5a68c412e phase-36: S104 s104_d35 — func_8018486C banked at 0 through the whole-object gate + propagated — 3 pins → 0: the goto chain as three for loops with break (loop notes: hoisted constants + doubled refs, loop.c:702/flow.c:2067) and the cmp local as a literal 2026-09-11 00:01:34 -06:00
Drew T 1f4de6b82a phase-36: S104 s104_d37 — func_80181F38 banked at 0 through the whole-object gate + propagated — d37 copy 2026-09-11 00:00:30 -06:00
Drew T 721a9c0635 phase-36: S104 s104_d37 — func_8017DAB8 banked at 0 through the whole-object gate + propagated — 2 pins → 0: the always-1 flag as a constant store + the two per-arm pointer loads as one variable (allocno_compare 15000 > 14426, global.c:595-603) 2026-09-10 23:59:56 -06:00
Drew T 93e2a9170c phase-36: S104 banks — the R23(case-label)/R34/R35/R36 pass: 915 classes in 1,757 s, MATCH 16 (bank line above); d20's minimum-lever func_80180324 (8 → 2 marked dead branches) PARKED for Drew — an invented always-false condition is not covered by ruling (a) 2026-09-10 23:50:01 -06:00
Drew T 2e05e1238d phase-36: S104 s104_d32 — func_801831B8 banked at 0 through the whole-object gate + propagated — d32 copy 2026-09-10 23:47:31 -06:00
Drew T 97e5d721b4 phase-36: S104 s104_d32 — func_80181744 banked at 0 through the whole-object gate + propagated — 3 levers → 0: the s16 timer as a memory decrement with a store per arm (combine sign-extend split, combine.c:1887-1935), the stack array at its real size, the late add as one expression 2026-09-10 23:46:53 -06:00
Drew T b074d7f207 phase-36: S104 s104_d31 — func_8017F2E8 banked at 0 through the whole-object gate + propagated — d31 copy 2026-09-10 23:45:46 -06:00
Drew T df43d0c955 phase-36: S104 s104_d31 — func_80182FB4 banked at 0 through the whole-object gate + propagated — 3 levers → 0: the argument computed whole in each arm (block-global → $a1 by preference; cross-jump re-merges the tails, jump.c:2371), the merge value stored in its arm, the goto chain as a switch 2026-09-10 23:45:06 -06:00
Drew T b7ed4f3a68 phase-36: S104 s104_d33 — func_8017DC38 banked at 0 through the whole-object gate + propagated — d33 copy 2026-09-10 23:43:34 -06:00
Drew T f37af138f9 phase-36: S104 s104_d33 — func_8017DD70 banked at 0 through the whole-object gate + propagated — 3 levers → 0: s16 c and s16 changed, the per-arm copy temps deleted, one flag test after the join (combine.c:7926-7942; global.c:594-607) 2026-09-10 23:42:44 -06:00
Drew T caba5c4506 phase-36: S104 s104_d30 — func_801811DC banked at 0 through the whole-object gate + propagated — d30 copy 2026-09-10 23:41:37 -06:00
Drew T 563b9ab144 phase-36: S104 s104_d30 — func_80183884 banked at 0 through the whole-object gate + propagated — $16 pin → 0: case 3's two call results share one ret (allocno_compare 16000 > 13503.6, global.c:595-607) 2026-09-10 23:40:32 -06:00
Drew T 1d42fff3c2 phase-36: S104 s104_d27 — func_8013E448 banked at 0 through the whole-object gate + propagated — d27 port onto the shared header (136 includers) 2026-09-10 23:20:34 -06:00
Drew T 22d88b58d8 phase-36: S104 s104_d27 — func_8017F080 banked at 0 through the whole-object gate + propagated — d27 port onto a two-pin sibling 2026-09-10 23:19:10 -06:00
Drew T 958a5289da phase-36: S104 s104_d27 — func_80184B94 banked at 0 through the whole-object gate + propagated — $2 pin → 0: return constants instead of a result local (jump1 store-flag on hard $v0, jump.c:1140-1210, pins the order after the call-result copy) 2026-09-10 23:18:11 -06:00
Drew T 34ce0a76ae phase-36: S104 s104_d21 — func_8018BDE0 banked at 0 through the whole-object gate + propagated — d21 copy 2026-09-10 23:15:36 -06:00
Drew T 4833a380dd phase-36: S104 s104_d21 — func_8018179C banked at 0 through the whole-object gate + propagated — 2 pins → 0: one function-scope ret for the three call results (allocno_compare global.c:594-607) + a compound &= in case 0 (local-alloc.c:1486-1500) 2026-09-10 23:13:59 -06:00
Drew T 1058ced5f3 phase-36: S104 s104_d26 — func_8018EC50 banked at 0 through the whole-object gate + propagated — d26 copy 2026-09-10 23:08:56 -06:00
Drew T ef8fd52c5b phase-36: S104 s104_d26 — func_80181FC4 banked at 0 through the whole-object gate + propagated — d26 copy 2026-09-10 23:08:22 -06:00
Drew T 9fb4baa2f7 phase-36: S104 s104_d26 — func_8018C608 banked at 0 through the whole-object gate + propagated — d26 copy 2026-09-10 23:07:20 -06:00
Drew T 9d0423817d phase-36: S104 s104_d26 — func_8017FB10 banked at 0 through the whole-object gate + propagated — pin → 0: the +0x14 store first (sched.c:2425-2428 tie-break) and the counter as a pre-decrement in the condition (qty_compare refs, local-alloc.c:1579) 2026-09-10 23:06:43 -06:00
Drew T 0aaa40f029 phase-36: S104 s104_d25 — func_8017DE40 banked at 0 through the whole-object gate + propagated — d25 copy 2026-09-10 23:03:32 -06:00
Drew T 53d158ba03 phase-36: S104 s104_d25 — func_8017E060 banked at 0 through the whole-object gate + propagated — $4 pin → 0: the twice-set pointer as one expression (combine leaves reg_n_refs on a folded pseudo, combine.c:2305-2337 → alter_reg gives it a slot, reload1.c:2327-2352) 2026-09-10 23:03:03 -06:00
Drew T 0ab2802e20 phase-36: S104 s104_d23 — func_8017FE24 banked at 0 through the whole-object gate + propagated — d23 copy 2026-09-10 23:01:30 -06:00
Drew T 6d923ea839 phase-36: S104 s104_d23 — func_801800F8 banked at 0 through the whole-object gate + propagated — d23 copy 2026-09-10 23:00:51 -06:00
Drew T 2b83a9aa3f phase-36: S104 s104_d23 — func_80181864 banked at 0 through the whole-object gate + propagated — 3 levers → 0: a loop-local next for the list walk (cse.c:846-857), each arm stores before its counter so cross-jump keeps the four stores (jump.c:2371) 2026-09-10 22:59:47 -06:00