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

This commit is contained in:
Drew T
2026-09-11 00:01:34 -06:00
parent 1f4de6b82a
commit f5a68c412e
5 changed files with 317 additions and 455 deletions
+182 -182
View File
@@ -1,5 +1,5 @@
{
"head": "721a9c063",
"head": "1f4de6b82",
"stamp": "15956e4a96c4",
"generated": "2026-09-11 00:00",
"aliases": [
@@ -21,207 +21,207 @@
"main": {
"objects": 85,
"identical": 85,
"seconds": 10.040000000000003,
"mean_s": 0.118
"seconds": 10.117000000000003,
"mean_s": 0.119
},
"ov_SC03_014": {
"objects": 32,
"identical": 32,
"seconds": 6.679,
"seconds": 6.686,
"mean_s": 0.209
},
"ov_SC03_015": {
"objects": 32,
"identical": 32,
"seconds": 6.721999999999999,
"mean_s": 0.21
"seconds": 6.454999999999999,
"mean_s": 0.202
},
"ov_SC04_011": {
"objects": 28,
"identical": 28,
"seconds": 5.920999999999999,
"mean_s": 0.211
"seconds": 6.170000000000001,
"mean_s": 0.22
}
},
"per_object_seconds": {
"build/src/800.o": 0.986,
"build/src/800_b.o": 0.169,
"build/src/800_b_2.o": 0.426,
"build/src/800_b_o0a.o": 0.082,
"build/src/800_c.o": 0.262,
"build/src/800b2.o": 0.097,
"build/src/apicard1.o": 0.121,
"build/src/apicard2.o": 0.094,
"build/src/apicard3.o": 0.113,
"build/src/apicard4.o": 0.093,
"build/src/apicard5.o": 0.078,
"build/src/apicard6.o": 0.113,
"build/src/apicard7.o": 0.089,
"build/src/boot.o": 0.109,
"build/src/gap.o": 0.113,
"build/src/libapi1.o": 0.106,
"build/src/libapi2.o": 0.108,
"build/src/libc2_1.o": 0.107,
"build/src/libc2_2.o": 0.125,
"build/src/libcd1.o": 0.134,
"build/src/libcd2.o": 0.086,
"build/src/libetc.o": 0.133,
"build/src/libgpu.o": 0.095,
"build/src/libgpu2.o": 0.083,
"build/src/libgs1.o": 0.074,
"build/src/libgs2.o": 0.09,
"build/src/libgs3.o": 0.096,
"build/src/libgs4.o": 0.15,
"build/src/libgs5.o": 0.081,
"build/src/libgs6.o": 0.111,
"build/src/libgs7.o": 0.09,
"build/src/libgs8.o": 0.088,
"build/src/libgte1.o": 0.087,
"build/src/libgte10.o": 0.127,
"build/src/libgte11.o": 0.123,
"build/src/800.o": 0.993,
"build/src/800_b.o": 0.137,
"build/src/800_b_2.o": 0.397,
"build/src/800_b_o0a.o": 0.13,
"build/src/800_c.o": 0.299,
"build/src/800b2.o": 0.116,
"build/src/apicard1.o": 0.114,
"build/src/apicard2.o": 0.165,
"build/src/apicard3.o": 0.112,
"build/src/apicard4.o": 0.108,
"build/src/apicard5.o": 0.093,
"build/src/apicard6.o": 0.131,
"build/src/apicard7.o": 0.107,
"build/src/boot.o": 0.116,
"build/src/gap.o": 0.083,
"build/src/libapi1.o": 0.135,
"build/src/libapi2.o": 0.088,
"build/src/libc2_1.o": 0.087,
"build/src/libc2_2.o": 0.129,
"build/src/libcd1.o": 0.092,
"build/src/libcd2.o": 0.124,
"build/src/libetc.o": 0.105,
"build/src/libgpu.o": 0.12,
"build/src/libgpu2.o": 0.087,
"build/src/libgs1.o": 0.077,
"build/src/libgs2.o": 0.078,
"build/src/libgs3.o": 0.105,
"build/src/libgs4.o": 0.106,
"build/src/libgs5.o": 0.08,
"build/src/libgs6.o": 0.096,
"build/src/libgs7.o": 0.085,
"build/src/libgs8.o": 0.109,
"build/src/libgte1.o": 0.131,
"build/src/libgte10.o": 0.09,
"build/src/libgte11.o": 0.094,
"build/src/libgte12.o": 0.097,
"build/src/libgte13.o": 0.082,
"build/src/libgte14.o": 0.092,
"build/src/libgte15.o": 0.146,
"build/src/libgte16.o": 0.1,
"build/src/libgte17.o": 0.082,
"build/src/libgte18.o": 0.108,
"build/src/libgte19.o": 0.084,
"build/src/libgte2.o": 0.086,
"build/src/libgte20.o": 0.089,
"build/src/libgte21.o": 0.089,
"build/src/libgte22.o": 0.101,
"build/src/libgte23.o": 0.135,
"build/src/libgte24.o": 0.079,
"build/src/libgte25.o": 0.115,
"build/src/libgte26.o": 0.09,
"build/src/libgte27.o": 0.109,
"build/src/libgte28.o": 0.151,
"build/src/libgte29.o": 0.076,
"build/src/libgte3.o": 0.088,
"build/src/libgte30.o": 0.096,
"build/src/libgte4.o": 0.083,
"build/src/libgte5.o": 0.136,
"build/src/libgte6.o": 0.104,
"build/src/libgte7.o": 0.107,
"build/src/libgte8.o": 0.075,
"build/src/libgte9.o": 0.112,
"build/src/libmcrd1.o": 0.093,
"build/src/libmcrd2.o": 0.085,
"build/src/libpad1.o": 0.086,
"build/src/libpad2.o": 0.096,
"build/src/sgap.o": 0.096,
"build/src/sgap_2.o": 0.076,
"build/src/sgap_3.o": 0.113,
"build/src/sgap_4.o": 0.119,
"build/src/sgap_5.o": 0.072,
"build/src/sgap_6.o": 0.086,
"build/src/sgap_8.o": 0.079,
"build/src/snd1.o": 0.099,
"build/src/snd10.o": 0.088,
"build/src/snd11.o": 0.095,
"build/src/snd12.o": 0.085,
"build/src/snd2.o": 0.093,
"build/src/snd3.o": 0.097,
"build/src/snd4.o": 0.108,
"build/src/snd5.o": 0.159,
"build/src/snd6.o": 0.089,
"build/src/snd7.o": 0.122,
"build/src/snd8.o": 0.126,
"build/src/snd9.o": 0.127,
"build/src/ov_SC03_014/ov_SC03_014.o": 0.19,
"build/src/ov_SC03_014/ov_SC03_014_after.o": 0.672,
"build/src/ov_SC03_014/ov_SC03_014_jr_8012ACE0.o": 0.506,
"build/src/ov_SC03_014/ov_SC03_014_jr_80135888.o": 0.108,
"build/src/ov_SC03_014/ov_SC03_014_jr_80135A4C.o": 0.108,
"build/src/ov_SC03_014/ov_SC03_014_jr_80135D20.o": 0.179,
"build/src/ov_SC03_014/ov_SC03_014_jr_801380E0.o": 0.208,
"build/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.o": 0.216,
"build/src/ov_SC03_014/ov_SC03_014_jr_8013F350.o": 0.142,
"build/src/ov_SC03_014/ov_SC03_014_jr_8013FFD8.o": 0.082,
"build/src/ov_SC03_014/ov_SC03_014_jr_80140608.o": 0.251,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015444C.o": 0.098,
"build/src/ov_SC03_014/ov_SC03_014_jr_80154C24.o": 0.219,
"build/src/ov_SC03_014/ov_SC03_014_jr_801588CC.o": 0.162,
"build/src/ov_SC03_014/ov_SC03_014_jr_80159C84.o": 0.161,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015A3C8.o": 0.123,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015AE2C.o": 0.149,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015C32C.o": 0.577,
"build/src/ov_SC03_014/ov_SC03_014_jr_8016AB6C.o": 0.352,
"build/src/ov_SC03_014/ov_SC03_014_jr_80171B4C.o": 0.135,
"build/src/ov_SC03_014/ov_SC03_014_jr_801734BC.o": 0.347,
"build/src/ov_SC03_014/ov_SC03_014_jr_801789AC.o": 0.102,
"build/src/ov_SC03_014/ov_SC03_014_jr_80178D40.o": 0.146,
"build/src/ov_SC03_014/ov_SC03_014_jr_8017A4AC.o": 0.093,
"build/src/ov_SC03_014/ov_SC03_014_jr_8017AE2C.o": 0.205,
"build/src/ov_SC03_014/ov_SC03_014_jr_8017EB7C.o": 0.274,
"build/src/ov_SC03_014/ov_SC03_014_jr_80184440.o": 0.102,
"build/src/ov_SC03_014/ov_SC03_014_jr_801848E4.o": 0.373,
"build/src/ov_SC03_014/ov_SC03_014_o0b.o": 0.08,
"build/src/ov_SC03_014/ov_SC03_014_o0c.o": 0.111,
"build/src/ov_SC03_014/ov_SC03_014_o0d.o": 0.093,
"build/src/ov_SC03_014/ov_SC03_014_o0e.o": 0.115,
"build/src/ov_SC03_015/ov_SC03_015.o": 0.168,
"build/src/ov_SC03_015/ov_SC03_015_after.o": 0.763,
"build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.54,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.117,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.103,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.138,
"build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.26,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.168,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.1,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.126,
"build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.272,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.127,
"build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.225,
"build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.122,
"build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.094,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.097,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.144,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.612,
"build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.364,
"build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.133,
"build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.331,
"build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.124,
"build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.124,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.094,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.253,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.279,
"build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.079,
"build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.414,
"build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.087,
"build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.082,
"build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.087,
"build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.095,
"build/src/ov_SC04_011/ov_SC04_011.o": 0.16,
"build/src/ov_SC04_011/ov_SC04_011_after.o": 0.6,
"build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.502,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.084,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.13,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.165,
"build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.205,
"build/src/libgte13.o": 0.096,
"build/src/libgte14.o": 0.099,
"build/src/libgte15.o": 0.115,
"build/src/libgte16.o": 0.101,
"build/src/libgte17.o": 0.088,
"build/src/libgte18.o": 0.101,
"build/src/libgte19.o": 0.126,
"build/src/libgte2.o": 0.096,
"build/src/libgte20.o": 0.119,
"build/src/libgte21.o": 0.093,
"build/src/libgte22.o": 0.09,
"build/src/libgte23.o": 0.114,
"build/src/libgte24.o": 0.082,
"build/src/libgte25.o": 0.11,
"build/src/libgte26.o": 0.138,
"build/src/libgte27.o": 0.167,
"build/src/libgte28.o": 0.119,
"build/src/libgte29.o": 0.142,
"build/src/libgte3.o": 0.128,
"build/src/libgte30.o": 0.098,
"build/src/libgte4.o": 0.076,
"build/src/libgte5.o": 0.09,
"build/src/libgte6.o": 0.108,
"build/src/libgte7.o": 0.083,
"build/src/libgte8.o": 0.076,
"build/src/libgte9.o": 0.128,
"build/src/libmcrd1.o": 0.089,
"build/src/libmcrd2.o": 0.076,
"build/src/libpad1.o": 0.091,
"build/src/libpad2.o": 0.101,
"build/src/sgap.o": 0.081,
"build/src/sgap_2.o": 0.082,
"build/src/sgap_3.o": 0.097,
"build/src/sgap_4.o": 0.108,
"build/src/sgap_5.o": 0.084,
"build/src/sgap_6.o": 0.104,
"build/src/sgap_8.o": 0.102,
"build/src/snd1.o": 0.102,
"build/src/snd10.o": 0.078,
"build/src/snd11.o": 0.062,
"build/src/snd12.o": 0.076,
"build/src/snd2.o": 0.109,
"build/src/snd3.o": 0.087,
"build/src/snd4.o": 0.087,
"build/src/snd5.o": 0.111,
"build/src/snd6.o": 0.101,
"build/src/snd7.o": 0.078,
"build/src/snd8.o": 0.09,
"build/src/snd9.o": 0.122,
"build/src/ov_SC03_014/ov_SC03_014.o": 0.206,
"build/src/ov_SC03_014/ov_SC03_014_after.o": 0.726,
"build/src/ov_SC03_014/ov_SC03_014_jr_8012ACE0.o": 0.604,
"build/src/ov_SC03_014/ov_SC03_014_jr_80135888.o": 0.123,
"build/src/ov_SC03_014/ov_SC03_014_jr_80135A4C.o": 0.094,
"build/src/ov_SC03_014/ov_SC03_014_jr_80135D20.o": 0.202,
"build/src/ov_SC03_014/ov_SC03_014_jr_801380E0.o": 0.24,
"build/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.o": 0.186,
"build/src/ov_SC03_014/ov_SC03_014_jr_8013F350.o": 0.139,
"build/src/ov_SC03_014/ov_SC03_014_jr_8013FFD8.o": 0.088,
"build/src/ov_SC03_014/ov_SC03_014_jr_80140608.o": 0.247,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015444C.o": 0.089,
"build/src/ov_SC03_014/ov_SC03_014_jr_80154C24.o": 0.223,
"build/src/ov_SC03_014/ov_SC03_014_jr_801588CC.o": 0.132,
"build/src/ov_SC03_014/ov_SC03_014_jr_80159C84.o": 0.127,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015A3C8.o": 0.082,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015AE2C.o": 0.138,
"build/src/ov_SC03_014/ov_SC03_014_jr_8015C32C.o": 0.619,
"build/src/ov_SC03_014/ov_SC03_014_jr_8016AB6C.o": 0.359,
"build/src/ov_SC03_014/ov_SC03_014_jr_80171B4C.o": 0.126,
"build/src/ov_SC03_014/ov_SC03_014_jr_801734BC.o": 0.253,
"build/src/ov_SC03_014/ov_SC03_014_jr_801789AC.o": 0.099,
"build/src/ov_SC03_014/ov_SC03_014_jr_80178D40.o": 0.168,
"build/src/ov_SC03_014/ov_SC03_014_jr_8017A4AC.o": 0.101,
"build/src/ov_SC03_014/ov_SC03_014_jr_8017AE2C.o": 0.228,
"build/src/ov_SC03_014/ov_SC03_014_jr_8017EB7C.o": 0.308,
"build/src/ov_SC03_014/ov_SC03_014_jr_80184440.o": 0.075,
"build/src/ov_SC03_014/ov_SC03_014_jr_801848E4.o": 0.332,
"build/src/ov_SC03_014/ov_SC03_014_o0b.o": 0.086,
"build/src/ov_SC03_014/ov_SC03_014_o0c.o": 0.107,
"build/src/ov_SC03_014/ov_SC03_014_o0d.o": 0.076,
"build/src/ov_SC03_014/ov_SC03_014_o0e.o": 0.103,
"build/src/ov_SC03_015/ov_SC03_015.o": 0.175,
"build/src/ov_SC03_015/ov_SC03_015_after.o": 0.692,
"build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.51,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.088,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.079,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.139,
"build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.223,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.15,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.096,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.076,
"build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.226,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.095,
"build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.266,
"build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.132,
"build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.103,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.137,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.129,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.602,
"build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.378,
"build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.138,
"build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.297,
"build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.083,
"build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.166,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.111,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.234,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.337,
"build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.074,
"build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.367,
"build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.082,
"build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.095,
"build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.083,
"build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.092,
"build/src/ov_SC04_011/ov_SC04_011.o": 0.162,
"build/src/ov_SC04_011/ov_SC04_011_after.o": 0.629,
"build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.474,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.091,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.114,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.164,
"build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.218,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.142,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.148,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.09,
"build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.207,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.107,
"build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.233,
"build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.102,
"build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.122,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.118,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.148,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.097,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.136,
"build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.258,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.1,
"build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.289,
"build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.133,
"build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.112,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.131,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.181,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.565,
"build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.331,
"build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.135,
"build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.241,
"build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.078,
"build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.325,
"build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.157,
"build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.257,
"build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.115,
"build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.148,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.102,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.15,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.733,
"build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.079,
"build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.096
"build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.127,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.155,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.724,
"build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.08,
"build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.086
},
"ok": true,
"seconds": 3.7
"seconds": 3.8
}
+3
View File
@@ -29303,3 +29303,6 @@
{"ts": "2026-09-10 23:59:47", "label": "s104_d37", "rung": "E", "calib": {"head": "34db194a8", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_028/ov_SC02_028_jr_8017D898.c", "fn": "func_80180040", "addr": 2149056576, "aliases": null, "header": false, "includers": 0, "nhash_before": "45633f603dba5eccd9a29a4bfd54074c99b482e0", "nhash_after": "56cfabb59163cce3fc96a6d8561f43e0e16f4a24", "source": "propagate:src/ov_SC02_026/ov_SC02_026_jr_8017C180.c:func_8017DAB8", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.247, "objects": ["build/src/ov_SC02_028/ov_SC02_028_jr_8017D898.o"], "before_text": "void func_80180040(s32 a0)\n{\n\n extern u16 D_801A4C1C[];\n extern u8 D_801A4C0C;\n extern u8 D_801A4BFC;\n if ((*(s32 *)(a0 + 0x20) = ((s32 (*)(void))func_8012C1B8)()) == 0) {\n func_8012CAE4((void *)a0);\n return;\n }\n\n if ((func_80029178((s32)D_801A4C1C[*(s16 *)(a0 + 0x70)]) & 0xFF) != 0) {\n s32 s0 = *(s32 *)(a0 + 0xDC);\n if (s0 != 0) {\n s32 a1 = *(s32 *)(s0 + 0x4);\n if (a1 != 0) {\n func_8001C214(*(s32 *)(a0 + 0x20), a1);\n if (*(s32 *)(s0 + 0xC) != 0) {\n s32 v1 = *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4);\n v1 |= 0x1000000;\n *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4) = v1;\n }\n }\n }\n func_8012AD50((void *)a0);\n goto tail;\n }\n\n {\n register s32 s0 __asm__(\"$16\") = *(s32 *)(a0 + 0xDC); // !FAKE: pin $16 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n register s32 flag __asm__(\"$2\") = 1; // !FAKE: pin $2 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n if (s0 != 0) {\n s32 a1 = *(s32 *)s0;\n if (a1 != 0) {\n func_8001C214(*(s32 *)(a0 + 0x20), a1);\n if (*(s32 *)(s0 + 0xC) != 0) {\n s32 v1 = *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4);\n v1 |= 0x1000000;\n *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4) = v1;\n }\n flag = 1;\n }\n }\n *(u8 *)(a0 + 0xC0) = flag;\n }\n\n *(s32 *)(a0 + 0xBC) = (s32)&D_801A4C0C;\n *(s32 *)(a0 + 0x58) = (s32)&D_801A4BFC | 0x40000000;\n *(u16 *)(a0 + 0x5C) = 0x8800;\n *(s32 *)(a0 + 0xB4) = 0;\n *(u8 *)(a0 + 0xC1) = 0;\n *(u16 *)(a0 + 0xAE) = 0x7FFF;\n *(u8 *)(a0 + 0x75) = 0;\n *(s32 *)(a0 + 0xC4) |= 0x2;\n\ntail:\n func_8012AD50((void *)a0);\n}\n", "after_text": "void func_80180040(s32 a0)\n{\n s32 s0;\n extern u16 D_801A4C1C[];\n extern u8 D_801A4C0C;\n extern u8 D_801A4BFC;\n\n if ((*(s32 *)(a0 + 0x20) = ((s32 (*)(void))func_8012C1B8)()) == 0) {\n func_8012CAE4((void *)a0);\n return;\n }\n\n if ((func_80029178((s32)D_801A4C1C[*(s16 *)(a0 + 0x70)]) & 0xFF) != 0) {\n s0 = *(s32 *)(a0 + 0xDC);\n if (s0 != 0) {\n s32 a1 = *(s32 *)(s0 + 0x4);\n if (a1 != 0) {\n func_8001C214(*(s32 *)(a0 + 0x20), a1);\n if (*(s32 *)(s0 + 0xC) != 0) {\n *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4) |= 0x1000000;\n }\n }\n }\n func_8012AD50((void *)a0);\n } else {\n s0 = *(s32 *)(a0 + 0xDC);\n if (s0 != 0) {\n s32 a1 = *(s32 *)s0;\n if (a1 != 0) {\n func_8001C214(*(s32 *)(a0 + 0x20), a1);\n if (*(s32 *)(s0 + 0xC) != 0) {\n *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4) |= 0x1000000;\n }\n }\n }\n *(u8 *)(a0 + 0xC0) = 1;\n *(s32 *)(a0 + 0xBC) = (s32)&D_801A4C0C;\n *(s32 *)(a0 + 0x58) = (s32)&D_801A4BFC | 0x40000000;\n *(u16 *)(a0 + 0x5C) = 0x8800;\n *(s32 *)(a0 + 0xB4) = 0;\n *(u8 *)(a0 + 0xC1) = 0;\n *(u16 *)(a0 + 0xAE) = 0x7FFF;\n *(u8 *)(a0 + 0x75) = 0;\n *(s32 *)(a0 + 0xC4) |= 0x2;\n }\n func_8012AD50((void *)a0);\n}\n"}
{"ts": "2026-09-10 23:59:55", "label": "s104_d37", "rung": "E", "calib": {"head": "34db194a8", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_092/ov_SC03_092_jr_8017FE88.c", "fn": "func_80180BFC", "addr": 2149059580, "aliases": null, "header": false, "includers": 0, "nhash_before": "45633f603dba5eccd9a29a4bfd54074c99b482e0", "nhash_after": "56cfabb59163cce3fc96a6d8561f43e0e16f4a24", "source": "propagate:src/ov_SC02_026/ov_SC02_026_jr_8017C180.c:func_8017DAB8", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.125, "objects": ["build/src/ov_SC03_092/ov_SC03_092_jr_8017FE88.o"], "before_text": "void func_80180BFC(s32 a0)\n{\n\n extern u16 D_801AC610[];\n extern u8 D_801AC600;\n extern u8 D_801AC5F0;\n if ((*(s32 *)(a0 + 0x20) = ((s32 (*)(void))func_8012C1B8)()) == 0) {\n func_8012CAE4((void *)a0);\n return;\n }\n\n if ((func_80029178((s32)D_801AC610[*(s16 *)(a0 + 0x70)]) & 0xFF) != 0) {\n s32 s0 = *(s32 *)(a0 + 0xDC);\n if (s0 != 0) {\n s32 a1 = *(s32 *)(s0 + 0x4);\n if (a1 != 0) {\n func_8001C214(*(s32 *)(a0 + 0x20), a1);\n if (*(s32 *)(s0 + 0xC) != 0) {\n s32 v1 = *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4);\n v1 |= 0x1000000;\n *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4) = v1;\n }\n }\n }\n func_8012AD50((void *)a0);\n goto tail;\n }\n\n {\n register s32 s0 __asm__(\"$16\") = *(s32 *)(a0 + 0xDC); // !FAKE: pin $16 \u2014 NEEDED DIFFERS (P36 rung A tus9)\n register s32 flag __asm__(\"$2\") = 1; // !FAKE: pin $2 \u2014 NEEDED DIFFERS (P36 rung A tus9)\n if (s0 != 0) {\n s32 a1 = *(s32 *)s0;\n if (a1 != 0) {\n func_8001C214(*(s32 *)(a0 + 0x20), a1);\n if (*(s32 *)(s0 + 0xC) != 0) {\n s32 v1 = *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4);\n v1 |= 0x1000000;\n *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4) = v1;\n }\n flag = 1;\n }\n }\n *(u8 *)(a0 + 0xC0) = flag;\n }\n\n *(s32 *)(a0 + 0xBC) = (s32)&D_801AC600;\n *(s32 *)(a0 + 0x58) = (s32)&D_801AC5F0 | 0x40000000;\n *(u16 *)(a0 + 0x5C) = 0x8800;\n *(s32 *)(a0 + 0xB4) = 0;\n *(u8 *)(a0 + 0xC1) = 0;\n *(u16 *)(a0 + 0xAE) = 0x7FFF;\n *(u8 *)(a0 + 0x75) = 0;\n *(s32 *)(a0 + 0xC4) |= 0x2;\n\ntail:\n func_8012AD50((void *)a0);\n}\n", "after_text": "void func_80180BFC(s32 a0)\n{\n s32 s0;\n extern u16 D_801AC610[];\n extern u8 D_801AC600;\n extern u8 D_801AC5F0;\n\n if ((*(s32 *)(a0 + 0x20) = ((s32 (*)(void))func_8012C1B8)()) == 0) {\n func_8012CAE4((void *)a0);\n return;\n }\n\n if ((func_80029178((s32)D_801AC610[*(s16 *)(a0 + 0x70)]) & 0xFF) != 0) {\n s0 = *(s32 *)(a0 + 0xDC);\n if (s0 != 0) {\n s32 a1 = *(s32 *)(s0 + 0x4);\n if (a1 != 0) {\n func_8001C214(*(s32 *)(a0 + 0x20), a1);\n if (*(s32 *)(s0 + 0xC) != 0) {\n *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4) |= 0x1000000;\n }\n }\n }\n func_8012AD50((void *)a0);\n } else {\n s0 = *(s32 *)(a0 + 0xDC);\n if (s0 != 0) {\n s32 a1 = *(s32 *)s0;\n if (a1 != 0) {\n func_8001C214(*(s32 *)(a0 + 0x20), a1);\n if (*(s32 *)(s0 + 0xC) != 0) {\n *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4) |= 0x1000000;\n }\n }\n }\n *(u8 *)(a0 + 0xC0) = 1;\n *(s32 *)(a0 + 0xBC) = (s32)&D_801AC600;\n *(s32 *)(a0 + 0x58) = (s32)&D_801AC5F0 | 0x40000000;\n *(u16 *)(a0 + 0x5C) = 0x8800;\n *(s32 *)(a0 + 0xB4) = 0;\n *(u8 *)(a0 + 0xC1) = 0;\n *(u16 *)(a0 + 0xAE) = 0x7FFF;\n *(u8 *)(a0 + 0x75) = 0;\n *(s32 *)(a0 + 0xC4) |= 0x2;\n }\n func_8012AD50((void *)a0);\n}\n"}
{"ts": "2026-09-11 00:00:28", "label": "s104_d37", "rung": "E", "calib": {"head": "721a9c063", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_027/ov_SC02_027_jr_8017D898.c", "fn": "func_80181F38", "addr": 2149064504, "aliases": null, "header": false, "includers": 0, "nhash_before": "eabbcefc2d4b9703656c164a41534bd682c88768", "nhash_after": "3f872df4fe4da82ac011da959e3a60aeb017825d", "source": ".run/P36/agents/ov_SC02_026__func_8017DAB8/scratch/ov_SC02_027__func_80181F38.c", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.481, "objects": ["build/src/ov_SC02_027/ov_SC02_027_jr_8017D898.o"], "before_text": "void func_80181F38(s32 a0)\n{\n if ((*(s32 *)(a0 + 0x20) = ((s32 (*)(void))func_8012C1B8)()) == 0) {\n func_8012CAE4((void *)a0);\n return;\n }\n\n if ((func_80029178((s32)D_801AB580[*(s16 *)(a0 + 0x70)]) & 0xFF) != 0) {\n s32 s0 = *(s32 *)(a0 + 0xDC);\n if (s0 != 0) {\n s32 a1 = *(s32 *)(s0 + 0x4);\n if (a1 != 0) {\n func_8001C214(*(s32 *)(a0 + 0x20), a1);\n if (*(s32 *)(s0 + 0xC) != 0) {\n s32 v1 = *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4);\n v1 |= 0x1000000;\n *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4) = v1;\n }\n }\n }\n func_8012AD50((void *)a0);\n goto tail;\n }\n\n {\n register s32 s0 __asm__(\"$16\") = *(s32 *)(a0 + 0xDC); // !FAKE: pin $16 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n register s32 flag __asm__(\"$2\") = 1; // !FAKE: pin $2 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n if (s0 != 0) {\n s32 a1 = *(s32 *)s0;\n if (a1 != 0) {\n func_8001C214(*(s32 *)(a0 + 0x20), a1);\n if (*(s32 *)(s0 + 0xC) != 0) {\n s32 v1 = *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4);\n v1 |= 0x1000000;\n *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4) = v1;\n }\n flag = 1;\n }\n }\n *(u8 *)(a0 + 0xC0) = flag;\n }\n\n *(s32 *)(a0 + 0xBC) = (s32)&D_801AB570;\n *(s32 *)(a0 + 0x58) = (s32)&D_801AB560 | 0x40000000;\n *(u16 *)(a0 + 0x5C) = 0x8800;\n *(s32 *)(a0 + 0xB4) = 0;\n *(u8 *)(a0 + 0xC1) = 0;\n *(u16 *)(a0 + 0xAE) = 0x7FFF;\n *(u8 *)(a0 + 0x75) = 0;\n *(s32 *)(a0 + 0xC4) |= 0x2;\n\ntail:\n func_8012AD50((void *)a0);\n}\n", "after_text": "void func_80181F38(s32 a0)\n{\n s32 s0;\n\n if ((*(s32 *)(a0 + 0x20) = ((s32 (*)(void))func_8012C1B8)()) == 0) {\n func_8012CAE4((void *)a0);\n return;\n }\n\n if ((func_80029178((s32)D_801AB580[*(s16 *)(a0 + 0x70)]) & 0xFF) != 0) {\n s0 = *(s32 *)(a0 + 0xDC);\n if (s0 != 0) {\n s32 a1 = *(s32 *)(s0 + 0x4);\n if (a1 != 0) {\n func_8001C214(*(s32 *)(a0 + 0x20), a1);\n if (*(s32 *)(s0 + 0xC) != 0) {\n *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4) |= 0x1000000;\n }\n }\n }\n func_8012AD50((void *)a0);\n } else {\n s0 = *(s32 *)(a0 + 0xDC);\n if (s0 != 0) {\n s32 a1 = *(s32 *)s0;\n if (a1 != 0) {\n func_8001C214(*(s32 *)(a0 + 0x20), a1);\n if (*(s32 *)(s0 + 0xC) != 0) {\n *(s32 *)(*(s32 *)(a0 + 0x20) + 0x4) |= 0x1000000;\n }\n }\n }\n *(u8 *)(a0 + 0xC0) = 1;\n *(s32 *)(a0 + 0xBC) = (s32)&D_801AB570;\n *(s32 *)(a0 + 0x58) = (s32)&D_801AB560 | 0x40000000;\n *(u16 *)(a0 + 0x5C) = 0x8800;\n *(s32 *)(a0 + 0xB4) = 0;\n *(u8 *)(a0 + 0xC1) = 0;\n *(u16 *)(a0 + 0xAE) = 0x7FFF;\n *(u8 *)(a0 + 0x75) = 0;\n *(s32 *)(a0 + 0xC4) |= 0x2;\n }\n func_8012AD50((void *)a0);\n}\n"}
{"ts": "2026-09-11 00:01:13", "label": "s104_d35", "rung": "E", "calib": {"head": "1f4de6b82", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_091/ov_SC03_091_jr_8018326C.c", "fn": "func_8018486C", "addr": 2149075052, "aliases": null, "header": false, "includers": 0, "nhash_before": "1951cabcc095b67046bae435614eff58a3cbe464", "nhash_after": "72602ef932efc2eab4b204f950a1e0afad9fb3f0", "source": ".run/P36/agents/ov_SC03_091__func_8018486C/body.c", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.225, "objects": ["build/src/ov_SC03_091/ov_SC03_091_jr_8018326C.o"], "before_text": "void func_8018486C(s32 a0) {\n\n extern u8 D_801202A0[];\n s32 i;\n s32 v1;\n s32 val1;\n s32 val2;\n u8 *cur;\n u8 *best1;\n register u8 *best2 __asm__(\"$22\"); // !FAKE: pin $22 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n register s32 flag __asm__(\"$19\"); // !FAKE: pin $19 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n s32 t;\n register s32 cmp __asm__(\"$23\"); // !FAKE: pin $23 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n s32 pad[2];\n\n best1 = 0;\n best2 = 0;\n flag = 0;\n t = *(s32 *)(a0 + 0xCC);\n if (t == 0) {\n goto L_D54;\n }\n func_80184AE4(t + 4, 0);\n goto L_D5C;\n\nL_D3C:\n val1 = func_8012BD14((s32)cur);\n best1 = cur;\n flag = 1;\n goto L_D8C;\n\nL_D54:\n func_8013B7AC(0);\n\nL_D5C:\n cur = D_801202A0;\n i = 0;\n cmp = 1;\n\nL_D6C:\n if (func_80184A40((s32)cur) == cmp) {\n goto L_D3C;\n }\n i++;\n cur += 0x10C;\n if (i < 0x60) {\n goto L_D6C;\n }\n\nL_D8C:\n if (flag) {\n goto L_DBC;\n }\n func_8013B7AC(1);\n goto L_DFC;\n\nL_DA4:\n val2 = func_8012BD14((s32)cur);\n best2 = cur;\n flag = 1;\n goto L_DE8;\n\nL_DBC:\n flag = 0;\n if (i >= 0x60) {\n goto L_DE8;\n }\n cmp = 1;\n\nL_DC8:\n if (func_80184A40((s32)cur) == cmp) {\n goto L_DA4;\n }\n i++;\n cur += 0x10C;\n if (i < 0x60) {\n goto L_DC8;\n }\n\nL_DE8:\n if (flag) {\n goto L_E0C;\n }\n func_80184A98((s32)best1, 1);\n\nL_DFC:\n func_8013B7AC(2);\n return;\n\nL_E0C:\n if (i >= 0x60) {\n goto L_E78;\n }\n flag = 1;\n\nL_E18:\n if (func_80184A40((s32)cur) == flag) {\n v1 = func_8012BD14((s32)cur);\n if (v1 < val1) {\n best2 = best1;\n best1 = cur;\n val2 = val1;\n val1 = v1;\n } else if (v1 < val2) {\n best2 = cur;\n val2 = v1;\n }\n }\n i++;\n cur += 0x10C;\n if (i < 0x60) {\n goto L_E18;\n }\n\nL_E78:\n func_80184A98((s32)best1, 1);\n func_80184A98((s32)best2, 2);\n}\n", "after_text": "void func_8018486C(s32 a0) {\n\n extern u8 D_801202A0[];\n s32 i;\n s32 v1;\n s32 val1;\n s32 val2;\n u8 *cur;\n u8 *best1;\n u8 *best2;\n s32 flag;\n s32 t;\n s32 pad[2];\n\n best1 = 0;\n best2 = 0;\n flag = 0;\n t = *(s32 *)(a0 + 0xCC);\n if (t != 0) {\n func_80184AE4(t + 4, 0);\n } else {\n func_8013B7AC(0);\n }\n\n cur = D_801202A0;\n for (i = 0; i < 0x60; i++, cur += 0x10C) {\n if (func_80184A40((s32)cur) == 1) {\n val1 = func_8012BD14((s32)cur);\n best1 = cur;\n flag = 1;\n break;\n }\n }\n if (!flag) {\n func_8013B7AC(1);\n func_8013B7AC(2);\n return;\n }\n\n flag = 0;\n for (; i < 0x60; i++, cur += 0x10C) {\n if (func_80184A40((s32)cur) == 1) {\n val2 = func_8012BD14((s32)cur);\n best2 = cur;\n flag = 1;\n break;\n }\n }\n if (!flag) {\n func_80184A98((s32)best1, 1);\n func_8013B7AC(2);\n return;\n }\n\n for (; i < 0x60; i++, cur += 0x10C) {\n if (func_80184A40((s32)cur) == 1) {\n v1 = func_8012BD14((s32)cur);\n if (v1 < val1) {\n best2 = best1;\n best1 = cur;\n val2 = val1;\n val1 = v1;\n } else if (v1 < val2) {\n best2 = cur;\n val2 = v1;\n }\n }\n }\n func_80184A98((s32)best1, 1);\n func_80184A98((s32)best2, 2);\n}\n"}
{"ts": "2026-09-11 00:01:32", "label": "s104_d35", "rung": "E", "calib": {"head": "1f4de6b82", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_090/ov_SC03_090_jr_8017CA80.c", "fn": "func_801839C4", "addr": 2149071300, "aliases": null, "header": false, "includers": 0, "nhash_before": "1951cabcc095b67046bae435614eff58a3cbe464", "nhash_after": "72602ef932efc2eab4b204f950a1e0afad9fb3f0", "source": "propagate:src/ov_SC03_091/ov_SC03_091_jr_8018326C.c:func_8018486C", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.502, "objects": ["build/src/ov_SC03_090/ov_SC03_090_jr_8017CA80.o"], "before_text": "void func_801839C4(s32 a0) {\n\n extern u8 D_801202A0[];\n s32 i;\n s32 v1;\n s32 val1;\n s32 val2;\n u8 *cur;\n u8 *best1;\n register u8 *best2 __asm__(\"$22\"); // !FAKE: pin $22 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n register s32 flag __asm__(\"$19\"); // !FAKE: pin $19 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n s32 t;\n register s32 cmp __asm__(\"$23\"); // !FAKE: pin $23 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n s32 pad[2];\n\n best1 = 0;\n best2 = 0;\n flag = 0;\n t = *(s32 *)(a0 + 0xCC);\n if (t == 0) {\n goto L_D54;\n }\n func_80183C3C(t + 4, 0);\n goto L_D5C;\n\nL_D3C:\n val1 = func_8012BD14((s32)cur);\n best1 = cur;\n flag = 1;\n goto L_D8C;\n\nL_D54:\n func_8013B7AC(0);\n\nL_D5C:\n cur = D_801202A0;\n i = 0;\n cmp = 1;\n\nL_D6C:\n if (func_80183B98((s32)cur) == cmp) {\n goto L_D3C;\n }\n i++;\n cur += 0x10C;\n if (i < 0x60) {\n goto L_D6C;\n }\n\nL_D8C:\n if (flag) {\n goto L_DBC;\n }\n func_8013B7AC(1);\n goto L_DFC;\n\nL_DA4:\n val2 = func_8012BD14((s32)cur);\n best2 = cur;\n flag = 1;\n goto L_DE8;\n\nL_DBC:\n flag = 0;\n if (i >= 0x60) {\n goto L_DE8;\n }\n cmp = 1;\n\nL_DC8:\n if (func_80183B98((s32)cur) == cmp) {\n goto L_DA4;\n }\n i++;\n cur += 0x10C;\n if (i < 0x60) {\n goto L_DC8;\n }\n\nL_DE8:\n if (flag) {\n goto L_E0C;\n }\n func_80183BF0((s32)best1, 1);\n\nL_DFC:\n func_8013B7AC(2);\n return;\n\nL_E0C:\n if (i >= 0x60) {\n goto L_E78;\n }\n flag = 1;\n\nL_E18:\n if (func_80183B98((s32)cur) == flag) {\n v1 = func_8012BD14((s32)cur);\n if (v1 < val1) {\n best2 = best1;\n best1 = cur;\n val2 = val1;\n val1 = v1;\n } else if (v1 < val2) {\n best2 = cur;\n val2 = v1;\n }\n }\n i++;\n cur += 0x10C;\n if (i < 0x60) {\n goto L_E18;\n }\n\nL_E78:\n func_80183BF0((s32)best1, 1);\n func_80183BF0((s32)best2, 2);\n}\n", "after_text": "void func_801839C4(s32 a0) {\n\n extern u8 D_801202A0[];\n s32 i;\n s32 v1;\n s32 val1;\n s32 val2;\n u8 *cur;\n u8 *best1;\n u8 *best2;\n s32 flag;\n s32 t;\n s32 pad[2];\n\n best1 = 0;\n best2 = 0;\n flag = 0;\n t = *(s32 *)(a0 + 0xCC);\n if (t != 0) {\n func_80183C3C(t + 4, 0);\n } else {\n func_8013B7AC(0);\n }\n\n cur = D_801202A0;\n for (i = 0; i < 0x60; i++, cur += 0x10C) {\n if (func_80183B98((s32)cur) == 1) {\n val1 = func_8012BD14((s32)cur);\n best1 = cur;\n flag = 1;\n break;\n }\n }\n if (!flag) {\n func_8013B7AC(1);\n func_8013B7AC(2);\n return;\n }\n\n flag = 0;\n for (; i < 0x60; i++, cur += 0x10C) {\n if (func_80183B98((s32)cur) == 1) {\n val2 = func_8012BD14((s32)cur);\n best2 = cur;\n flag = 1;\n break;\n }\n }\n if (!flag) {\n func_80183BF0((s32)best1, 1);\n func_8013B7AC(2);\n return;\n }\n\n for (; i < 0x60; i++, cur += 0x10C) {\n if (func_80183B98((s32)cur) == 1) {\n v1 = func_8012BD14((s32)cur);\n if (v1 < val1) {\n best2 = best1;\n best1 = cur;\n val2 = val1;\n val1 = v1;\n } else if (v1 < val2) {\n best2 = cur;\n val2 = v1;\n }\n }\n }\n func_80183BF0((s32)best1, 1);\n func_80183BF0((s32)best2, 2);\n}\n"}
{"ts": "2026-09-11 00:01:32", "label": "s104_d35", "rung": "E", "calib": {"head": "1f4de6b82", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_104/ov_SC03_104_jr_8017CA80.c", "fn": "func_80181858", "addr": 2149062744, "aliases": null, "header": false, "includers": 0, "nhash_before": "1951cabcc095b67046bae435614eff58a3cbe464", "nhash_after": "72602ef932efc2eab4b204f950a1e0afad9fb3f0", "source": "propagate:src/ov_SC03_091/ov_SC03_091_jr_8018326C.c:func_8018486C", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.231, "objects": ["build/src/ov_SC03_104/ov_SC03_104_jr_8017CA80.o"], "before_text": "void func_80181858(s32 a0) {\n\n extern u8 D_801202A0[];\n s32 i;\n s32 v1;\n s32 val1;\n s32 val2;\n u8 *cur;\n u8 *best1;\n register u8 *best2 __asm__(\"$22\"); // !FAKE: pin $22 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n register s32 flag __asm__(\"$19\"); // !FAKE: pin $19 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n s32 t;\n register s32 cmp __asm__(\"$23\"); // !FAKE: pin $23 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n s32 pad[2];\n\n best1 = 0;\n best2 = 0;\n flag = 0;\n t = *(s32 *)(a0 + 0xCC);\n if (t == 0) {\n goto L_D54;\n }\n func_80181AD0(t + 4, 0);\n goto L_D5C;\n\nL_D3C:\n val1 = func_8012BD14((s32)cur);\n best1 = cur;\n flag = 1;\n goto L_D8C;\n\nL_D54:\n func_8013B7AC(0);\n\nL_D5C:\n cur = D_801202A0;\n i = 0;\n cmp = 1;\n\nL_D6C:\n if (func_80181A2C((s32)cur) == cmp) {\n goto L_D3C;\n }\n i++;\n cur += 0x10C;\n if (i < 0x60) {\n goto L_D6C;\n }\n\nL_D8C:\n if (flag) {\n goto L_DBC;\n }\n func_8013B7AC(1);\n goto L_DFC;\n\nL_DA4:\n val2 = func_8012BD14((s32)cur);\n best2 = cur;\n flag = 1;\n goto L_DE8;\n\nL_DBC:\n flag = 0;\n if (i >= 0x60) {\n goto L_DE8;\n }\n cmp = 1;\n\nL_DC8:\n if (func_80181A2C((s32)cur) == cmp) {\n goto L_DA4;\n }\n i++;\n cur += 0x10C;\n if (i < 0x60) {\n goto L_DC8;\n }\n\nL_DE8:\n if (flag) {\n goto L_E0C;\n }\n func_80181A84((s32)best1, 1);\n\nL_DFC:\n func_8013B7AC(2);\n return;\n\nL_E0C:\n if (i >= 0x60) {\n goto L_E78;\n }\n flag = 1;\n\nL_E18:\n if (func_80181A2C((s32)cur) == flag) {\n v1 = func_8012BD14((s32)cur);\n if (v1 < val1) {\n best2 = best1;\n best1 = cur;\n val2 = val1;\n val1 = v1;\n } else if (v1 < val2) {\n best2 = cur;\n val2 = v1;\n }\n }\n i++;\n cur += 0x10C;\n if (i < 0x60) {\n goto L_E18;\n }\n\nL_E78:\n func_80181A84((s32)best1, 1);\n func_80181A84((s32)best2, 2);\n}\n", "after_text": "void func_80181858(s32 a0) {\n\n extern u8 D_801202A0[];\n s32 i;\n s32 v1;\n s32 val1;\n s32 val2;\n u8 *cur;\n u8 *best1;\n u8 *best2;\n s32 flag;\n s32 t;\n s32 pad[2];\n\n best1 = 0;\n best2 = 0;\n flag = 0;\n t = *(s32 *)(a0 + 0xCC);\n if (t != 0) {\n func_80181AD0(t + 4, 0);\n } else {\n func_8013B7AC(0);\n }\n\n cur = D_801202A0;\n for (i = 0; i < 0x60; i++, cur += 0x10C) {\n if (func_80181A2C((s32)cur) == 1) {\n val1 = func_8012BD14((s32)cur);\n best1 = cur;\n flag = 1;\n break;\n }\n }\n if (!flag) {\n func_8013B7AC(1);\n func_8013B7AC(2);\n return;\n }\n\n flag = 0;\n for (; i < 0x60; i++, cur += 0x10C) {\n if (func_80181A2C((s32)cur) == 1) {\n val2 = func_8012BD14((s32)cur);\n best2 = cur;\n flag = 1;\n break;\n }\n }\n if (!flag) {\n func_80181A84((s32)best1, 1);\n func_8013B7AC(2);\n return;\n }\n\n for (; i < 0x60; i++, cur += 0x10C) {\n if (func_80181A2C((s32)cur) == 1) {\n v1 = func_8012BD14((s32)cur);\n if (v1 < val1) {\n best2 = best1;\n best1 = cur;\n val2 = val1;\n val1 = v1;\n } else if (v1 < val2) {\n best2 = cur;\n val2 = v1;\n }\n }\n }\n func_80181A84((s32)best1, 1);\n func_80181A84((s32)best2, 2);\n}\n"}
+44 -91
View File
@@ -5134,112 +5134,65 @@ void func_801839C4(s32 a0) {
s32 val2;
u8 *cur;
u8 *best1;
register u8 *best2 __asm__("$22"); // !FAKE: pin $22 — NEEDED DIFFERS (P36 rung B tus9)
register s32 flag __asm__("$19"); // !FAKE: pin $19 — NEEDED DIFFERS (P36 rung B tus9)
u8 *best2;
s32 flag;
s32 t;
register s32 cmp __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus9)
s32 pad[2];
best1 = 0;
best2 = 0;
flag = 0;
t = *(s32 *)(a0 + 0xCC);
if (t == 0) {
goto L_D54;
if (t != 0) {
func_80183C3C(t + 4, 0);
} else {
func_8013B7AC(0);
}
func_80183C3C(t + 4, 0);
goto L_D5C;
L_D3C:
val1 = func_8012BD14((s32)cur);
best1 = cur;
flag = 1;
goto L_D8C;
L_D54:
func_8013B7AC(0);
L_D5C:
cur = D_801202A0;
i = 0;
cmp = 1;
L_D6C:
if (func_80183B98((s32)cur) == cmp) {
goto L_D3C;
}
i++;
cur += 0x10C;
if (i < 0x60) {
goto L_D6C;
}
L_D8C:
if (flag) {
goto L_DBC;
}
func_8013B7AC(1);
goto L_DFC;
L_DA4:
val2 = func_8012BD14((s32)cur);
best2 = cur;
flag = 1;
goto L_DE8;
L_DBC:
flag = 0;
if (i >= 0x60) {
goto L_DE8;
}
cmp = 1;
L_DC8:
if (func_80183B98((s32)cur) == cmp) {
goto L_DA4;
}
i++;
cur += 0x10C;
if (i < 0x60) {
goto L_DC8;
}
L_DE8:
if (flag) {
goto L_E0C;
}
func_80183BF0((s32)best1, 1);
L_DFC:
func_8013B7AC(2);
return;
L_E0C:
if (i >= 0x60) {
goto L_E78;
}
flag = 1;
L_E18:
if (func_80183B98((s32)cur) == flag) {
v1 = func_8012BD14((s32)cur);
if (v1 < val1) {
best2 = best1;
for (i = 0; i < 0x60; i++, cur += 0x10C) {
if (func_80183B98((s32)cur) == 1) {
val1 = func_8012BD14((s32)cur);
best1 = cur;
val2 = val1;
val1 = v1;
} else if (v1 < val2) {
best2 = cur;
val2 = v1;
flag = 1;
break;
}
}
i++;
cur += 0x10C;
if (i < 0x60) {
goto L_E18;
if (!flag) {
func_8013B7AC(1);
func_8013B7AC(2);
return;
}
L_E78:
flag = 0;
for (; i < 0x60; i++, cur += 0x10C) {
if (func_80183B98((s32)cur) == 1) {
val2 = func_8012BD14((s32)cur);
best2 = cur;
flag = 1;
break;
}
}
if (!flag) {
func_80183BF0((s32)best1, 1);
func_8013B7AC(2);
return;
}
for (; i < 0x60; i++, cur += 0x10C) {
if (func_80183B98((s32)cur) == 1) {
v1 = func_8012BD14((s32)cur);
if (v1 < val1) {
best2 = best1;
best1 = cur;
val2 = val1;
val1 = v1;
} else if (v1 < val2) {
best2 = cur;
val2 = v1;
}
}
}
func_80183BF0((s32)best1, 1);
func_80183BF0((s32)best2, 2);
}
+44 -91
View File
@@ -3465,112 +3465,65 @@ void func_8018486C(s32 a0) {
s32 val2;
u8 *cur;
u8 *best1;
register u8 *best2 __asm__("$22"); // !FAKE: pin $22 — NEEDED DIFFERS (P36 rung B tus9)
register s32 flag __asm__("$19"); // !FAKE: pin $19 — NEEDED DIFFERS (P36 rung B tus9)
u8 *best2;
s32 flag;
s32 t;
register s32 cmp __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus9)
s32 pad[2];
best1 = 0;
best2 = 0;
flag = 0;
t = *(s32 *)(a0 + 0xCC);
if (t == 0) {
goto L_D54;
if (t != 0) {
func_80184AE4(t + 4, 0);
} else {
func_8013B7AC(0);
}
func_80184AE4(t + 4, 0);
goto L_D5C;
L_D3C:
val1 = func_8012BD14((s32)cur);
best1 = cur;
flag = 1;
goto L_D8C;
L_D54:
func_8013B7AC(0);
L_D5C:
cur = D_801202A0;
i = 0;
cmp = 1;
L_D6C:
if (func_80184A40((s32)cur) == cmp) {
goto L_D3C;
}
i++;
cur += 0x10C;
if (i < 0x60) {
goto L_D6C;
}
L_D8C:
if (flag) {
goto L_DBC;
}
func_8013B7AC(1);
goto L_DFC;
L_DA4:
val2 = func_8012BD14((s32)cur);
best2 = cur;
flag = 1;
goto L_DE8;
L_DBC:
flag = 0;
if (i >= 0x60) {
goto L_DE8;
}
cmp = 1;
L_DC8:
if (func_80184A40((s32)cur) == cmp) {
goto L_DA4;
}
i++;
cur += 0x10C;
if (i < 0x60) {
goto L_DC8;
}
L_DE8:
if (flag) {
goto L_E0C;
}
func_80184A98((s32)best1, 1);
L_DFC:
func_8013B7AC(2);
return;
L_E0C:
if (i >= 0x60) {
goto L_E78;
}
flag = 1;
L_E18:
if (func_80184A40((s32)cur) == flag) {
v1 = func_8012BD14((s32)cur);
if (v1 < val1) {
best2 = best1;
for (i = 0; i < 0x60; i++, cur += 0x10C) {
if (func_80184A40((s32)cur) == 1) {
val1 = func_8012BD14((s32)cur);
best1 = cur;
val2 = val1;
val1 = v1;
} else if (v1 < val2) {
best2 = cur;
val2 = v1;
flag = 1;
break;
}
}
i++;
cur += 0x10C;
if (i < 0x60) {
goto L_E18;
if (!flag) {
func_8013B7AC(1);
func_8013B7AC(2);
return;
}
L_E78:
flag = 0;
for (; i < 0x60; i++, cur += 0x10C) {
if (func_80184A40((s32)cur) == 1) {
val2 = func_8012BD14((s32)cur);
best2 = cur;
flag = 1;
break;
}
}
if (!flag) {
func_80184A98((s32)best1, 1);
func_8013B7AC(2);
return;
}
for (; i < 0x60; i++, cur += 0x10C) {
if (func_80184A40((s32)cur) == 1) {
v1 = func_8012BD14((s32)cur);
if (v1 < val1) {
best2 = best1;
best1 = cur;
val2 = val1;
val1 = v1;
} else if (v1 < val2) {
best2 = cur;
val2 = v1;
}
}
}
func_80184A98((s32)best1, 1);
func_80184A98((s32)best2, 2);
}
+44 -91
View File
@@ -3836,112 +3836,65 @@ void func_80181858(s32 a0) {
s32 val2;
u8 *cur;
u8 *best1;
register u8 *best2 __asm__("$22"); // !FAKE: pin $22 — NEEDED DIFFERS (P36 rung B tus9)
register s32 flag __asm__("$19"); // !FAKE: pin $19 — NEEDED DIFFERS (P36 rung B tus9)
u8 *best2;
s32 flag;
s32 t;
register s32 cmp __asm__("$23"); // !FAKE: pin $23 — NEEDED DIFFERS (P36 rung B tus9)
s32 pad[2];
best1 = 0;
best2 = 0;
flag = 0;
t = *(s32 *)(a0 + 0xCC);
if (t == 0) {
goto L_D54;
if (t != 0) {
func_80181AD0(t + 4, 0);
} else {
func_8013B7AC(0);
}
func_80181AD0(t + 4, 0);
goto L_D5C;
L_D3C:
val1 = func_8012BD14((s32)cur);
best1 = cur;
flag = 1;
goto L_D8C;
L_D54:
func_8013B7AC(0);
L_D5C:
cur = D_801202A0;
i = 0;
cmp = 1;
L_D6C:
if (func_80181A2C((s32)cur) == cmp) {
goto L_D3C;
}
i++;
cur += 0x10C;
if (i < 0x60) {
goto L_D6C;
}
L_D8C:
if (flag) {
goto L_DBC;
}
func_8013B7AC(1);
goto L_DFC;
L_DA4:
val2 = func_8012BD14((s32)cur);
best2 = cur;
flag = 1;
goto L_DE8;
L_DBC:
flag = 0;
if (i >= 0x60) {
goto L_DE8;
}
cmp = 1;
L_DC8:
if (func_80181A2C((s32)cur) == cmp) {
goto L_DA4;
}
i++;
cur += 0x10C;
if (i < 0x60) {
goto L_DC8;
}
L_DE8:
if (flag) {
goto L_E0C;
}
func_80181A84((s32)best1, 1);
L_DFC:
func_8013B7AC(2);
return;
L_E0C:
if (i >= 0x60) {
goto L_E78;
}
flag = 1;
L_E18:
if (func_80181A2C((s32)cur) == flag) {
v1 = func_8012BD14((s32)cur);
if (v1 < val1) {
best2 = best1;
for (i = 0; i < 0x60; i++, cur += 0x10C) {
if (func_80181A2C((s32)cur) == 1) {
val1 = func_8012BD14((s32)cur);
best1 = cur;
val2 = val1;
val1 = v1;
} else if (v1 < val2) {
best2 = cur;
val2 = v1;
flag = 1;
break;
}
}
i++;
cur += 0x10C;
if (i < 0x60) {
goto L_E18;
if (!flag) {
func_8013B7AC(1);
func_8013B7AC(2);
return;
}
L_E78:
flag = 0;
for (; i < 0x60; i++, cur += 0x10C) {
if (func_80181A2C((s32)cur) == 1) {
val2 = func_8012BD14((s32)cur);
best2 = cur;
flag = 1;
break;
}
}
if (!flag) {
func_80181A84((s32)best1, 1);
func_8013B7AC(2);
return;
}
for (; i < 0x60; i++, cur += 0x10C) {
if (func_80181A2C((s32)cur) == 1) {
v1 = func_8012BD14((s32)cur);
if (v1 < val1) {
best2 = best1;
best1 = cur;
val2 = val1;
val1 = v1;
} else if (v1 < val2) {
best2 = cur;
val2 = v1;
}
}
}
func_80181A84((s32)best1, 1);
func_80181A84((s32)best2, 2);
}