From 29c857eaa2dcc4b4f2397af578b0f5e43eb21e29 Mon Sep 17 00:00:00 2001 From: Drew T <50529377+Druthulu@users.noreply.github.com> Date: Thu, 10 Sep 2026 21:29:27 -0600 Subject: [PATCH] =?UTF-8?q?phase-36:=20S104=20s104=5Fd7=20=E2=80=94=20func?= =?UTF-8?q?=5F80180CF4=20banked=20at=200=20through=20the=20whole-object=20?= =?UTF-8?q?gate=20+=20propagated=20=E2=80=94=20d7=20port?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .run/P36/delever/calibration.json | 376 +++++++++++----------- .run/P36/delever/ledger.jsonl | 2 + src/ov_SC02_035/ov_SC02_035_jr_8017BEBC.c | 44 ++- src/ov_SC03_094/ov_SC03_094_jr_8017BEBC.c | 44 ++- 4 files changed, 228 insertions(+), 238 deletions(-) diff --git a/.run/P36/delever/calibration.json b/.run/P36/delever/calibration.json index 11bb628c1f..cee93b2c82 100644 --- a/.run/P36/delever/calibration.json +++ b/.run/P36/delever/calibration.json @@ -1,7 +1,7 @@ { - "head": "14210a8e6", + "head": "f2c25f372", "stamp": "15956e4a96c4", - "generated": "2026-09-10 21:26", + "generated": "2026-09-10 21:28", "aliases": [ "main", "ov_SC03_014", @@ -21,207 +21,207 @@ "main": { "objects": 85, "identical": 85, - "seconds": 12.183000000000003, - "mean_s": 0.143 + "seconds": 11.501, + "mean_s": 0.135 }, "ov_SC03_014": { "objects": 32, "identical": 32, - "seconds": 7.443000000000002, - "mean_s": 0.233 + "seconds": 7.438999999999999, + "mean_s": 0.232 }, "ov_SC03_015": { "objects": 32, "identical": 32, - "seconds": 7.43, - "mean_s": 0.232 + "seconds": 7.449999999999999, + "mean_s": 0.233 }, "ov_SC04_011": { "objects": 28, "identical": 28, - "seconds": 6.546, - "mean_s": 0.234 + "seconds": 7.3919999999999995, + "mean_s": 0.264 } }, "per_object_seconds": { - "build/src/800.o": 1.179, - "build/src/800_b.o": 0.131, - "build/src/800_b_2.o": 0.509, - "build/src/800_b_o0a.o": 0.145, - "build/src/800_c.o": 0.342, - "build/src/800b2.o": 0.154, - "build/src/apicard1.o": 0.104, - "build/src/apicard2.o": 0.098, - "build/src/apicard3.o": 0.117, - "build/src/apicard4.o": 0.131, - "build/src/apicard5.o": 0.091, - "build/src/apicard6.o": 0.107, - "build/src/apicard7.o": 0.098, - "build/src/boot.o": 0.112, - "build/src/gap.o": 0.12, - "build/src/libapi1.o": 0.124, - "build/src/libapi2.o": 0.104, - "build/src/libc2_1.o": 0.123, - "build/src/libc2_2.o": 0.082, - "build/src/libcd1.o": 0.164, - "build/src/libcd2.o": 0.138, - "build/src/libetc.o": 0.101, - "build/src/libgpu.o": 0.125, - "build/src/libgpu2.o": 0.102, - "build/src/libgs1.o": 0.105, - "build/src/libgs2.o": 0.132, - "build/src/libgs3.o": 0.131, - "build/src/libgs4.o": 0.145, - "build/src/libgs5.o": 0.076, - "build/src/libgs6.o": 0.166, - "build/src/libgs7.o": 0.102, - "build/src/libgs8.o": 0.119, - "build/src/libgte1.o": 0.122, - "build/src/libgte10.o": 0.108, - "build/src/libgte11.o": 0.082, - "build/src/libgte12.o": 0.116, - "build/src/libgte13.o": 0.14, - "build/src/libgte14.o": 0.086, - "build/src/libgte15.o": 0.163, - "build/src/libgte16.o": 0.105, - "build/src/libgte17.o": 0.131, - "build/src/libgte18.o": 0.11, - "build/src/libgte19.o": 0.125, - "build/src/libgte2.o": 0.104, - "build/src/libgte20.o": 0.155, - "build/src/libgte21.o": 0.124, - "build/src/libgte22.o": 0.088, - "build/src/libgte23.o": 0.139, - "build/src/libgte24.o": 0.136, - "build/src/libgte25.o": 0.13, - "build/src/libgte26.o": 0.102, - "build/src/libgte27.o": 0.091, - "build/src/libgte28.o": 0.191, - "build/src/libgte29.o": 0.178, - "build/src/libgte3.o": 0.099, - "build/src/libgte30.o": 0.138, - "build/src/libgte4.o": 0.105, - "build/src/libgte5.o": 0.187, - "build/src/libgte6.o": 0.115, - "build/src/libgte7.o": 0.118, - "build/src/libgte8.o": 0.107, - "build/src/libgte9.o": 0.115, - "build/src/libmcrd1.o": 0.178, - "build/src/libmcrd2.o": 0.121, - "build/src/libpad1.o": 0.11, - "build/src/libpad2.o": 0.179, - "build/src/sgap.o": 0.113, - "build/src/sgap_2.o": 0.114, - "build/src/sgap_3.o": 0.119, - "build/src/sgap_4.o": 0.153, - "build/src/sgap_5.o": 0.12, - "build/src/sgap_6.o": 0.102, - "build/src/sgap_8.o": 0.161, - "build/src/snd1.o": 0.132, - "build/src/snd10.o": 0.103, - "build/src/snd11.o": 0.101, - "build/src/snd12.o": 0.104, - "build/src/snd2.o": 0.109, - "build/src/snd3.o": 0.102, - "build/src/snd4.o": 0.173, - "build/src/snd5.o": 0.114, - "build/src/snd6.o": 0.177, - "build/src/snd7.o": 0.135, - "build/src/snd8.o": 0.111, - "build/src/snd9.o": 0.165, - "build/src/ov_SC03_014/ov_SC03_014.o": 0.201, - "build/src/ov_SC03_014/ov_SC03_014_after.o": 0.742, - "build/src/ov_SC03_014/ov_SC03_014_jr_8012ACE0.o": 0.548, - "build/src/ov_SC03_014/ov_SC03_014_jr_80135888.o": 0.099, - "build/src/ov_SC03_014/ov_SC03_014_jr_80135A4C.o": 0.111, - "build/src/ov_SC03_014/ov_SC03_014_jr_80135D20.o": 0.193, - "build/src/ov_SC03_014/ov_SC03_014_jr_801380E0.o": 0.22, - "build/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.o": 0.184, - "build/src/ov_SC03_014/ov_SC03_014_jr_8013F350.o": 0.135, - "build/src/ov_SC03_014/ov_SC03_014_jr_8013FFD8.o": 0.099, - "build/src/ov_SC03_014/ov_SC03_014_jr_80140608.o": 0.255, - "build/src/ov_SC03_014/ov_SC03_014_jr_8015444C.o": 0.149, - "build/src/ov_SC03_014/ov_SC03_014_jr_80154C24.o": 0.333, - "build/src/ov_SC03_014/ov_SC03_014_jr_801588CC.o": 0.171, - "build/src/ov_SC03_014/ov_SC03_014_jr_80159C84.o": 0.128, - "build/src/ov_SC03_014/ov_SC03_014_jr_8015A3C8.o": 0.089, - "build/src/ov_SC03_014/ov_SC03_014_jr_8015AE2C.o": 0.137, - "build/src/ov_SC03_014/ov_SC03_014_jr_8015C32C.o": 0.667, - "build/src/ov_SC03_014/ov_SC03_014_jr_8016AB6C.o": 0.336, - "build/src/ov_SC03_014/ov_SC03_014_jr_80171B4C.o": 0.149, - "build/src/ov_SC03_014/ov_SC03_014_jr_801734BC.o": 0.353, - "build/src/ov_SC03_014/ov_SC03_014_jr_801789AC.o": 0.097, - "build/src/ov_SC03_014/ov_SC03_014_jr_80178D40.o": 0.198, - "build/src/ov_SC03_014/ov_SC03_014_jr_8017A4AC.o": 0.189, - "build/src/ov_SC03_014/ov_SC03_014_jr_8017AE2C.o": 0.305, - "build/src/ov_SC03_014/ov_SC03_014_jr_8017EB7C.o": 0.285, - "build/src/ov_SC03_014/ov_SC03_014_jr_80184440.o": 0.103, - "build/src/ov_SC03_014/ov_SC03_014_jr_801848E4.o": 0.561, - "build/src/ov_SC03_014/ov_SC03_014_o0b.o": 0.091, - "build/src/ov_SC03_014/ov_SC03_014_o0c.o": 0.118, - "build/src/ov_SC03_014/ov_SC03_014_o0d.o": 0.085, - "build/src/ov_SC03_014/ov_SC03_014_o0e.o": 0.112, - "build/src/ov_SC03_015/ov_SC03_015.o": 0.197, - "build/src/ov_SC03_015/ov_SC03_015_after.o": 0.816, - "build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.542, - "build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.073, - "build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.119, - "build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.165, - "build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.235, - "build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.179, - "build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.099, - "build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.1, - "build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.253, - "build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.141, - "build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.298, - "build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.124, - "build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.087, - "build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.102, - "build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.142, - "build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.735, - "build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.393, - "build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.198, - "build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.314, - "build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.082, - "build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.132, - "build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.148, - "build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.325, - "build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.347, - "build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.088, - "build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.476, - "build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.127, - "build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.137, - "build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.127, - "build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.129, - "build/src/ov_SC04_011/ov_SC04_011.o": 0.189, - "build/src/ov_SC04_011/ov_SC04_011_after.o": 0.696, - "build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.576, - "build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.128, - "build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.077, - "build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.247, - "build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.232, - "build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.201, - "build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.141, - "build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.118, - "build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.253, - "build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.096, - "build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.217, - "build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.124, - "build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.113, - "build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.11, - "build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.179, - "build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.605, - "build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.35, - "build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.143, - "build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.259, - "build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.083, - "build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.155, - "build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.115, - "build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.163, - "build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.779, - "build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.095, - "build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.102 + "build/src/800.o": 1.149, + "build/src/800_b.o": 0.193, + "build/src/800_b_2.o": 0.506, + "build/src/800_b_o0a.o": 0.178, + "build/src/800_c.o": 0.436, + "build/src/800b2.o": 0.168, + "build/src/apicard1.o": 0.103, + "build/src/apicard2.o": 0.089, + "build/src/apicard3.o": 0.124, + "build/src/apicard4.o": 0.124, + "build/src/apicard5.o": 0.128, + "build/src/apicard6.o": 0.128, + "build/src/apicard7.o": 0.154, + "build/src/boot.o": 0.142, + "build/src/gap.o": 0.121, + "build/src/libapi1.o": 0.159, + "build/src/libapi2.o": 0.112, + "build/src/libc2_1.o": 0.095, + "build/src/libc2_2.o": 0.093, + "build/src/libcd1.o": 0.157, + "build/src/libcd2.o": 0.149, + "build/src/libetc.o": 0.115, + "build/src/libgpu.o": 0.088, + "build/src/libgpu2.o": 0.133, + "build/src/libgs1.o": 0.111, + "build/src/libgs2.o": 0.195, + "build/src/libgs3.o": 0.129, + "build/src/libgs4.o": 0.139, + "build/src/libgs5.o": 0.116, + "build/src/libgs6.o": 0.131, + "build/src/libgs7.o": 0.097, + "build/src/libgs8.o": 0.151, + "build/src/libgte1.o": 0.087, + "build/src/libgte10.o": 0.085, + "build/src/libgte11.o": 0.09, + "build/src/libgte12.o": 0.103, + "build/src/libgte13.o": 0.109, + "build/src/libgte14.o": 0.094, + "build/src/libgte15.o": 0.125, + "build/src/libgte16.o": 0.147, + "build/src/libgte17.o": 0.11, + "build/src/libgte18.o": 0.149, + "build/src/libgte19.o": 0.117, + "build/src/libgte2.o": 0.139, + "build/src/libgte20.o": 0.148, + "build/src/libgte21.o": 0.137, + "build/src/libgte22.o": 0.086, + "build/src/libgte23.o": 0.078, + "build/src/libgte24.o": 0.097, + "build/src/libgte25.o": 0.096, + "build/src/libgte26.o": 0.094, + "build/src/libgte27.o": 0.094, + "build/src/libgte28.o": 0.135, + "build/src/libgte29.o": 0.09, + "build/src/libgte3.o": 0.079, + "build/src/libgte30.o": 0.075, + "build/src/libgte4.o": 0.1, + "build/src/libgte5.o": 0.119, + "build/src/libgte6.o": 0.102, + "build/src/libgte7.o": 0.092, + "build/src/libgte8.o": 0.1, + "build/src/libgte9.o": 0.091, + "build/src/libmcrd1.o": 0.123, + "build/src/libmcrd2.o": 0.08, + "build/src/libpad1.o": 0.1, + "build/src/libpad2.o": 0.117, + "build/src/sgap.o": 0.11, + "build/src/sgap_2.o": 0.076, + "build/src/sgap_3.o": 0.105, + "build/src/sgap_4.o": 0.092, + "build/src/sgap_5.o": 0.091, + "build/src/sgap_6.o": 0.077, + "build/src/sgap_8.o": 0.108, + "build/src/snd1.o": 0.1, + "build/src/snd10.o": 0.099, + "build/src/snd11.o": 0.107, + "build/src/snd12.o": 0.091, + "build/src/snd2.o": 0.118, + "build/src/snd3.o": 0.158, + "build/src/snd4.o": 0.148, + "build/src/snd5.o": 0.088, + "build/src/snd6.o": 0.102, + "build/src/snd7.o": 0.095, + "build/src/snd8.o": 0.137, + "build/src/snd9.o": 0.098, + "build/src/ov_SC03_014/ov_SC03_014.o": 0.23, + "build/src/ov_SC03_014/ov_SC03_014_after.o": 0.737, + "build/src/ov_SC03_014/ov_SC03_014_jr_8012ACE0.o": 0.621, + "build/src/ov_SC03_014/ov_SC03_014_jr_80135888.o": 0.084, + "build/src/ov_SC03_014/ov_SC03_014_jr_80135A4C.o": 0.1, + "build/src/ov_SC03_014/ov_SC03_014_jr_80135D20.o": 0.188, + "build/src/ov_SC03_014/ov_SC03_014_jr_801380E0.o": 0.246, + "build/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.o": 0.188, + "build/src/ov_SC03_014/ov_SC03_014_jr_8013F350.o": 0.127, + "build/src/ov_SC03_014/ov_SC03_014_jr_8013FFD8.o": 0.103, + "build/src/ov_SC03_014/ov_SC03_014_jr_80140608.o": 0.306, + "build/src/ov_SC03_014/ov_SC03_014_jr_8015444C.o": 0.135, + "build/src/ov_SC03_014/ov_SC03_014_jr_80154C24.o": 0.25, + "build/src/ov_SC03_014/ov_SC03_014_jr_801588CC.o": 0.124, + "build/src/ov_SC03_014/ov_SC03_014_jr_80159C84.o": 0.113, + "build/src/ov_SC03_014/ov_SC03_014_jr_8015A3C8.o": 0.119, + "build/src/ov_SC03_014/ov_SC03_014_jr_8015AE2C.o": 0.165, + "build/src/ov_SC03_014/ov_SC03_014_jr_8015C32C.o": 0.71, + "build/src/ov_SC03_014/ov_SC03_014_jr_8016AB6C.o": 0.495, + "build/src/ov_SC03_014/ov_SC03_014_jr_80171B4C.o": 0.144, + "build/src/ov_SC03_014/ov_SC03_014_jr_801734BC.o": 0.307, + "build/src/ov_SC03_014/ov_SC03_014_jr_801789AC.o": 0.125, + "build/src/ov_SC03_014/ov_SC03_014_jr_80178D40.o": 0.14, + "build/src/ov_SC03_014/ov_SC03_014_jr_8017A4AC.o": 0.122, + "build/src/ov_SC03_014/ov_SC03_014_jr_8017AE2C.o": 0.273, + "build/src/ov_SC03_014/ov_SC03_014_jr_8017EB7C.o": 0.345, + "build/src/ov_SC03_014/ov_SC03_014_jr_80184440.o": 0.095, + "build/src/ov_SC03_014/ov_SC03_014_jr_801848E4.o": 0.425, + "build/src/ov_SC03_014/ov_SC03_014_o0b.o": 0.084, + "build/src/ov_SC03_014/ov_SC03_014_o0c.o": 0.106, + "build/src/ov_SC03_014/ov_SC03_014_o0d.o": 0.1, + "build/src/ov_SC03_014/ov_SC03_014_o0e.o": 0.132, + "build/src/ov_SC03_015/ov_SC03_015.o": 0.191, + "build/src/ov_SC03_015/ov_SC03_015_after.o": 0.712, + "build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.645, + "build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.089, + "build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.092, + "build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.167, + "build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.257, + "build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.161, + "build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.151, + "build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.118, + "build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.294, + "build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.133, + "build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.287, + "build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.165, + "build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.183, + "build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.11, + "build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.191, + "build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.75, + "build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.441, + "build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.149, + "build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.296, + "build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.137, + "build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.153, + "build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.107, + "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.303, + "build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.087, + "build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.401, + "build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.108, + "build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.112, + "build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.121, + "build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.105, + "build/src/ov_SC04_011/ov_SC04_011.o": 0.317, + "build/src/ov_SC04_011/ov_SC04_011_after.o": 0.753, + "build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.63, + "build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.067, + "build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.144, + "build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.215, + "build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.255, + "build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.203, + "build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.149, + "build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.114, + "build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.31, + "build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.16, + "build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.255, + "build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.151, + "build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.17, + "build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.15, + "build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.166, + "build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.688, + "build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.34, + "build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.137, + "build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.287, + "build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.118, + "build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.177, + "build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.1, + "build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.182, + "build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.937, + "build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.08, + "build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.137 }, "ok": true, - "seconds": 4.1 + "seconds": 4.6 } diff --git a/.run/P36/delever/ledger.jsonl b/.run/P36/delever/ledger.jsonl index b95e8c3145..65dcea1253 100644 --- a/.run/P36/delever/ledger.jsonl +++ b/.run/P36/delever/ledger.jsonl @@ -29081,3 +29081,5 @@ {"ts": "2026-09-10 21:27:46", "label": "s104_d7", "rung": "E", "calib": {"head": "14210a8e6", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_091/ov_SC03_091_jr_8018326C.c", "fn": "func_80186F1C", "addr": 2149084956, "aliases": null, "header": false, "includers": 0, "nhash_before": "9a97ea23f7d2f14217beaebe2ff4750354085f3b", "nhash_after": "2649e1b5d8751519b152a91b01cffd33e6a3e5f7", "source": "propagate:src/ov_SC02_026/ov_SC02_026_jr_8017C180.c:func_80181B18", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.27, "objects": ["build/src/ov_SC03_091/ov_SC03_091_jr_8018326C.o"], "before_text": "void func_80186F1C(s32 a0) {\n s32 state; /* $s0 */\n register s32 ent __asm__(\"$17\"); /* $s1 */ // !FAKE: pin $17 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n s32 sub;\n s32 t;\n s32 v;\n s32 cnt;\n\n ent = a0;\n __asm__ volatile(\"\" ::: \"$4\"); // !FAKE: barrier \u2014 NEEDED DIFFERS (P36 rung B tus9)\n state = *(u16 *)(ent + 0x34);\n\n switch (state) {\n case 0:\n if (0x10000 < ((s32 (*)(s32))func_8012BE54)(ent)) {\n return;\n }\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8012E88C((u8 *)ent);\n func_8012B21C((void *)ent);\n return;\n case 1:\n if ((((s32 (*)(s32))func_8012CBCC)(ent) & 0x2000) == 0) {\n return;\n }\n *(s32 *)(ent + 0x1C) = state;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8002D4C8(0x703, 0);\n /* fallthrough */\n case 2:\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n v = (t * 0x1c00 >> 12) + 0x400;\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n {\n s32 w = 0x3000 - (t * 0x2800 >> 12);\n *(s16 *)(sub + 0x1A) = w;\n }\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (cnt < 9) {\n return;\n }\n *(s32 *)(ent + 0x1C) = 1;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n return;\n case 3:\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n {\n register s32 lo __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n lo = (t << 12) >> 12;\n v = 0x2000 - lo;\n }\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n {\n s32 w = ((t * 0x800) >> 12) + 0x800;\n *(s16 *)(sub + 0x1A) = w;\n }\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (8 < cnt) {\n *(u16 *)(ent + 2) = 1;\n }\n return;\n }\n}\n", "after_text": "void func_80186F1C(s32 ent) {\n s32 state;\n s32 t; /* shared by cases 2 and 3; sub, v and cnt are per case (P36 S104 d7) */\n\n state = *(u16 *)(ent + 0x34);\n\n switch (state) {\n case 0:\n if (0x10000 < ((s32 (*)(s32))func_8012BE54)(ent)) {\n return;\n }\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8012E88C((u8 *)ent);\n func_8012B21C((void *)ent);\n return;\n case 1:\n if ((((s32 (*)(s32))func_8012CBCC)(ent) & 0x2000) == 0) {\n return;\n }\n *(s32 *)(ent + 0x1C) = state;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8002D4C8(0x703, 0);\n /* fallthrough */\n case 2: {\n s32 sub;\n s32 v;\n s32 cnt;\n\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n v = (t * 0x1c00 >> 12) + 0x400;\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n *(s16 *)(sub + 0x1A) = 0x3000 - (t * 0x2800 >> 12);\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (cnt < 9) {\n return;\n }\n *(s32 *)(ent + 0x1C) = 1;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n return;\n }\n case 3: {\n s32 sub;\n s32 v;\n s32 cnt;\n\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n v = 0x2000 - ((t << 12) >> 12);\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n *(s16 *)(sub + 0x1A) = (t * 0x800 >> 12) + 0x800;\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (8 < cnt) {\n *(u16 *)(ent + 2) = 1;\n }\n return;\n }\n }\n}\n"} {"ts": "2026-09-10 21:27:47", "label": "s104_d7", "rung": "E", "calib": {"head": "14210a8e6", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_090/ov_SC03_090_jr_8017CA80.c", "fn": "func_80186074", "addr": 2149081204, "aliases": null, "header": false, "includers": 0, "nhash_before": "9a97ea23f7d2f14217beaebe2ff4750354085f3b", "nhash_after": "2649e1b5d8751519b152a91b01cffd33e6a3e5f7", "source": "propagate:src/ov_SC02_026/ov_SC02_026_jr_8017C180.c:func_80181B18", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.501, "objects": ["build/src/ov_SC03_090/ov_SC03_090_jr_8017CA80.o"], "before_text": "void func_80186074(s32 a0) {\n s32 state; /* $s0 */\n register s32 ent __asm__(\"$17\"); /* $s1 */ // !FAKE: pin $17 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n s32 sub;\n s32 t;\n s32 v;\n s32 cnt;\n\n ent = a0;\n __asm__ volatile(\"\" ::: \"$4\"); // !FAKE: barrier \u2014 NEEDED DIFFERS (P36 rung B tus9)\n state = *(u16 *)(ent + 0x34);\n\n switch (state) {\n case 0:\n if (0x10000 < ((s32 (*)(s32))func_8012BE54)(ent)) {\n return;\n }\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8012E88C((u8 *)ent);\n func_8012B21C((void *)ent);\n return;\n case 1:\n if ((((s32 (*)(s32))func_8012CBCC)(ent) & 0x2000) == 0) {\n return;\n }\n *(s32 *)(ent + 0x1C) = state;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8002D4C8(0x703, 0);\n /* fallthrough */\n case 2:\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n v = (t * 0x1c00 >> 12) + 0x400;\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n {\n s32 w = 0x3000 - (t * 0x2800 >> 12);\n *(s16 *)(sub + 0x1A) = w;\n }\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (cnt < 9) {\n return;\n }\n *(s32 *)(ent + 0x1C) = 1;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n return;\n case 3:\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n {\n register s32 lo __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n lo = (t << 12) >> 12;\n v = 0x2000 - lo;\n }\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n {\n s32 w = ((t * 0x800) >> 12) + 0x800;\n *(s16 *)(sub + 0x1A) = w;\n }\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (8 < cnt) {\n *(u16 *)(ent + 2) = 1;\n }\n return;\n }\n}\n", "after_text": "void func_80186074(s32 ent) {\n s32 state;\n s32 t; /* shared by cases 2 and 3; sub, v and cnt are per case (P36 S104 d7) */\n\n state = *(u16 *)(ent + 0x34);\n\n switch (state) {\n case 0:\n if (0x10000 < ((s32 (*)(s32))func_8012BE54)(ent)) {\n return;\n }\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8012E88C((u8 *)ent);\n func_8012B21C((void *)ent);\n return;\n case 1:\n if ((((s32 (*)(s32))func_8012CBCC)(ent) & 0x2000) == 0) {\n return;\n }\n *(s32 *)(ent + 0x1C) = state;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8002D4C8(0x703, 0);\n /* fallthrough */\n case 2: {\n s32 sub;\n s32 v;\n s32 cnt;\n\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n v = (t * 0x1c00 >> 12) + 0x400;\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n *(s16 *)(sub + 0x1A) = 0x3000 - (t * 0x2800 >> 12);\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (cnt < 9) {\n return;\n }\n *(s32 *)(ent + 0x1C) = 1;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n return;\n }\n case 3: {\n s32 sub;\n s32 v;\n s32 cnt;\n\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n v = 0x2000 - ((t << 12) >> 12);\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n *(s16 *)(sub + 0x1A) = (t * 0x800 >> 12) + 0x800;\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (8 < cnt) {\n *(u16 *)(ent + 2) = 1;\n }\n return;\n }\n }\n}\n"} {"ts": "2026-09-10 21:27:48", "label": "s104_d7", "rung": "E", "calib": {"head": "14210a8e6", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_098/ov_SC03_098_jr_8017D898.c", "fn": "func_801814FC", "addr": 2149061884, "aliases": null, "header": false, "includers": 0, "nhash_before": "9a97ea23f7d2f14217beaebe2ff4750354085f3b", "nhash_after": "2649e1b5d8751519b152a91b01cffd33e6a3e5f7", "source": "propagate:src/ov_SC02_026/ov_SC02_026_jr_8017C180.c:func_80181B18", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.346, "objects": ["build/src/ov_SC03_098/ov_SC03_098_jr_8017D898.o"], "before_text": "void func_801814FC(s32 a0) {\n s32 state; /* $s0 */\n register s32 ent __asm__(\"$17\"); /* $s1 */ // !FAKE: pin $17 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n s32 sub;\n s32 t;\n s32 v;\n s32 cnt;\n\n ent = a0;\n __asm__ volatile(\"\" ::: \"$4\"); // !FAKE: barrier \u2014 NEEDED DIFFERS (P36 rung B tus9)\n state = *(u16 *)(ent + 0x34);\n\n switch (state) {\n case 0:\n if (0x10000 < ((s32 (*)(s32))func_8012BE54)(ent)) {\n return;\n }\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8012E88C((u8 *)ent);\n func_8012B21C((void *)ent);\n return;\n case 1:\n if ((((s32 (*)(s32))func_8012CBCC)(ent) & 0x2000) == 0) {\n return;\n }\n *(s32 *)(ent + 0x1C) = state;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8002D4C8(0x703, 0);\n /* fallthrough */\n case 2:\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n v = (t * 0x1c00 >> 12) + 0x400;\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n {\n s32 w = 0x3000 - (t * 0x2800 >> 12);\n *(s16 *)(sub + 0x1A) = w;\n }\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (cnt < 9) {\n return;\n }\n *(s32 *)(ent + 0x1C) = 1;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n return;\n case 3:\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n {\n register s32 lo __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n lo = (t << 12) >> 12;\n v = 0x2000 - lo;\n }\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n {\n s32 w = ((t * 0x800) >> 12) + 0x800;\n *(s16 *)(sub + 0x1A) = w;\n }\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (8 < cnt) {\n *(u16 *)(ent + 2) = 1;\n }\n return;\n }\n}\n", "after_text": "void func_801814FC(s32 ent) {\n s32 state;\n s32 t; /* shared by cases 2 and 3; sub, v and cnt are per case (P36 S104 d7) */\n\n state = *(u16 *)(ent + 0x34);\n\n switch (state) {\n case 0:\n if (0x10000 < ((s32 (*)(s32))func_8012BE54)(ent)) {\n return;\n }\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8012E88C((u8 *)ent);\n func_8012B21C((void *)ent);\n return;\n case 1:\n if ((((s32 (*)(s32))func_8012CBCC)(ent) & 0x2000) == 0) {\n return;\n }\n *(s32 *)(ent + 0x1C) = state;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8002D4C8(0x703, 0);\n /* fallthrough */\n case 2: {\n s32 sub;\n s32 v;\n s32 cnt;\n\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n v = (t * 0x1c00 >> 12) + 0x400;\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n *(s16 *)(sub + 0x1A) = 0x3000 - (t * 0x2800 >> 12);\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (cnt < 9) {\n return;\n }\n *(s32 *)(ent + 0x1C) = 1;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n return;\n }\n case 3: {\n s32 sub;\n s32 v;\n s32 cnt;\n\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n v = 0x2000 - ((t << 12) >> 12);\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n *(s16 *)(sub + 0x1A) = (t * 0x800 >> 12) + 0x800;\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (8 < cnt) {\n *(u16 *)(ent + 2) = 1;\n }\n return;\n }\n }\n}\n"} +{"ts": "2026-09-10 21:29:00", "label": "s104_d7", "rung": "E", "calib": {"head": "f2c25f372", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_094/ov_SC03_094_jr_8017BEBC.c", "fn": "func_80180CF4", "addr": 2149059828, "aliases": null, "header": false, "includers": 0, "nhash_before": "12fe4496e48d0ed6b5b39f7a67e76467a5782689", "nhash_after": "2649e1b5d8751519b152a91b01cffd33e6a3e5f7", "source": ".run/P36/agents/ov_SC02_026__func_80181B18/scratch/ports/func_80180CF4.c", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.316, "objects": ["build/src/ov_SC03_094/ov_SC03_094_jr_8017BEBC.o"], "before_text": "void func_80180CF4(s32 a0) {\n s32 state; /* $s0 */\n register s32 ent __asm__(\"$17\"); /* $s1 */ // !FAKE: pin $17 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n s32 sub;\n s32 t;\n s32 v;\n s32 cnt;\n\n ent = a0;\n __asm__ volatile(\"\" ::: \"$4\"); // !FAKE: barrier \u2014 NEEDED DIFFERS (P36 rung B tus9)\n state = *(u16 *)(ent + 0x34);\n\n switch (state) {\n case 0:\n if (0x10000 < ((s32 (*)(s32))func_8012BE54)(ent)) {\n return;\n }\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n ((void (*)(u8 *))func_8012E88C)((u8 *)ent);\n func_8012B21C((void *)ent);\n return;\n case 1:\n if ((((s32 (*)(s32))func_8012CBCC)(ent) & 0x2000) == 0) {\n return;\n }\n *(s32 *)(ent + 0x1C) = state;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8002D4C8(0x703, 0);\n /* fallthrough */\n case 2:\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n v = (t * 0x1c00 >> 12) + 0x400;\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n {\n s32 w = 0x3000 - (t * 0x2800 >> 12);\n *(s16 *)(sub + 0x1A) = w;\n }\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (cnt < 9) {\n return;\n }\n *(s32 *)(ent + 0x1C) = 1;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n return;\n case 3:\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n {\n register s32 lo __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n lo = (t << 12) >> 12;\n v = 0x2000 - lo;\n }\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n {\n s32 w = ((t * 0x800) >> 12) + 0x800;\n *(s16 *)(sub + 0x1A) = w;\n }\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (8 < cnt) {\n *(u16 *)(ent + 2) = 1;\n }\n return;\n }\n}\n", "after_text": "void func_80180CF4(s32 ent) {\n s32 state;\n s32 t; /* shared by cases 2 and 3; sub, v and cnt are per case (P36 S104 d7) */\n\n state = *(u16 *)(ent + 0x34);\n\n switch (state) {\n case 0:\n if (0x10000 < ((s32 (*)(s32))func_8012BE54)(ent)) {\n return;\n }\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8012E88C((u8 *)ent);\n func_8012B21C((void *)ent);\n return;\n case 1:\n if ((((s32 (*)(s32))func_8012CBCC)(ent) & 0x2000) == 0) {\n return;\n }\n *(s32 *)(ent + 0x1C) = state;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8002D4C8(0x703, 0);\n /* fallthrough */\n case 2: {\n s32 sub;\n s32 v;\n s32 cnt;\n\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n v = (t * 0x1c00 >> 12) + 0x400;\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n *(s16 *)(sub + 0x1A) = 0x3000 - (t * 0x2800 >> 12);\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (cnt < 9) {\n return;\n }\n *(s32 *)(ent + 0x1C) = 1;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n return;\n }\n case 3: {\n s32 sub;\n s32 v;\n s32 cnt;\n\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n v = 0x2000 - ((t << 12) >> 12);\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n *(s16 *)(sub + 0x1A) = (t * 0x800 >> 12) + 0x800;\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (8 < cnt) {\n *(u16 *)(ent + 2) = 1;\n }\n return;\n }\n }\n}\n"} +{"ts": "2026-09-10 21:29:26", "label": "s104_d7", "rung": "E", "calib": {"head": "f2c25f372", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_035/ov_SC02_035_jr_8017BEBC.c", "fn": "func_8017F96C", "addr": 2149054828, "aliases": null, "header": false, "includers": 0, "nhash_before": "12fe4496e48d0ed6b5b39f7a67e76467a5782689", "nhash_after": "2649e1b5d8751519b152a91b01cffd33e6a3e5f7", "source": "propagate:src/ov_SC03_094/ov_SC03_094_jr_8017BEBC.c:func_80180CF4", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.361, "objects": ["build/src/ov_SC02_035/ov_SC02_035_jr_8017BEBC.o"], "before_text": "void func_8017F96C(s32 a0) {\n s32 state; /* $s0 */\n register s32 ent __asm__(\"$17\"); /* $s1 */ // !FAKE: pin $17 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n s32 sub;\n s32 t;\n s32 v;\n s32 cnt;\n\n ent = a0;\n __asm__ volatile(\"\" ::: \"$4\"); // !FAKE: barrier \u2014 NEEDED DIFFERS (P36 rung B tus9)\n state = *(u16 *)(ent + 0x34);\n\n switch (state) {\n case 0:\n if (0x10000 < ((s32 (*)(s32))func_8012BE54)(ent)) {\n return;\n }\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n ((void (*)(u8 *))func_8012E88C)((u8 *)ent);\n func_8012B21C((void *)ent);\n return;\n case 1:\n if ((((s32 (*)(s32))func_8012CBCC)(ent) & 0x2000) == 0) {\n return;\n }\n *(s32 *)(ent + 0x1C) = state;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8002D4C8(0x703, 0);\n /* fallthrough */\n case 2:\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n v = (t * 0x1c00 >> 12) + 0x400;\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n {\n s32 w = 0x3000 - (t * 0x2800 >> 12);\n *(s16 *)(sub + 0x1A) = w;\n }\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (cnt < 9) {\n return;\n }\n *(s32 *)(ent + 0x1C) = 1;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n return;\n case 3:\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n {\n register s32 lo __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n lo = (t << 12) >> 12;\n v = 0x2000 - lo;\n }\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n {\n s32 w = ((t * 0x800) >> 12) + 0x800;\n *(s16 *)(sub + 0x1A) = w;\n }\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (8 < cnt) {\n *(u16 *)(ent + 2) = 1;\n }\n return;\n }\n}\n", "after_text": "void func_8017F96C(s32 ent) {\n s32 state;\n s32 t; /* shared by cases 2 and 3; sub, v and cnt are per case (P36 S104 d7) */\n\n state = *(u16 *)(ent + 0x34);\n\n switch (state) {\n case 0:\n if (0x10000 < ((s32 (*)(s32))func_8012BE54)(ent)) {\n return;\n }\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8012E88C((u8 *)ent);\n func_8012B21C((void *)ent);\n return;\n case 1:\n if ((((s32 (*)(s32))func_8012CBCC)(ent) & 0x2000) == 0) {\n return;\n }\n *(s32 *)(ent + 0x1C) = state;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n func_8002D4C8(0x703, 0);\n /* fallthrough */\n case 2: {\n s32 sub;\n s32 v;\n s32 cnt;\n\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n v = (t * 0x1c00 >> 12) + 0x400;\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n *(s16 *)(sub + 0x1A) = 0x3000 - (t * 0x2800 >> 12);\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (cnt < 9) {\n return;\n }\n *(s32 *)(ent + 0x1C) = 1;\n *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1;\n return;\n }\n case 3: {\n s32 sub;\n s32 v;\n s32 cnt;\n\n sub = *(s32 *)(ent + 0x20);\n t = func_8004787C(*(s32 *)(ent + 0x1C) << 7);\n v = 0x2000 - ((t << 12) >> 12);\n *(s16 *)(sub + 0x1C) = v;\n *(s16 *)(sub + 0x18) = v;\n *(s16 *)(sub + 0x1A) = (t * 0x800 >> 12) + 0x800;\n cnt = *(s32 *)(ent + 0x1C) + 1;\n *(s32 *)(ent + 0x1C) = cnt;\n if (8 < cnt) {\n *(u16 *)(ent + 2) = 1;\n }\n return;\n }\n }\n}\n"} diff --git a/src/ov_SC02_035/ov_SC02_035_jr_8017BEBC.c b/src/ov_SC02_035/ov_SC02_035_jr_8017BEBC.c index 3f703707ad..da069e97a0 100644 --- a/src/ov_SC02_035/ov_SC02_035_jr_8017BEBC.c +++ b/src/ov_SC02_035/ov_SC02_035_jr_8017BEBC.c @@ -4415,16 +4415,10 @@ extern void func_8012B21C(void *a0); extern s32 func_8004787C(s32 a0); extern void func_8002D4C8(s32 a0, s32 a1); -void func_8017F96C(s32 a0) { - s32 state; /* $s0 */ - register s32 ent __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus9) - s32 sub; - s32 t; - s32 v; - s32 cnt; +void func_8017F96C(s32 ent) { + s32 state; + s32 t; /* shared by cases 2 and 3; sub, v and cnt are per case (P36 S104 d7) */ - ent = a0; - __asm__ volatile("" ::: "$4"); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus9) state = *(u16 *)(ent + 0x34); switch (state) { @@ -4433,7 +4427,7 @@ void func_8017F96C(s32 a0) { return; } *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1; - ((void (*)(u8 *))func_8012E88C)((u8 *)ent); + func_8012E88C((u8 *)ent); func_8012B21C((void *)ent); return; case 1: @@ -4444,16 +4438,17 @@ void func_8017F96C(s32 a0) { *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1; func_8002D4C8(0x703, 0); /* fallthrough */ - case 2: + case 2: { + s32 sub; + s32 v; + s32 cnt; + sub = *(s32 *)(ent + 0x20); t = func_8004787C(*(s32 *)(ent + 0x1C) << 7); v = (t * 0x1c00 >> 12) + 0x400; *(s16 *)(sub + 0x1C) = v; *(s16 *)(sub + 0x18) = v; - { - s32 w = 0x3000 - (t * 0x2800 >> 12); - *(s16 *)(sub + 0x1A) = w; - } + *(s16 *)(sub + 0x1A) = 0x3000 - (t * 0x2800 >> 12); cnt = *(s32 *)(ent + 0x1C) + 1; *(s32 *)(ent + 0x1C) = cnt; if (cnt < 9) { @@ -4462,20 +4457,18 @@ void func_8017F96C(s32 a0) { *(s32 *)(ent + 0x1C) = 1; *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1; return; - case 3: + } + case 3: { + s32 sub; + s32 v; + s32 cnt; + sub = *(s32 *)(ent + 0x20); t = func_8004787C(*(s32 *)(ent + 0x1C) << 7); - { - register s32 lo __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus9) - lo = (t << 12) >> 12; - v = 0x2000 - lo; - } + v = 0x2000 - ((t << 12) >> 12); *(s16 *)(sub + 0x1C) = v; *(s16 *)(sub + 0x18) = v; - { - s32 w = ((t * 0x800) >> 12) + 0x800; - *(s16 *)(sub + 0x1A) = w; - } + *(s16 *)(sub + 0x1A) = (t * 0x800 >> 12) + 0x800; cnt = *(s32 *)(ent + 0x1C) + 1; *(s32 *)(ent + 0x1C) = cnt; if (8 < cnt) { @@ -4483,6 +4476,7 @@ void func_8017F96C(s32 a0) { } return; } + } } diff --git a/src/ov_SC03_094/ov_SC03_094_jr_8017BEBC.c b/src/ov_SC03_094/ov_SC03_094_jr_8017BEBC.c index ff29fb3fbb..277768903c 100644 --- a/src/ov_SC03_094/ov_SC03_094_jr_8017BEBC.c +++ b/src/ov_SC03_094/ov_SC03_094_jr_8017BEBC.c @@ -5224,16 +5224,10 @@ extern void func_8012B21C(void *a0); extern s32 func_8004787C(s32 a0); extern void func_8002D4C8(s32 a0, s32 a1); -void func_80180CF4(s32 a0) { - s32 state; /* $s0 */ - register s32 ent __asm__("$17"); /* $s1 */ // !FAKE: pin $17 — NEEDED DIFFERS (P36 rung B tus9) - s32 sub; - s32 t; - s32 v; - s32 cnt; +void func_80180CF4(s32 ent) { + s32 state; + s32 t; /* shared by cases 2 and 3; sub, v and cnt are per case (P36 S104 d7) */ - ent = a0; - __asm__ volatile("" ::: "$4"); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus9) state = *(u16 *)(ent + 0x34); switch (state) { @@ -5242,7 +5236,7 @@ void func_80180CF4(s32 a0) { return; } *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1; - ((void (*)(u8 *))func_8012E88C)((u8 *)ent); + func_8012E88C((u8 *)ent); func_8012B21C((void *)ent); return; case 1: @@ -5253,16 +5247,17 @@ void func_80180CF4(s32 a0) { *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1; func_8002D4C8(0x703, 0); /* fallthrough */ - case 2: + case 2: { + s32 sub; + s32 v; + s32 cnt; + sub = *(s32 *)(ent + 0x20); t = func_8004787C(*(s32 *)(ent + 0x1C) << 7); v = (t * 0x1c00 >> 12) + 0x400; *(s16 *)(sub + 0x1C) = v; *(s16 *)(sub + 0x18) = v; - { - s32 w = 0x3000 - (t * 0x2800 >> 12); - *(s16 *)(sub + 0x1A) = w; - } + *(s16 *)(sub + 0x1A) = 0x3000 - (t * 0x2800 >> 12); cnt = *(s32 *)(ent + 0x1C) + 1; *(s32 *)(ent + 0x1C) = cnt; if (cnt < 9) { @@ -5271,20 +5266,18 @@ void func_80180CF4(s32 a0) { *(s32 *)(ent + 0x1C) = 1; *(u16 *)(ent + 0x34) = *(u16 *)(ent + 0x34) + 1; return; - case 3: + } + case 3: { + s32 sub; + s32 v; + s32 cnt; + sub = *(s32 *)(ent + 0x20); t = func_8004787C(*(s32 *)(ent + 0x1C) << 7); - { - register s32 lo __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus9) - lo = (t << 12) >> 12; - v = 0x2000 - lo; - } + v = 0x2000 - ((t << 12) >> 12); *(s16 *)(sub + 0x1C) = v; *(s16 *)(sub + 0x18) = v; - { - s32 w = ((t * 0x800) >> 12) + 0x800; - *(s16 *)(sub + 0x1A) = w; - } + *(s16 *)(sub + 0x1A) = (t * 0x800 >> 12) + 0x800; cnt = *(s32 *)(ent + 0x1C) + 1; *(s32 *)(ent + 0x1C) = cnt; if (8 < cnt) { @@ -5292,6 +5285,7 @@ void func_80180CF4(s32 a0) { } return; } + } }