diff --git a/.run/P36/delever/calibration.json b/.run/P36/delever/calibration.json index 81e813fd92..63f414c1c6 100644 --- a/.run/P36/delever/calibration.json +++ b/.run/P36/delever/calibration.json @@ -1,5 +1,5 @@ { - "head": "b6b1bbc1d", + "head": "0a272b4ce", "stamp": "15956e4a96c4", "generated": "2026-09-11 04:51", "aliases": [ @@ -21,206 +21,206 @@ "main": { "objects": 85, "identical": 85, - "seconds": 6.307999999999998, + "seconds": 6.2620000000000005, "mean_s": 0.074 }, "ov_SC03_014": { "objects": 32, "identical": 32, - "seconds": 4.320000000000001, - "mean_s": 0.135 + "seconds": 4.4, + "mean_s": 0.138 }, "ov_SC03_015": { "objects": 32, "identical": 32, - "seconds": 4.204, + "seconds": 4.205, "mean_s": 0.131 }, "ov_SC04_011": { "objects": 28, "identical": 28, - "seconds": 3.6910000000000003, - "mean_s": 0.132 + "seconds": 3.648999999999999, + "mean_s": 0.13 } }, "per_object_seconds": { - "build/src/800.o": 0.679, - "build/src/800_b.o": 0.074, - "build/src/800_b_2.o": 0.265, - "build/src/800_b_o0a.o": 0.064, - "build/src/800_c.o": 0.172, - "build/src/800b2.o": 0.068, - "build/src/apicard1.o": 0.058, - "build/src/apicard2.o": 0.067, - "build/src/apicard3.o": 0.063, - "build/src/apicard4.o": 0.068, - "build/src/apicard5.o": 0.059, - "build/src/apicard6.o": 0.056, - "build/src/apicard7.o": 0.066, - "build/src/boot.o": 0.098, - "build/src/gap.o": 0.076, - "build/src/libapi1.o": 0.067, - "build/src/libapi2.o": 0.057, - "build/src/libc2_1.o": 0.059, - "build/src/libc2_2.o": 0.059, - "build/src/libcd1.o": 0.061, - "build/src/libcd2.o": 0.056, - "build/src/libetc.o": 0.066, - "build/src/libgpu.o": 0.067, - "build/src/libgpu2.o": 0.062, - "build/src/libgs1.o": 0.058, + "build/src/800.o": 0.662, + "build/src/800_b.o": 0.073, + "build/src/800_b_2.o": 0.3, + "build/src/800_b_o0a.o": 0.07, + "build/src/800_c.o": 0.181, + "build/src/800b2.o": 0.073, + "build/src/apicard1.o": 0.056, + "build/src/apicard2.o": 0.064, + "build/src/apicard3.o": 0.057, + "build/src/apicard4.o": 0.067, + "build/src/apicard5.o": 0.063, + "build/src/apicard6.o": 0.071, + "build/src/apicard7.o": 0.065, + "build/src/boot.o": 0.103, + "build/src/gap.o": 0.06, + "build/src/libapi1.o": 0.064, + "build/src/libapi2.o": 0.054, + "build/src/libc2_1.o": 0.055, + "build/src/libc2_2.o": 0.06, + "build/src/libcd1.o": 0.056, + "build/src/libcd2.o": 0.059, + "build/src/libetc.o": 0.063, + "build/src/libgpu.o": 0.059, + "build/src/libgpu2.o": 0.069, + "build/src/libgs1.o": 0.07, "build/src/libgs2.o": 0.057, - "build/src/libgs3.o": 0.058, - "build/src/libgs4.o": 0.059, - "build/src/libgs5.o": 0.057, - "build/src/libgs6.o": 0.071, - "build/src/libgs7.o": 0.057, - "build/src/libgs8.o": 0.05, - "build/src/libgte1.o": 0.059, - "build/src/libgte10.o": 0.061, - "build/src/libgte11.o": 0.062, - "build/src/libgte12.o": 0.071, + "build/src/libgs3.o": 0.055, + "build/src/libgs4.o": 0.053, + "build/src/libgs5.o": 0.053, + "build/src/libgs6.o": 0.072, + "build/src/libgs7.o": 0.054, + "build/src/libgs8.o": 0.06, + "build/src/libgte1.o": 0.062, + "build/src/libgte10.o": 0.057, + "build/src/libgte11.o": 0.051, + "build/src/libgte12.o": 0.063, "build/src/libgte13.o": 0.058, - "build/src/libgte14.o": 0.061, - "build/src/libgte15.o": 0.085, - "build/src/libgte16.o": 0.067, - "build/src/libgte17.o": 0.054, - "build/src/libgte18.o": 0.062, - "build/src/libgte19.o": 0.064, - "build/src/libgte2.o": 0.06, - "build/src/libgte20.o": 0.06, - "build/src/libgte21.o": 0.055, - "build/src/libgte22.o": 0.061, - "build/src/libgte23.o": 0.065, - "build/src/libgte24.o": 0.064, - "build/src/libgte25.o": 0.071, - "build/src/libgte26.o": 0.061, - "build/src/libgte27.o": 0.07, - "build/src/libgte28.o": 0.059, - "build/src/libgte29.o": 0.064, - "build/src/libgte3.o": 0.067, + "build/src/libgte14.o": 0.068, + "build/src/libgte15.o": 0.055, + "build/src/libgte16.o": 0.054, + "build/src/libgte17.o": 0.065, + "build/src/libgte18.o": 0.064, + "build/src/libgte19.o": 0.054, + "build/src/libgte2.o": 0.058, + "build/src/libgte20.o": 0.056, + "build/src/libgte21.o": 0.063, + "build/src/libgte22.o": 0.059, + "build/src/libgte23.o": 0.059, + "build/src/libgte24.o": 0.06, + "build/src/libgte25.o": 0.067, + "build/src/libgte26.o": 0.064, + "build/src/libgte27.o": 0.061, + "build/src/libgte28.o": 0.064, + "build/src/libgte29.o": 0.054, + "build/src/libgte3.o": 0.062, "build/src/libgte30.o": 0.061, - "build/src/libgte4.o": 0.06, - "build/src/libgte5.o": 0.06, - "build/src/libgte6.o": 0.063, - "build/src/libgte7.o": 0.065, - "build/src/libgte8.o": 0.066, - "build/src/libgte9.o": 0.059, - "build/src/libmcrd1.o": 0.068, - "build/src/libmcrd2.o": 0.06, - "build/src/libpad1.o": 0.076, + "build/src/libgte4.o": 0.066, + "build/src/libgte5.o": 0.059, + "build/src/libgte6.o": 0.062, + "build/src/libgte7.o": 0.063, + "build/src/libgte8.o": 0.062, + "build/src/libgte9.o": 0.056, + "build/src/libmcrd1.o": 0.072, + "build/src/libmcrd2.o": 0.063, + "build/src/libpad1.o": 0.066, "build/src/libpad2.o": 0.07, - "build/src/sgap.o": 0.067, - "build/src/sgap_2.o": 0.064, - "build/src/sgap_3.o": 0.048, - "build/src/sgap_4.o": 0.062, - "build/src/sgap_5.o": 0.062, - "build/src/sgap_6.o": 0.058, - "build/src/sgap_8.o": 0.074, - "build/src/snd1.o": 0.064, - "build/src/snd10.o": 0.064, + "build/src/sgap.o": 0.064, + "build/src/sgap_2.o": 0.078, + "build/src/sgap_3.o": 0.054, + "build/src/sgap_4.o": 0.071, + "build/src/sgap_5.o": 0.058, + "build/src/sgap_6.o": 0.071, + "build/src/sgap_8.o": 0.072, + "build/src/snd1.o": 0.069, + "build/src/snd10.o": 0.053, "build/src/snd11.o": 0.064, - "build/src/snd12.o": 0.055, - "build/src/snd2.o": 0.068, - "build/src/snd3.o": 0.062, - "build/src/snd4.o": 0.063, - "build/src/snd5.o": 0.059, - "build/src/snd6.o": 0.068, - "build/src/snd7.o": 0.058, - "build/src/snd8.o": 0.062, - "build/src/snd9.o": 0.063, - "build/src/ov_SC03_014/ov_SC03_014.o": 0.124, - "build/src/ov_SC03_014/ov_SC03_014_after.o": 0.461, - "build/src/ov_SC03_014/ov_SC03_014_jr_8012ACE0.o": 0.366, - "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.057, - "build/src/ov_SC03_014/ov_SC03_014_jr_80135D20.o": 0.112, - "build/src/ov_SC03_014/ov_SC03_014_jr_801380E0.o": 0.156, - "build/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.o": 0.111, - "build/src/ov_SC03_014/ov_SC03_014_jr_8013F350.o": 0.076, - "build/src/ov_SC03_014/ov_SC03_014_jr_8013FFD8.o": 0.06, - "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.072, - "build/src/ov_SC03_014/ov_SC03_014_jr_80154C24.o": 0.142, - "build/src/ov_SC03_014/ov_SC03_014_jr_801588CC.o": 0.092, + "build/src/snd12.o": 0.061, + "build/src/snd2.o": 0.064, + "build/src/snd3.o": 0.06, + "build/src/snd4.o": 0.058, + "build/src/snd5.o": 0.057, + "build/src/snd6.o": 0.071, + "build/src/snd7.o": 0.056, + "build/src/snd8.o": 0.056, + "build/src/snd9.o": 0.069, + "build/src/ov_SC03_014/ov_SC03_014.o": 0.123, + "build/src/ov_SC03_014/ov_SC03_014_after.o": 0.498, + "build/src/ov_SC03_014/ov_SC03_014_jr_8012ACE0.o": 0.39, + "build/src/ov_SC03_014/ov_SC03_014_jr_80135888.o": 0.059, + "build/src/ov_SC03_014/ov_SC03_014_jr_80135A4C.o": 0.056, + "build/src/ov_SC03_014/ov_SC03_014_jr_80135D20.o": 0.126, + "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.098, + "build/src/ov_SC03_014/ov_SC03_014_jr_8013F350.o": 0.079, + "build/src/ov_SC03_014/ov_SC03_014_jr_8013FFD8.o": 0.07, + "build/src/ov_SC03_014/ov_SC03_014_jr_80140608.o": 0.181, + "build/src/ov_SC03_014/ov_SC03_014_jr_8015444C.o": 0.069, + "build/src/ov_SC03_014/ov_SC03_014_jr_80154C24.o": 0.169, + "build/src/ov_SC03_014/ov_SC03_014_jr_801588CC.o": 0.083, "build/src/ov_SC03_014/ov_SC03_014_jr_80159C84.o": 0.064, - "build/src/ov_SC03_014/ov_SC03_014_jr_8015A3C8.o": 0.064, - "build/src/ov_SC03_014/ov_SC03_014_jr_8015AE2C.o": 0.082, - "build/src/ov_SC03_014/ov_SC03_014_jr_8015C32C.o": 0.463, - "build/src/ov_SC03_014/ov_SC03_014_jr_8016AB6C.o": 0.236, - "build/src/ov_SC03_014/ov_SC03_014_jr_80171B4C.o": 0.092, - "build/src/ov_SC03_014/ov_SC03_014_jr_801734BC.o": 0.202, - "build/src/ov_SC03_014/ov_SC03_014_jr_801789AC.o": 0.052, - "build/src/ov_SC03_014/ov_SC03_014_jr_80178D40.o": 0.095, - "build/src/ov_SC03_014/ov_SC03_014_jr_8017A4AC.o": 0.068, - "build/src/ov_SC03_014/ov_SC03_014_jr_8017AE2C.o": 0.156, - "build/src/ov_SC03_014/ov_SC03_014_jr_8017EB7C.o": 0.158, - "build/src/ov_SC03_014/ov_SC03_014_jr_80184440.o": 0.046, - "build/src/ov_SC03_014/ov_SC03_014_jr_801848E4.o": 0.257, - "build/src/ov_SC03_014/ov_SC03_014_o0b.o": 0.046, - "build/src/ov_SC03_014/ov_SC03_014_o0c.o": 0.049, - "build/src/ov_SC03_014/ov_SC03_014_o0d.o": 0.052, - "build/src/ov_SC03_014/ov_SC03_014_o0e.o": 0.067, - "build/src/ov_SC03_015/ov_SC03_015.o": 0.117, - "build/src/ov_SC03_015/ov_SC03_015_after.o": 0.465, - "build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.351, - "build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.043, - "build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.043, - "build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.114, - "build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.123, - "build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.111, - "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.062, - "build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.16, - "build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.068, - "build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.154, - "build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.085, + "build/src/ov_SC03_014/ov_SC03_014_jr_8015A3C8.o": 0.072, + "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.453, + "build/src/ov_SC03_014/ov_SC03_014_jr_8016AB6C.o": 0.257, + "build/src/ov_SC03_014/ov_SC03_014_jr_80171B4C.o": 0.088, + "build/src/ov_SC03_014/ov_SC03_014_jr_801734BC.o": 0.177, + "build/src/ov_SC03_014/ov_SC03_014_jr_801789AC.o": 0.057, + "build/src/ov_SC03_014/ov_SC03_014_jr_80178D40.o": 0.088, + "build/src/ov_SC03_014/ov_SC03_014_jr_8017A4AC.o": 0.066, + "build/src/ov_SC03_014/ov_SC03_014_jr_8017AE2C.o": 0.149, + "build/src/ov_SC03_014/ov_SC03_014_jr_8017EB7C.o": 0.163, + "build/src/ov_SC03_014/ov_SC03_014_jr_80184440.o": 0.05, + "build/src/ov_SC03_014/ov_SC03_014_jr_801848E4.o": 0.253, + "build/src/ov_SC03_014/ov_SC03_014_o0b.o": 0.056, + "build/src/ov_SC03_014/ov_SC03_014_o0c.o": 0.054, + "build/src/ov_SC03_014/ov_SC03_014_o0d.o": 0.051, + "build/src/ov_SC03_014/ov_SC03_014_o0e.o": 0.069, + "build/src/ov_SC03_015/ov_SC03_015.o": 0.102, + "build/src/ov_SC03_015/ov_SC03_015_after.o": 0.485, + "build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.375, + "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.051, + "build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.107, + "build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.139, + "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_8013FFD8.o": 0.054, + "build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.15, + "build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.064, + "build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.146, + "build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.09, "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.067, - "build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.092, - "build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.419, - "build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.232, - "build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.102, - "build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.193, - "build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.055, - "build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.094, - "build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.057, - "build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.154, - "build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.187, - "build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.047, - "build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.252, - "build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.059, - "build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.055, + "build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.056, + "build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.078, + "build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.457, + "build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.242, + "build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.088, + "build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.182, + "build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.057, + "build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.102, + "build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.06, + "build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.167, + "build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.166, + "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.229, + "build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.056, + "build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.054, "build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.051, - "build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.063, - "build/src/ov_SC04_011/ov_SC04_011.o": 0.118, - "build/src/ov_SC04_011/ov_SC04_011_after.o": 0.393, - "build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.326, - "build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.046, - "build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.054, - "build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.108, - "build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.144, - "build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.092, - "build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.074, - "build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.057, - "build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.173, + "build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.067, + "build/src/ov_SC04_011/ov_SC04_011.o": 0.113, + "build/src/ov_SC04_011/ov_SC04_011_after.o": 0.396, + "build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.314, + "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.052, + "build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.1, + "build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.147, + "build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.103, + "build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.073, + "build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.058, + "build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.149, "build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.063, - "build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.157, - "build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.069, - "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.066, - "build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.085, - "build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.337, - "build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.217, - "build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.092, - "build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.169, - "build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.053, - "build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.08, - "build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.054, + "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.083, + "build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.059, + "build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.057, + "build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.082, + "build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.334, + "build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.207, + "build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.091, + "build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.162, + "build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.052, + "build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.09, + "build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.058, "build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.089, - "build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.415, - "build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.043, - "build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.056 + "build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.412, + "build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.049, + "build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.058 }, "ok": true, "seconds": 2.1 diff --git a/.run/P36/delever/ledger.jsonl b/.run/P36/delever/ledger.jsonl index 477cdfc448..9c5dd8188f 100644 --- a/.run/P36/delever/ledger.jsonl +++ b/.run/P36/delever/ledger.jsonl @@ -29541,3 +29541,4 @@ {"ts": "2026-09-11 04:51:08", "label": "s104_e32", "rung": "E", "calib": {"head": "ae63eded3", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_105/ov_SC03_105_jr_80181C84.c", "fn": "func_80183DA0", "addr": 2149072288, "aliases": null, "header": false, "includers": 0, "nhash_before": "abe28a8a2560e366822a77bc8239d3aaa36454f5", "nhash_after": "232532d954dab04338179cb15b00264a2bb1c158", "source": ".run/P36/agents/ov_SC03_105__func_80183DA0/body.c", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.108, "objects": ["build/src/ov_SC03_105/ov_SC03_105_jr_80181C84.o"], "before_text": "void func_80183DA0(s32 a0) {\n SVec_80183DA0 pos;\n SVec_80183DA0 out;\n s32 val;\n register s32 lvl __asm__(\"$17\"); // !FAKE: pin $17 \u2014 NEEDED DIFFERS (P36 rung B tus10)\n s32 sv;\n s32 n;\n s32 t;\n s32 r;\n\n val = 0x7F;\n pos.vx = *(s16 *)(a0 + 0x6);\n pos.vy = *(s16 *)(a0 + 0xA);\n pos.vz = *(s16 *)(a0 + 0xE);\n ((void (*)(void *, void *))func_8012EFB8)(&pos, &out);\n lvl = 7;\n\n if (out.vx >= 0) {\n if (out.vx >= 0x140) {\n val = 0;\n goto tail;\n }\n } else {\n if (-out.vx >= 0x140) {\n goto zero;\n }\n }\n\n sv = (s16)val;\n if (out.vx >= 0) {\n val = sv - out.vx * 0x7F / 0x140;\n } else {\n val = sv - -out.vx * 0x7F / 0x140;\n }\n goto tail;\n\nzero:\n val = 0;\n\ntail:\n t = out.vx;\n n = lvl + t / 0x14;\n lvl = n;\n __asm__ __volatile__(\"\" : \"=r\"(n) : \"0\"(n)); // !FAKE: launder \u2014 NEEDED DIFFERS (P36 rung B tus10)\n if ((s16)n < 0) {\n lvl = 0;\n } else if ((s16)n >= 0x10) {\n lvl = 0xF;\n }\n r = (lvl << 8) | 0x3000;\n func_8002D4C8(0x730, (val | r) & 0xFFFF);\n}\n", "after_text": "void func_80183DA0(s32 a0) {\n SVec_80183DA0 pos;\n SVec_80183DA0 out;\n s32 val;\n s32 sv;\n s16 lvl;\n\n val = 0x7F;\n lvl = 7;\n pos.vx = *(s16 *)(a0 + 0x6);\n pos.vy = *(s16 *)(a0 + 0xA);\n pos.vz = *(s16 *)(a0 + 0xE);\n ((void (*)(void *, void *))func_8012EFB8)(&pos, &out);\n\n if (out.vx >= 0 ? out.vx < 0x140 : -out.vx < 0x140) {\n sv = (s16)val;\n if (out.vx >= 0) {\n val = sv - out.vx * 0x7F / 0x140;\n } else {\n val = sv - -out.vx * 0x7F / 0x140;\n }\n } else {\n val = 0;\n }\n\n lvl += out.vx / 0x14;\n if (lvl < 0) {\n lvl = 0;\n } else if (lvl >= 0x10) {\n lvl = 0xF;\n }\n func_8002D4C8(0x730, (u16)(val | ((lvl << 8) | 0x3000)));\n}\n"} {"ts": "2026-09-11 04:51:25", "label": "s104_e32", "rung": "E", "calib": {"head": "35076c26a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_105/ov_SC03_105_jr_80181C84.c", "fn": "func_8018574C", "addr": 2149078860, "aliases": null, "header": false, "includers": 0, "nhash_before": "4db6fe851a3b449c868a5295e883f701891ebe4e", "nhash_after": "9206465ff43e249c29f032e5e86a0c44c90a7def", "source": ".run/P36/agents/ov_SC03_105__func_8018574C/body.c", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.104, "objects": ["build/src/ov_SC03_105/ov_SC03_105_jr_80181C84.o"], "before_text": "void func_8018574C(void *a0) {\n register s32 s0 __asm__(\"$16\") = (s32)a0; // !FAKE: pin $16 \u2014 NEEDED DIFFERS (P36 rung B tus10)\n s32 rnd;\n s32 t;\n s32 base;\n s32 rem;\n s32 result;\n s16 tmp[3];\n u8 aux[8];\n\n rnd = rand();\n t = *(s16 *)(s0 + 0xC);\n base = *(s16 *)(s0 + 0x14);\n __asm__(\"\" : \"=r\"(t) : \"0\"(t), \"r\"(base)); // !FAKE: launder \u2014 REFUSED launder with 2 inputs (P36 rung B tus10)\n rem = rnd % (t >> 7);\n if (rand() & 1) {\n result = base + rem;\n } else {\n result = base - rem;\n }\n tmp[0] = result;\n tmp[1] = *(u16 *)(s0 + 0x16) + *(u16 *)(s0 + 0x1E);\n tmp[2] = *(u16 *)(s0 + 0x18);\n func_8012F214(*(s32 *)(s0 + 0x20), (s32)tmp, (s32)aux);\n func_8017E5C8((s32)aux);\n}\n", "after_text": "void func_8018574C(void *a0) {\n s32 s0 = (s32)a0;\n s32 rnd;\n s32 t;\n s32 base;\n s32 rem;\n s32 result;\n s16 tmp[3];\n u8 aux[8];\n\n rnd = rand();\n t = *(s16 *)(s0 + 0xC);\n base = *(s16 *)(s0 + 0x14);\n /* `(s16)t >> 7` (P36 S104 e32): the cast at the shift keeps the target's lh + sra,7;\n `t >> 7` lets combine fold the load's sign extension into lhu + sll,16 + sra,23. */\n rem = rnd % ((s16)t >> 7);\n if (rand() & 1) {\n result = base + rem;\n } else {\n result = base - rem;\n }\n tmp[0] = result;\n tmp[1] = *(u16 *)(s0 + 0x16) + *(u16 *)(s0 + 0x1E);\n tmp[2] = *(u16 *)(s0 + 0x18);\n func_8012F214(*(s32 *)(s0 + 0x20), (s32)tmp, (s32)aux);\n func_8017E5C8((s32)aux);\n}\n"} {"ts": "2026-09-11 04:51:42", "label": "s104_e32", "rung": "E", "calib": {"head": "b6b1bbc1d", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_105/ov_SC03_105_jr_80181C84.c", "fn": "func_80184CA8", "addr": 2149076136, "aliases": null, "header": false, "includers": 0, "nhash_before": "c2965c1a2bf1830f587a072222355bb1b4f29546", "nhash_after": "26871f5045e56d49361d410849fa3b64894fb7c5", "source": ".run/P36/agents/ov_SC03_105__func_8018574C/scratch/cca8_final.c", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.105, "objects": ["build/src/ov_SC03_105/ov_SC03_105_jr_80181C84.o"], "before_text": "void func_80184CA8(s32 a0) {\n s32 v0;\n s16 *s1;\n s32 s3;\n u16 flag;\n s32 counter;\n /* K&R house style: all locals at the top. gcc-2.7.2 assigns stack slots in\n DECLARATION order (cookbook item 6), so buf[8] must be declared BEFORE\n tmp[4] to land at sp+0x10 with tmp at sp+0x20 -- even though tmp's arm\n runs first at runtime. */\n s16 buf[8];\n s16 tmp[4];\n s32 t;\n s16 u;\n s32 rnd;\n s32 base;\n s32 rem;\n s32 result;\n\n s3 = a0 + 0x20; /* $s3 = a0 + 0x20 */\n v0 = *(s32 *)(a0 + 0x54);\n s1 = *(s16 **)(a0 + 0x50);\n if (v0 == 0) { /* target: bnez v0 SKIPS the call */\n v0 = func_80185628(a0 + 0x34, (s32)s1);\n *(s16 *)(a0 + 0x28) = v0;\n }\n\n flag = *(u16 *)(a0 + 2);\n *(s16 *)(a0 + 0x34) = s1[0];\n *(s16 *)(a0 + 0x36) = s1[1];\n *(s16 *)(a0 + 0x38) = s1[2];\n\n /* flag != 0 first: writing the arms the other way round flips which side\n falls through and corrupts every branch downstream. */\n if (flag != 0) {\n counter = *(s32 *)(a0 + 0x1C);\n if (counter != 0) {\n *(s32 *)(a0 + 0x1C) = counter - 1;\n } else {\n v0 = func_80185680((void *)s3, (void *)(a0 + 0x48));\n if (v0 == 1) {\n rnd = rand();\n t = *(s16 *)(a0 + 0x2C);\n base = *(s16 *)(a0 + 0x34);\n /* Two levers in ONE zero-byte asm.\n (1) combine expands sign_extend(lh) into ashift/ashiftrt and\n merges it with the outer >>7, so the natural spelling\n always emits lhu+sll,16+sra,23 (3 ins). The re-tie breaks\n the i2->i3 chain, leaving the target's lh + sra,7 (2 ins).\n (2) naming `base` as an extra INPUT makes the 0x34 load a\n predecessor of the fence, so sched1 must place it before\n the fence -- i.e. into the lh 0x2C load-delay slot, which\n is exactly where the target has `lh $s1,0x34($s0)`.\n Without it that slot is a nop and the function is 116 ins. */\n __asm__(\"\" : \"=r\"(t) : \"0\"(t), \"r\"(base)); // !FAKE: launder \u2014 REFUSED launder with 2 inputs (P36 rung B tus10)\n rem = rnd % (t >> 7);\n if (rand() & 1) {\n result = base + rem;\n } else {\n result = base - rem;\n }\n tmp[0] = result; /* sp+0x20 */\n tmp[1] = *(u16 *)(s3 + 0x16) + *(u16 *)(s3 + 0x1E); /* sp+0x22 */\n tmp[2] = *(u16 *)(s3 + 0x18); /* sp+0x24 */\n func_8017E5C8((s32)tmp);\n func_80185218((void *)a0);\n } else {\n /* `u` MUST be declared s16, not s32 (width dial, cookbook\n \u00a7194-B): the 16-bit local keeps the shift result in $v0 and\n sends the negation to $v1; an s32 local swaps the pair. */\n u = (s16)(*(u16 *)(a0 + 0x2C)) >> 9;\n buf[2] = -u; /* sp+0x14 */\n buf[3] = u; /* sp+0x16 */\n u = (s16)(*(u16 *)(a0 + 0x2E)) >> 9;\n buf[4] = -u; /* sp+0x18 */\n buf[5] = u; /* sp+0x1A */\n u = (s16)(*(u16 *)(a0 + 0x30)) >> 9;\n buf[6] = -u; /* sp+0x1C */\n buf[7] = u; /* sp+0x1E */\n func_80185380(a0, (s32)&buf[0], 0x30); /* a1 = sp+0x10 */\n func_80185810(s3);\n }\n }\n } else {\n *(s16 *)(a0 + 2) = flag + 1;\n *(s32 *)(a0 + 0x1C) = rand() % 4;\n }\n}\n", "after_text": "void func_80184CA8(s32 a0) {\n s32 v0;\n s16 *s1;\n s32 s3;\n u16 flag;\n s32 counter;\n /* K&R house style: all locals at the top. gcc-2.7.2 assigns stack slots in\n DECLARATION order (cookbook item 6), so buf[8] must be declared BEFORE\n tmp[4] to land at sp+0x10 with tmp at sp+0x20 -- even though tmp's arm\n runs first at runtime. */\n s16 buf[8];\n s16 tmp[4];\n s32 t;\n s16 u;\n s32 rnd;\n s32 base;\n s32 rem;\n s32 result;\n\n s3 = a0 + 0x20; /* $s3 = a0 + 0x20 */\n v0 = *(s32 *)(a0 + 0x54);\n s1 = *(s16 **)(a0 + 0x50);\n if (v0 == 0) { /* target: bnez v0 SKIPS the call */\n v0 = func_80185628(a0 + 0x34, (s32)s1);\n *(s16 *)(a0 + 0x28) = v0;\n }\n\n flag = *(u16 *)(a0 + 2);\n *(s16 *)(a0 + 0x34) = s1[0];\n *(s16 *)(a0 + 0x36) = s1[1];\n *(s16 *)(a0 + 0x38) = s1[2];\n\n /* flag != 0 first: writing the arms the other way round flips which side\n falls through and corrupts every branch downstream. */\n if (flag != 0) {\n counter = *(s32 *)(a0 + 0x1C);\n if (counter != 0) {\n *(s32 *)(a0 + 0x1C) = counter - 1;\n } else {\n v0 = func_80185680((void *)s3, (void *)(a0 + 0x48));\n if (v0 == 1) {\n rnd = rand();\n t = *(s16 *)(a0 + 0x2C);\n base = *(s16 *)(a0 + 0x34);\n /* `(s16)t >> 7`, not `t >> 7` (P36 S104 e32, replacing a 2-input launder):\n with the cast at the shift, c-typeck's short_shift re-extends the value and\n cse folds that pair into the `lh`, leaving the target's lh + sra,7; written\n `t >> 7`, combine merges the load's sign extension with the shift into\n lhu + sll,16 + sra,23. The 0x34 load then fills the lh delay slot by itself. */\n rem = rnd % ((s16)t >> 7);\n if (rand() & 1) {\n result = base + rem;\n } else {\n result = base - rem;\n }\n tmp[0] = result; /* sp+0x20 */\n tmp[1] = *(u16 *)(s3 + 0x16) + *(u16 *)(s3 + 0x1E); /* sp+0x22 */\n tmp[2] = *(u16 *)(s3 + 0x18); /* sp+0x24 */\n func_8017E5C8((s32)tmp);\n func_80185218((void *)a0);\n } else {\n /* `u` MUST be declared s16, not s32 (width dial, cookbook\n \u00a7194-B): the 16-bit local keeps the shift result in $v0 and\n sends the negation to $v1; an s32 local swaps the pair. */\n u = (s16)(*(u16 *)(a0 + 0x2C)) >> 9;\n buf[2] = -u; /* sp+0x14 */\n buf[3] = u; /* sp+0x16 */\n u = (s16)(*(u16 *)(a0 + 0x2E)) >> 9;\n buf[4] = -u; /* sp+0x18 */\n buf[5] = u; /* sp+0x1A */\n u = (s16)(*(u16 *)(a0 + 0x30)) >> 9;\n buf[6] = -u; /* sp+0x1C */\n buf[7] = u; /* sp+0x1E */\n func_80185380(a0, (s32)&buf[0], 0x30); /* a1 = sp+0x10 */\n func_80185810(s3);\n }\n }\n } else {\n *(s16 *)(a0 + 2) = flag + 1;\n *(s32 *)(a0 + 0x1C) = rand() % 4;\n }\n}\n"} +{"ts": "2026-09-11 04:51:59", "label": "s104_e32", "rung": "E", "calib": {"head": "0a272b4ce", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC05_003/ov_SC05_003_jr_8017BEBC.c", "fn": "func_80181CDC", "addr": 2149063900, "aliases": null, "header": false, "includers": 0, "nhash_before": "5bf849c4f7d1184bf5dcd5ef0a134870eaebfd8f", "nhash_after": "0629125306ac98c7012b1bb33de26307807cdc21", "source": ".run/P36/agents/ov_SC03_105__func_80183DA0/scratch/x1.c", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.159, "objects": ["build/src/ov_SC05_003/ov_SC05_003_jr_8017BEBC.o"], "before_text": "s32 func_80181CDC(s32 a0, s32 a1) {\n register s32 zr __asm__(\"$0\"); // !FAKE: pin $0 \u2014 NEEDED DIFFERS (P36 rung B tus9)\n SVec_80181CDC pos;\n SVec_80181CDC out;\n s32 val;\n s32 lvl;\n s32 t;\n s32 x;\n s32 n;\n s32 y;\n s32 arg;\n\n val = 0x7F;\n arg = a1;\n pos.vx = *(s16 *)(a0 + 0x6);\n pos.vy = *(s16 *)(a0 + 0xA);\n pos.vz = *(s16 *)(a0 + 0xE);\n ((void (*)(void *, void *))func_8012EFB8)(&pos, &out);\n lvl = 7;\n\n t = out.vx;\n if (t < 0) { t = -t; }\n if (t >= 0xC9) { return 0; }\n\n if (out.vy >= 0) {\n if (out.vy >= 0xA1) { return 0; }\n __asm__ __volatile__(\"\"); // !FAKE: barrier \u2014 NEEDED DIFFERS (P36 rung B tus9)\n } else {\n if (-out.vy >= 0xA1) { return 0; }\n }\n\n val -= ((((s32 (*)(s32))func_8012BD14)(a0) - 0x1000) * 0x7F) / 0xFF000;\n x = out.vx;\n n = lvl + x / 0x19;\n lvl = n + zr;\n if ((s16)n < 0) { lvl = 0; }\n else if ((s16)n > 0xF) { lvl = 0xF; }\n y = (lvl << 8) | 0x3000;\n func_8002D4C8(arg & 0xFFFF, (val | y) & 0xFFFF);\n return 1;\n}\n", "after_text": "s32 func_80181CDC(s32 a0, s32 a1) {\n SVec_80181CDC pos;\n SVec_80181CDC out;\n s32 val;\n s16 lvl;\n s32 t;\n s32 arg;\n\n val = 0x7F;\n lvl = 7;\n arg = a1;\n pos.vx = *(s16 *)(a0 + 0x6);\n pos.vy = *(s16 *)(a0 + 0xA);\n pos.vz = *(s16 *)(a0 + 0xE);\n ((void (*)(void *, void *))func_8012EFB8)(&pos, &out);\n\n t = out.vx;\n if (t < 0) { t = -t; }\n if (t >= 0xC9) { return 0; }\n\n if (out.vy >= 0 ? out.vy >= 0xA1 : -out.vy >= 0xA1) { return 0; }\n\n val -= ((((s32 (*)(s32))func_8012BD14)(a0) - 0x1000) * 0x7F) / 0xFF000;\n lvl += out.vx / 0x19;\n if (lvl < 0) { lvl = 0; }\n else if (lvl > 0xF) { lvl = 0xF; }\n func_8002D4C8(arg & 0xFFFF, (u16)(val | ((lvl << 8) | 0x3000)));\n return 1;\n}\n"} diff --git a/src/ov_SC05_003/ov_SC05_003_jr_8017BEBC.c b/src/ov_SC05_003/ov_SC05_003_jr_8017BEBC.c index 6f6ba27e2a..4b3d81b205 100644 --- a/src/ov_SC05_003/ov_SC05_003_jr_8017BEBC.c +++ b/src/ov_SC05_003/ov_SC05_003_jr_8017BEBC.c @@ -5879,44 +5879,32 @@ extern void func_8012BD14(s32 a0); extern void func_8002D4C8(s32 a0, s32 a1); s32 func_80181CDC(s32 a0, s32 a1) { - register s32 zr __asm__("$0"); // !FAKE: pin $0 — NEEDED DIFFERS (P36 rung B tus9) SVec_80181CDC pos; SVec_80181CDC out; s32 val; - s32 lvl; + s16 lvl; s32 t; - s32 x; - s32 n; - s32 y; s32 arg; val = 0x7F; + lvl = 7; arg = a1; pos.vx = *(s16 *)(a0 + 0x6); pos.vy = *(s16 *)(a0 + 0xA); pos.vz = *(s16 *)(a0 + 0xE); ((void (*)(void *, void *))func_8012EFB8)(&pos, &out); - lvl = 7; t = out.vx; if (t < 0) { t = -t; } if (t >= 0xC9) { return 0; } - if (out.vy >= 0) { - if (out.vy >= 0xA1) { return 0; } - __asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus9) - } else { - if (-out.vy >= 0xA1) { return 0; } - } + if (out.vy >= 0 ? out.vy >= 0xA1 : -out.vy >= 0xA1) { return 0; } val -= ((((s32 (*)(s32))func_8012BD14)(a0) - 0x1000) * 0x7F) / 0xFF000; - x = out.vx; - n = lvl + x / 0x19; - lvl = n + zr; - if ((s16)n < 0) { lvl = 0; } - else if ((s16)n > 0xF) { lvl = 0xF; } - y = (lvl << 8) | 0x3000; - func_8002D4C8(arg & 0xFFFF, (val | y) & 0xFFFF); + lvl += out.vx / 0x19; + if (lvl < 0) { lvl = 0; } + else if (lvl > 0xF) { lvl = 0xF; } + func_8002D4C8(arg & 0xFFFF, (u16)(val | ((lvl << 8) | 0x3000))); return 1; }