phase-36: S105 s105_f9 — func_8017F498 banked at 0 through the whole-object gate + propagated — f9 plain C (the constant holder declared per arm; 2 → 0)

This commit is contained in:
Drew T
2026-09-11 19:13:08 -06:00
parent 41ab73ae62
commit 8a982ef6cd
3 changed files with 170 additions and 171 deletions
+167 -167
View File
@@ -1,5 +1,5 @@
{
"head": "ea0556951",
"head": "41ab73ae6",
"stamp": "15956e4a96c4",
"generated": "2026-09-11 19:12",
"aliases": [
@@ -21,206 +21,206 @@
"main": {
"objects": 85,
"identical": 85,
"seconds": 6.9220000000000015,
"mean_s": 0.081
"seconds": 6.464000000000005,
"mean_s": 0.076
},
"ov_SC03_014": {
"objects": 32,
"identical": 32,
"seconds": 4.598,
"mean_s": 0.144
"seconds": 4.494,
"mean_s": 0.14
},
"ov_SC03_015": {
"objects": 32,
"identical": 32,
"seconds": 4.409000000000001,
"mean_s": 0.138
"seconds": 4.347999999999999,
"mean_s": 0.136
},
"ov_SC04_011": {
"objects": 28,
"identical": 28,
"seconds": 3.7419999999999995,
"mean_s": 0.134
"seconds": 3.7070000000000003,
"mean_s": 0.132
}
},
"per_object_seconds": {
"build/src/800.o": 0.753,
"build/src/800_b.o": 0.07,
"build/src/800_b_2.o": 0.294,
"build/src/800_b_o0a.o": 0.069,
"build/src/800_c.o": 0.183,
"build/src/800b2.o": 0.074,
"build/src/apicard1.o": 0.062,
"build/src/apicard2.o": 0.067,
"build/src/apicard3.o": 0.077,
"build/src/apicard4.o": 0.064,
"build/src/apicard5.o": 0.07,
"build/src/apicard6.o": 0.064,
"build/src/apicard7.o": 0.07,
"build/src/boot.o": 0.096,
"build/src/gap.o": 0.055,
"build/src/libapi1.o": 0.075,
"build/src/libapi2.o": 0.061,
"build/src/libc2_1.o": 0.091,
"build/src/libc2_2.o": 0.06,
"build/src/libcd1.o": 0.101,
"build/src/libcd2.o": 0.063,
"build/src/libetc.o": 0.077,
"build/src/libgpu.o": 0.079,
"build/src/libgpu2.o": 0.102,
"build/src/libgs1.o": 0.06,
"build/src/libgs2.o": 0.063,
"build/src/libgs3.o": 0.054,
"build/src/libgs4.o": 0.059,
"build/src/libgs5.o": 0.056,
"build/src/libgs6.o": 0.117,
"build/src/libgs7.o": 0.059,
"build/src/libgs8.o": 0.061,
"build/src/libgte1.o": 0.07,
"build/src/800.o": 0.708,
"build/src/800_b.o": 0.072,
"build/src/800_b_2.o": 0.306,
"build/src/800_b_o0a.o": 0.068,
"build/src/800_c.o": 0.178,
"build/src/800b2.o": 0.081,
"build/src/apicard1.o": 0.065,
"build/src/apicard2.o": 0.059,
"build/src/apicard3.o": 0.056,
"build/src/apicard4.o": 0.074,
"build/src/apicard5.o": 0.06,
"build/src/apicard6.o": 0.083,
"build/src/apicard7.o": 0.076,
"build/src/boot.o": 0.088,
"build/src/gap.o": 0.062,
"build/src/libapi1.o": 0.066,
"build/src/libapi2.o": 0.06,
"build/src/libc2_1.o": 0.065,
"build/src/libc2_2.o": 0.058,
"build/src/libcd1.o": 0.062,
"build/src/libcd2.o": 0.057,
"build/src/libetc.o": 0.063,
"build/src/libgpu.o": 0.061,
"build/src/libgpu2.o": 0.067,
"build/src/libgs1.o": 0.067,
"build/src/libgs2.o": 0.069,
"build/src/libgs3.o": 0.06,
"build/src/libgs4.o": 0.057,
"build/src/libgs5.o": 0.068,
"build/src/libgs6.o": 0.076,
"build/src/libgs7.o": 0.063,
"build/src/libgs8.o": 0.058,
"build/src/libgte1.o": 0.061,
"build/src/libgte10.o": 0.062,
"build/src/libgte11.o": 0.066,
"build/src/libgte11.o": 0.056,
"build/src/libgte12.o": 0.065,
"build/src/libgte13.o": 0.064,
"build/src/libgte14.o": 0.062,
"build/src/libgte15.o": 0.064,
"build/src/libgte14.o": 0.067,
"build/src/libgte15.o": 0.054,
"build/src/libgte16.o": 0.062,
"build/src/libgte17.o": 0.059,
"build/src/libgte18.o": 0.054,
"build/src/libgte19.o": 0.063,
"build/src/libgte17.o": 0.066,
"build/src/libgte18.o": 0.055,
"build/src/libgte19.o": 0.057,
"build/src/libgte2.o": 0.06,
"build/src/libgte20.o": 0.068,
"build/src/libgte21.o": 0.061,
"build/src/libgte22.o": 0.066,
"build/src/libgte23.o": 0.062,
"build/src/libgte24.o": 0.06,
"build/src/libgte25.o": 0.064,
"build/src/libgte26.o": 0.064,
"build/src/libgte27.o": 0.066,
"build/src/libgte28.o": 0.061,
"build/src/libgte29.o": 0.07,
"build/src/libgte20.o": 0.064,
"build/src/libgte21.o": 0.06,
"build/src/libgte22.o": 0.063,
"build/src/libgte23.o": 0.065,
"build/src/libgte24.o": 0.058,
"build/src/libgte25.o": 0.057,
"build/src/libgte26.o": 0.062,
"build/src/libgte27.o": 0.065,
"build/src/libgte28.o": 0.063,
"build/src/libgte29.o": 0.056,
"build/src/libgte3.o": 0.069,
"build/src/libgte30.o": 0.067,
"build/src/libgte4.o": 0.068,
"build/src/libgte4.o": 0.062,
"build/src/libgte5.o": 0.062,
"build/src/libgte6.o": 0.069,
"build/src/libgte7.o": 0.069,
"build/src/libgte8.o": 0.069,
"build/src/libgte9.o": 0.062,
"build/src/libmcrd1.o": 0.099,
"build/src/libmcrd2.o": 0.065,
"build/src/libpad1.o": 0.076,
"build/src/libpad2.o": 0.08,
"build/src/sgap.o": 0.065,
"build/src/sgap_2.o": 0.059,
"build/src/sgap_3.o": 0.058,
"build/src/sgap_4.o": 0.073,
"build/src/sgap_5.o": 0.063,
"build/src/sgap_6.o": 0.063,
"build/src/sgap_8.o": 0.074,
"build/src/snd1.o": 0.098,
"build/src/snd10.o": 0.07,
"build/src/libgte6.o": 0.057,
"build/src/libgte7.o": 0.06,
"build/src/libgte8.o": 0.063,
"build/src/libgte9.o": 0.057,
"build/src/libmcrd1.o": 0.067,
"build/src/libmcrd2.o": 0.064,
"build/src/libpad1.o": 0.069,
"build/src/libpad2.o": 0.06,
"build/src/sgap.o": 0.067,
"build/src/sgap_2.o": 0.065,
"build/src/sgap_3.o": 0.07,
"build/src/sgap_4.o": 0.067,
"build/src/sgap_5.o": 0.062,
"build/src/sgap_6.o": 0.065,
"build/src/sgap_8.o": 0.069,
"build/src/snd1.o": 0.068,
"build/src/snd10.o": 0.061,
"build/src/snd11.o": 0.064,
"build/src/snd12.o": 0.061,
"build/src/snd2.o": 0.111,
"build/src/snd3.o": 0.067,
"build/src/snd4.o": 0.071,
"build/src/snd5.o": 0.065,
"build/src/snd6.o": 0.081,
"build/src/snd7.o": 0.063,
"build/src/snd8.o": 0.065,
"build/src/snd9.o": 0.097,
"build/src/ov_SC03_014/ov_SC03_014.o": 0.133,
"build/src/ov_SC03_014/ov_SC03_014_after.o": 0.503,
"build/src/ov_SC03_014/ov_SC03_014_jr_8012ACE0.o": 0.378,
"build/src/ov_SC03_014/ov_SC03_014_jr_80135888.o": 0.057,
"build/src/ov_SC03_014/ov_SC03_014_jr_80135A4C.o": 0.058,
"build/src/ov_SC03_014/ov_SC03_014_jr_80135D20.o": 0.117,
"build/src/ov_SC03_014/ov_SC03_014_jr_801380E0.o": 0.155,
"build/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.o": 0.122,
"build/src/ov_SC03_014/ov_SC03_014_jr_8013F350.o": 0.08,
"build/src/ov_SC03_014/ov_SC03_014_jr_8013FFD8.o": 0.068,
"build/src/ov_SC03_014/ov_SC03_014_jr_80140608.o": 0.185,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015444C.o": 0.071,
"build/src/ov_SC03_014/ov_SC03_014_jr_80154C24.o": 0.166,
"build/src/snd12.o": 0.062,
"build/src/snd2.o": 0.065,
"build/src/snd3.o": 0.066,
"build/src/snd4.o": 0.07,
"build/src/snd5.o": 0.059,
"build/src/snd6.o": 0.075,
"build/src/snd7.o": 0.065,
"build/src/snd8.o": 0.062,
"build/src/snd9.o": 0.07,
"build/src/ov_SC03_014/ov_SC03_014.o": 0.128,
"build/src/ov_SC03_014/ov_SC03_014_after.o": 0.483,
"build/src/ov_SC03_014/ov_SC03_014_jr_8012ACE0.o": 0.386,
"build/src/ov_SC03_014/ov_SC03_014_jr_80135888.o": 0.06,
"build/src/ov_SC03_014/ov_SC03_014_jr_80135A4C.o": 0.061,
"build/src/ov_SC03_014/ov_SC03_014_jr_80135D20.o": 0.12,
"build/src/ov_SC03_014/ov_SC03_014_jr_801380E0.o": 0.153,
"build/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.o": 0.106,
"build/src/ov_SC03_014/ov_SC03_014_jr_8013F350.o": 0.077,
"build/src/ov_SC03_014/ov_SC03_014_jr_8013FFD8.o": 0.064,
"build/src/ov_SC03_014/ov_SC03_014_jr_80140608.o": 0.179,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015444C.o": 0.072,
"build/src/ov_SC03_014/ov_SC03_014_jr_80154C24.o": 0.167,
"build/src/ov_SC03_014/ov_SC03_014_jr_801588CC.o": 0.094,
"build/src/ov_SC03_014/ov_SC03_014_jr_80159C84.o": 0.07,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015A3C8.o": 0.074,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015AE2C.o": 0.097,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015C32C.o": 0.48,
"build/src/ov_SC03_014/ov_SC03_014_jr_8016AB6C.o": 0.267,
"build/src/ov_SC03_014/ov_SC03_014_jr_80171B4C.o": 0.099,
"build/src/ov_SC03_014/ov_SC03_014_jr_801734BC.o": 0.198,
"build/src/ov_SC03_014/ov_SC03_014_jr_801789AC.o": 0.055,
"build/src/ov_SC03_014/ov_SC03_014_jr_80178D40.o": 0.101,
"build/src/ov_SC03_014/ov_SC03_014_jr_8017A4AC.o": 0.064,
"build/src/ov_SC03_014/ov_SC03_014_jr_8017AE2C.o": 0.154,
"build/src/ov_SC03_014/ov_SC03_014_jr_8017EB7C.o": 0.199,
"build/src/ov_SC03_014/ov_SC03_014_jr_80184440.o": 0.057,
"build/src/ov_SC03_014/ov_SC03_014_jr_801848E4.o": 0.257,
"build/src/ov_SC03_014/ov_SC03_014_o0b.o": 0.061,
"build/src/ov_SC03_014/ov_SC03_014_o0c.o": 0.06,
"build/src/ov_SC03_014/ov_SC03_014_jr_80159C84.o": 0.065,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015A3C8.o": 0.071,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015AE2C.o": 0.077,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015C32C.o": 0.466,
"build/src/ov_SC03_014/ov_SC03_014_jr_8016AB6C.o": 0.259,
"build/src/ov_SC03_014/ov_SC03_014_jr_80171B4C.o": 0.093,
"build/src/ov_SC03_014/ov_SC03_014_jr_801734BC.o": 0.203,
"build/src/ov_SC03_014/ov_SC03_014_jr_801789AC.o": 0.056,
"build/src/ov_SC03_014/ov_SC03_014_jr_80178D40.o": 0.096,
"build/src/ov_SC03_014/ov_SC03_014_jr_8017A4AC.o": 0.058,
"build/src/ov_SC03_014/ov_SC03_014_jr_8017AE2C.o": 0.159,
"build/src/ov_SC03_014/ov_SC03_014_jr_8017EB7C.o": 0.196,
"build/src/ov_SC03_014/ov_SC03_014_jr_80184440.o": 0.051,
"build/src/ov_SC03_014/ov_SC03_014_jr_801848E4.o": 0.267,
"build/src/ov_SC03_014/ov_SC03_014_o0b.o": 0.058,
"build/src/ov_SC03_014/ov_SC03_014_o0c.o": 0.05,
"build/src/ov_SC03_014/ov_SC03_014_o0d.o": 0.053,
"build/src/ov_SC03_014/ov_SC03_014_o0e.o": 0.065,
"build/src/ov_SC03_015/ov_SC03_015.o": 0.117,
"build/src/ov_SC03_015/ov_SC03_015_after.o": 0.485,
"build/src/ov_SC03_014/ov_SC03_014_o0e.o": 0.066,
"build/src/ov_SC03_015/ov_SC03_015.o": 0.114,
"build/src/ov_SC03_015/ov_SC03_015_after.o": 0.497,
"build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.382,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.052,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.048,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.112,
"build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.134,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.101,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.068,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.05,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.052,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.103,
"build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.142,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.093,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.067,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.058,
"build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.165,
"build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.179,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.065,
"build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.158,
"build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.093,
"build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.169,
"build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.086,
"build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.062,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.072,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.062,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.096,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.437,
"build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.268,
"build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.097,
"build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.176,
"build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.052,
"build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.105,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.066,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.166,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.197,
"build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.049,
"build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.275,
"build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.062,
"build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.07,
"build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.054,
"build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.067,
"build/src/ov_SC04_011/ov_SC04_011.o": 0.118,
"build/src/ov_SC04_011/ov_SC04_011_after.o": 0.412,
"build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.333,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.045,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.052,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.114,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.433,
"build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.251,
"build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.09,
"build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.195,
"build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.054,
"build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.091,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.061,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.15,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.201,
"build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.048,
"build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.273,
"build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.055,
"build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.054,
"build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.05,
"build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.065,
"build/src/ov_SC04_011/ov_SC04_011.o": 0.108,
"build/src/ov_SC04_011/ov_SC04_011_after.o": 0.414,
"build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.323,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.051,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.051,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.103,
"build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.136,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.105,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.106,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.071,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.053,
"build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.161,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.069,
"build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.153,
"build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.078,
"build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.063,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.051,
"build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.177,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.068,
"build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.147,
"build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.081,
"build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.061,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.06,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.089,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.349,
"build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.212,
"build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.09,
"build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.15,
"build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.054,
"build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.083,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.065,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.103,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.432,
"build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.045,
"build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.047
"build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.093,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.355,
"build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.211,
"build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.082,
"build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.153,
"build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.051,
"build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.087,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.06,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.095,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.423,
"build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.041,
"build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.048
},
"ok": true,
"seconds": 2.2
+1
View File
@@ -29630,3 +29630,4 @@
{"ts": "2026-09-11 18:45:25", "label": "s105_comment6", "rung": "E", "calib": {"head": "5c8030119", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_000/ov_SC02_000_jr_8018173C.c", "fn": "func_80185840", "addr": 2149079104, "aliases": null, "header": false, "includers": 0, "nhash_before": "6e5f8dd4c3f75fb8910cdcabb12218b81738cad3", "nhash_after": "c9c0b61cd6eb7a5a23817e5b4a57e0d6697af1e8", "source": "delever_regen R15 sink @17 (r)", "verdict": "LEVER-FREE", "sites": [], "compiles": 2, "seconds": 0.3, "objects": ["build/src/ov_SC02_000/ov_SC02_000_jr_8018173C.o", "build/src/ov_SC02_003/ov_SC02_003_jr_8018173C.o"], "before_text": "void func_80185840(s32 param_1) {\n s16 r;\n s16 t;\n u32 val;\n\n func_80185C48(param_1, 0);\n *(u16 *)(*(s32 *)(param_1 + 0x20) + 0x12) += *(u16 *)(param_1 + 0xE0);\n t = *(s16 *)(param_1 + 0xE0);\n /* if/else (NOT \"r = 0x80; if (t < 0x80) r = ...;\"): the else-arm shape keeps\n * `li r,0x80` in a block AFTER the branch at register-allocation time, so r\n * does not conflict with the slt result and gets $v0 instead of $a0. */\n if (t >= 0x80) {\n r = 0x80;\n } else {\n r = t + *(u16 *)(param_1 + 0xE2);\n }\n *(s16 *)(param_1 + 0xE0) = r;\n __asm__ __volatile__(\"\"); /* cookbook \u00a7194-A: zero-byte sched fence \u2014 emits the // !FAKE: barrier \u2014 NEEDED COMPILE-ERROR (P36 rung B tus10)\n * sh first in the join block, ahead of li 0x27D7D */\n D_801E8750 += 0x27D7D;\n val = (u32)D_801E8750 >> 16;\n if (val >= 0x80) {\n val = 0x7F;\n }\n ((void (*)(s32, s32))func_8018623C)(0x4DF, val + 0x1000);\n if (*(s32 *)(param_1 + 0x18) < -0xB9999) {\n *(s32 *)(param_1 + 0x18) = -0xB9999;\n *(s16 *)(param_1 + 2) = 0xB;\n ((void (*)(s32, s32))func_8018623C)(0x4DF, 0x107F);\n }\n}\n", "after_text": "void func_80185840(s32 param_1) {\n s16 t;\n u32 val;\n\n func_80185C48(param_1, 0);\n *(u16 *)(*(s32 *)(param_1 + 0x20) + 0x12) += *(u16 *)(param_1 + 0xE0);\n t = *(s16 *)(param_1 + 0xE0);\n /* if/else (NOT \"r = 0x80; if (t < 0x80) r = ...;\"): the else-arm shape keeps\n * `li r,0x80` in a block AFTER the branch at register-allocation time, so r\n * does not conflict with the slt result and gets $v0 instead of $a0. */\n if (t >= 0x80) {\n *(s16 *)(param_1 + 0xE0) = (0x80);\n } else {\n *(s16 *)(param_1 + 0xE0) = (t + *(u16 *)(param_1 + 0xE2));\n }\n /* cookbook \u00a7194-A: zero-byte sched fence \u2014 emits the \n * sh first in the join block, ahead of li 0x27D7D */\n D_801E8750 += 0x27D7D;\n val = (u32)D_801E8750 >> 16;\n if (val >= 0x80) {\n val = 0x7F;\n }\n ((void (*)(s32, s32))func_8018623C)(0x4DF, val + 0x1000);\n if (*(s32 *)(param_1 + 0x18) < -0xB9999) {\n *(s32 *)(param_1 + 0x18) = -0xB9999;\n *(s16 *)(param_1 + 2) = 0xB;\n ((void (*)(s32, s32))func_8018623C)(0x4DF, 0x107F);\n }\n}\n"}
{"ts": "2026-09-11 18:45:27", "label": "s105_comment6", "rung": "E", "calib": {"head": "5c8030119", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_124/ov_SC03_124_jr_8017AE2C.c", "fn": "func_8018009C", "addr": 2149056668, "aliases": null, "header": false, "includers": 0, "nhash_before": "adcdef44bce5f7f112aba8abee4eef2686b7e18e", "nhash_after": "eebdc0e036e8bb017e67a740c66a18e1e437f3df", "source": "delever_regen R9 swap-stmts @26", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.16, "objects": ["build/src/ov_SC03_124/ov_SC03_124_jr_8017AE2C.o"], "before_text": "void func_8018009C(s32 param_1)\n{\n s32 v0;\n s32 a1;\n s32 t0;\n s32 t1;\n s32 r;\n\n switch ((s16)(*(u16 *)(param_1 + 0xFC) - 1)) {\n case 1:\n if (*(s32 *)(param_1 + 0x90) != (s32)&D_801D3BC4) {\n func_8012A828(param_1, (s32)&D_801D3BC4);\n }\n v0 = *(s32 *)(param_1 + 0x20);\n __asm__ __volatile__(\"\"); /* \u00a75a cross-jump barrier, placed between the two tail // !FAKE: barrier \u2014 NEEDED COMPILE-ERROR (P36 rung B tus7)\n stores (not immediately before the jump) so reorg can\n still fill the branch delay slot with `a1 = 0xC00`;\n keeps this arm's tail distinct from case 0's identical\n one so gcc does not fold the two duplicate tails */\n a1 = 0xC00;\n goto common;\n case 0:\n if (*(s32 *)(param_1 + 0x90) != (s32)&D_801BEAF8) {\n func_8012A828(param_1, (s32)&D_801BEAF8);\n }\n v0 = *(s32 *)(param_1 + 0x20);\n a1 = 0xC00;\n goto common;\n case 3:\n t0 = *(s32 *)(param_1 + 0x90);\n t1 = (s32)&D_801D3BC4;\n goto LAB_80180154;\n case 2:\n t0 = *(s32 *)(param_1 + 0x90);\n t1 = (s32)&D_801BEAF8;\n LAB_80180154:\n if (t0 != t1) {\n func_8012A828(param_1, t1);\n }\n v0 = *(s32 *)(param_1 + 0x20);\n a1 = 0xE00;\n common:\n r = func_8012B608((s32)*(s16 *)(v0 + 0x12), a1, 8);\n *(u16 *)(*(s32 *)(param_1 + 0x20) + 0x12) =\n *(u16 *)(*(s32 *)(param_1 + 0x20) + 0x12) + r;\n return;\n case 4:\n func_801801B0(param_1);\n return;\n default:\n return;\n }\n}\n", "after_text": "void func_8018009C(s32 param_1)\n{\n s32 v0;\n s32 a1;\n s32 t0;\n s32 t1;\n s32 r;\n\n switch ((s16)(*(u16 *)(param_1 + 0xFC) - 1)) {\n case 1:\n if (*(s32 *)(param_1 + 0x90) != (s32)&D_801D3BC4) {\n func_8012A828(param_1, (s32)&D_801D3BC4);\n }\n v0 = *(s32 *)(param_1 + 0x20);\n /* \u00a75a cross-jump barrier, placed between the two tail \n stores (not immediately before the jump) so reorg can\n still fill the branch delay slot with `a1 = 0xC00`;\n keeps this arm's tail distinct from case 0's identical\n one so gcc does not fold the two duplicate tails */\n a1 = 0xC00;\n goto common;\n case 0:\n if (*(s32 *)(param_1 + 0x90) != (s32)&D_801BEAF8) {\n func_8012A828(param_1, (s32)&D_801BEAF8);\n }\n a1 = 0xC00;\n v0 = *(s32 *)(param_1 + 0x20);\n goto common;\n case 3:\n t0 = *(s32 *)(param_1 + 0x90);\n t1 = (s32)&D_801D3BC4;\n goto LAB_80180154;\n case 2:\n t0 = *(s32 *)(param_1 + 0x90);\n t1 = (s32)&D_801BEAF8;\n LAB_80180154:\n if (t0 != t1) {\n func_8012A828(param_1, t1);\n }\n v0 = *(s32 *)(param_1 + 0x20);\n a1 = 0xE00;\n common:\n r = func_8012B608((s32)*(s16 *)(v0 + 0x12), a1, 8);\n *(u16 *)(*(s32 *)(param_1 + 0x20) + 0x12) =\n *(u16 *)(*(s32 *)(param_1 + 0x20) + 0x12) + r;\n return;\n case 4:\n func_801801B0(param_1);\n return;\n default:\n return;\n }\n}\n"}
{"ts": "2026-09-11 19:12:48", "label": "s105_f9", "rung": "E", "calib": {"head": "ea0556951", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_027/ov_SC02_027_jr_8017D898.c", "fn": "func_801810A0", "addr": 2149060768, "aliases": null, "header": false, "includers": 0, "nhash_before": "bd1795bd5136441bf3abb1216317029249002455", "nhash_after": "9b1a1f2c1b2654c3b048eceae057c1cebac9c333", "source": ".run/P36/agents/ov_SC02_027__func_801810A0/body.c", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.28, "objects": ["build/src/ov_SC02_027/ov_SC02_027_jr_8017D898.o"], "before_text": "void func_801810A0(W_801810A0 *w) {\n extern u64 D_8018F298[];\n struct {\n s16 f0, f1, f2, f3, f4, f5, f6;\n u16 timer;\n s32 tbl;\n s32 pad[5];\n } L;\n register s32 t asm(\"v0\"); // !FAKE: pin v0 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n s32 f;\n register s32 u asm(\"a0\"); // !FAKE: pin a0 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n\n if (func_8012BDBC((s32)w, 0x380)) {\n __asm__ __volatile__(\"\" ::: \"memory\"); // !FAKE: barrier memory \u2014 NEEDED DIFFERS (P36 rung B tus9)\n if (!func_8018152C((s32)w, 0x380)) {\n goto el;\n }\n __asm__ __volatile__(\"\" ::: \"memory\"); // !FAKE: barrier memory \u2014 NEEDED DIFFERS (P36 rung B tus9)\n *(s16 *)(w->f20 + 0x12) += func_8012B8E4((s32)w, 0x14);\n if (w->f34 == 0) {\n if (w->fFE == 0) {\n func_8002D4C8(0x68B, 0);\n w->fFE = 1;\n }\n if (w->fFC >= 0xA) {\n w->fFC = 0xA;\n w->f34 += 1;\n }\n L.tbl = (s32)&D_8018F298[*(s16 *)&w->fFC];\n L.f3 = 0x175;\n L.f6 = 0x7FFF;\n L.f2 = 0;\n L.f1 = 0;\n L.f0 = 0;\n L.f5 = 0;\n L.f4 = 0;\n L.timer = w->fFC;\n if (func_8012C51C((s32)&L, (s32)w)) {\n w->fFC += 1;\n }\n }\n } else {\nel:\n t = w->fFC;\n if (t != 0) {\n f = w->fFE;\n u = t;\n __asm__ __volatile__(\"\" : : \"r\"(t)); // !FAKE: keepalive \u2014 NEEDED DIFFERS (P36 rung B tus9)\n t = u - 1;\n w->fFC = t;\n w->f34 = 0;\n if (f != 0) {\n w->fFE = 0;\n func_8002D4C8(4, 0x68B);\n }\n }\n }\n}\n", "after_text": "void func_801810A0(W_801810A0 *w) {\n extern u64 D_8018F298[];\n struct {\n s16 f0, f1, f2, f3, f4, f5, f6;\n u16 timer;\n s32 tbl;\n s32 pad[2]; /* frame accounting (P36 S105 f9): the 20-byte request + one 8-byte reload slot for the `cnt`\n split's orphan (combine.c:2306, reload1.c:2331) leave 8 bytes of the original's 64-byte frame\n unexplained; the tree's pad[5] covered the orphan too. pad[2] and pad[3] both give 0. */\n } L;\n s16 cnt;\n s32 f;\n\n if (func_8012BDBC((s32)w, 0x380)) {\n if (!func_8018152C((s32)w, 0x380)) {\n goto el;\n }\n *(s16 *)(w->f20 + 0x12) += func_8012B8E4((s32)w, 0x14);\n if (w->f34 == 0) {\n if (w->fFE == 0) {\n func_8002D4C8(0x68B, 0);\n w->fFE = 1;\n }\n if (w->fFC >= 0xA) {\n w->fFC = 0xA;\n w->f34 += 1;\n }\n L.tbl = (s32)&D_8018F298[*(s16 *)&w->fFC];\n L.f3 = 0x175;\n L.f6 = 0x7FFF;\n L.f2 = 0;\n L.f1 = 0;\n L.f0 = 0;\n L.f5 = 0;\n L.f4 = 0;\n L.timer = w->fFC;\n if (func_8012C51C((s32)&L, (s32)w)) {\n w->fFC += 1;\n }\n }\n } else {\nel:\n cnt = w->fFC;\n if (cnt != 0) {\n f = w->fFE;\n w->fFC = cnt - 1;\n w->f34 = 0;\n if (f != 0) {\n w->fFE = 0;\n func_8002D4C8(4, 0x68B);\n }\n }\n }\n}\n"}
{"ts": "2026-09-11 19:13:06", "label": "s105_f9", "rung": "E", "calib": {"head": "41ab73ae6", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_027/ov_SC02_027_jr_8017D898.c", "fn": "func_8017F498", "addr": 2149053592, "aliases": null, "header": false, "includers": 0, "nhash_before": "035b880d5c9e3941c6b9027e942e7effcf701db0", "nhash_after": "25abdc768527cc40c4cbd8c3c92182a2a6a9ca41", "source": ".run/P36/agents/ov_SC02_027__func_8017F498/body.c", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.285, "objects": ["build/src/ov_SC02_027/ov_SC02_027_jr_8017D898.o"], "before_text": "void func_8017F498(s32 a0) {\n\n extern s16 D_8018F0B0[];\n extern Blk8_80126940_8017D6D0_8017F498 D_80126940;\n Blk8_80126940_8017D6D0_8017F498 sp10;\n u8 t;\n s16 lim;\n register s16 mid __asm__(\"$5\"); // !FAKE: pin $5 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n\n if (func_80148800(&D_80126B58) & 3) {\n t = (*(u8 *)(a0 + 5) + 1) & 1;\n *(u8 *)(a0 + 5) = t;\n }\n sp10 = D_80126940;\n if (sp10.v[0] < -0x3C0) {\n lim = -0x540;\n if (sp10.v[0] < -0x540) {\n sp10.v[0] = lim;\n }\n *(s16 *)(a0 + 0x2E) = 0;\n *(s32 *)(a0 + 0x14) = D_8018F0B0[*(u8 *)(a0 + 5)];\n } else {\n if (sp10.v[2] >= 0x1081) {\n mid = -0x300;\n if (sp10.v[0] < mid) {\n *(s16 *)(a0 + 0x2E) = mid - sp10.v[0];\n } else {\n *(s16 *)(a0 + 0x2E) = 0;\n }\n } else {\n mid = -0x340;\n if (sp10.v[0] < mid) {\n *(s16 *)(a0 + 0x2E) = mid - sp10.v[0];\n } else {\n *(s16 *)(a0 + 0x2E) = 0;\n }\n }\n __asm__ __volatile__(\"\" :: \"r\"(mid)); /* zero-byte: keep $a1 live past the subu */ // !FAKE: keepalive \u2014 NEEDED DIFFERS (P36 rung B tus9)\n if (sp10.v[2] >= 0x1241) {\n *(s32 *)(a0 + 0x14) = D_8018F0B0[*(u8 *)(a0 + 5)];\n } else {\n *(s32 *)(a0 + 0x14) = 0x12C;\n }\n }\n *(s16 *)(a0 + 0x28) = func_80012F74(*(s16 *)(a0 + 0x28), *(s16 *)(a0 + 0x2E), 4, 1);\n lim = -0x180;\n if (lim < sp10.v[0]) {\n sp10.v[0] = lim;\n }\n lim = -0x380;\n if (lim < sp10.v[1]) {\n sp10.v[1] = lim;\n }\n func_8017F918(a0, sp10.v);\n}\n", "after_text": "void func_8017F498(s32 a0) {\n\n extern s16 D_8018F0B0[];\n extern Blk8_80126940_8017D6D0_8017F498 D_80126940;\n Blk8_80126940_8017D6D0_8017F498 sp10;\n u8 t;\n s16 lim;\n\n if (func_80148800(&D_80126B58) & 3) {\n t = (*(u8 *)(a0 + 5) + 1) & 1;\n *(u8 *)(a0 + 5) = t;\n }\n sp10 = D_80126940;\n if (sp10.v[0] < -0x3C0) {\n lim = -0x540;\n if (sp10.v[0] < -0x540) {\n sp10.v[0] = lim;\n }\n *(s16 *)(a0 + 0x2E) = 0;\n *(s32 *)(a0 + 0x14) = D_8018F0B0[*(u8 *)(a0 + 5)];\n } else {\n if (sp10.v[2] >= 0x1081) {\n s16 mid = -0x300;\n if (sp10.v[0] < mid) {\n *(s16 *)(a0 + 0x2E) = mid - sp10.v[0];\n } else {\n *(s16 *)(a0 + 0x2E) = 0;\n }\n } else {\n s16 mid = -0x340;\n if (sp10.v[0] < mid) {\n *(s16 *)(a0 + 0x2E) = mid - sp10.v[0];\n } else {\n *(s16 *)(a0 + 0x2E) = 0;\n }\n }\n if (sp10.v[2] >= 0x1241) {\n *(s32 *)(a0 + 0x14) = D_8018F0B0[*(u8 *)(a0 + 5)];\n } else {\n *(s32 *)(a0 + 0x14) = 0x12C;\n }\n }\n *(s16 *)(a0 + 0x28) = func_80012F74(*(s16 *)(a0 + 0x28), *(s16 *)(a0 + 0x2E), 4, 1);\n lim = -0x180;\n if (lim < sp10.v[0]) {\n sp10.v[0] = lim;\n }\n lim = -0x380;\n if (lim < sp10.v[1]) {\n sp10.v[1] = lim;\n }\n func_8017F918(a0, sp10.v);\n}\n"}
+2 -4
View File
@@ -3390,7 +3390,6 @@ void func_8017F498(s32 a0) {
Blk8_80126940_8017D6D0_8017F498 sp10;
u8 t;
s16 lim;
register s16 mid __asm__("$5"); // !FAKE: pin $5 — NEEDED DIFFERS (P36 rung B tus9)
if (func_80148800(&D_80126B58) & 3) {
t = (*(u8 *)(a0 + 5) + 1) & 1;
@@ -3406,21 +3405,20 @@ void func_8017F498(s32 a0) {
*(s32 *)(a0 + 0x14) = D_8018F0B0[*(u8 *)(a0 + 5)];
} else {
if (sp10.v[2] >= 0x1081) {
mid = -0x300;
s16 mid = -0x300;
if (sp10.v[0] < mid) {
*(s16 *)(a0 + 0x2E) = mid - sp10.v[0];
} else {
*(s16 *)(a0 + 0x2E) = 0;
}
} else {
mid = -0x340;
s16 mid = -0x340;
if (sp10.v[0] < mid) {
*(s16 *)(a0 + 0x2E) = mid - sp10.v[0];
} else {
*(s16 *)(a0 + 0x2E) = 0;
}
}
__asm__ __volatile__("" :: "r"(mid)); /* zero-byte: keep $a1 live past the subu */ // !FAKE: keepalive — NEEDED DIFFERS (P36 rung B tus9)
if (sp10.v[2] >= 0x1241) {
*(s32 *)(a0 + 0x14) = D_8018F0B0[*(u8 *)(a0 + 5)];
} else {