mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-10-08 17:51:46 -04:00
phase-36: S104 s104_e7 — func_80181E98 banked at 0 through the whole-object gate + propagated — barrier → 0: inline returns + the sign-split test as one ternary (expr.c:9124; jump.c:2371/2469)
This commit is contained in:
+185
-185
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"head": "bd0167bf9",
|
||||
"head": "8310031fe",
|
||||
"stamp": "15956e4a96c4",
|
||||
"generated": "2026-09-11 01:11",
|
||||
"generated": "2026-09-11 01:12",
|
||||
"aliases": [
|
||||
"main",
|
||||
"ov_SC03_014",
|
||||
@@ -21,207 +21,207 @@
|
||||
"main": {
|
||||
"objects": 85,
|
||||
"identical": 85,
|
||||
"seconds": 10.489999999999998,
|
||||
"mean_s": 0.123
|
||||
"seconds": 9.774000000000004,
|
||||
"mean_s": 0.115
|
||||
},
|
||||
"ov_SC03_014": {
|
||||
"objects": 32,
|
||||
"identical": 32,
|
||||
"seconds": 6.474000000000001,
|
||||
"mean_s": 0.202
|
||||
"seconds": 6.707999999999999,
|
||||
"mean_s": 0.21
|
||||
},
|
||||
"ov_SC03_015": {
|
||||
"objects": 32,
|
||||
"identical": 32,
|
||||
"seconds": 6.872999999999999,
|
||||
"mean_s": 0.215
|
||||
"seconds": 6.688,
|
||||
"mean_s": 0.209
|
||||
},
|
||||
"ov_SC04_011": {
|
||||
"objects": 28,
|
||||
"identical": 28,
|
||||
"seconds": 6.143000000000001,
|
||||
"mean_s": 0.219
|
||||
"seconds": 5.854000000000001,
|
||||
"mean_s": 0.209
|
||||
}
|
||||
},
|
||||
"per_object_seconds": {
|
||||
"build/src/800.o": 1.072,
|
||||
"build/src/800_b.o": 0.152,
|
||||
"build/src/800_b_2.o": 0.457,
|
||||
"build/src/800_b_o0a.o": 0.127,
|
||||
"build/src/800_c.o": 0.307,
|
||||
"build/src/800b2.o": 0.129,
|
||||
"build/src/apicard1.o": 0.131,
|
||||
"build/src/apicard2.o": 0.09,
|
||||
"build/src/apicard3.o": 0.103,
|
||||
"build/src/apicard4.o": 0.086,
|
||||
"build/src/apicard5.o": 0.081,
|
||||
"build/src/apicard6.o": 0.099,
|
||||
"build/src/apicard7.o": 0.104,
|
||||
"build/src/boot.o": 0.128,
|
||||
"build/src/gap.o": 0.136,
|
||||
"build/src/libapi1.o": 0.093,
|
||||
"build/src/libapi2.o": 0.091,
|
||||
"build/src/libc2_1.o": 0.103,
|
||||
"build/src/libc2_2.o": 0.088,
|
||||
"build/src/libcd1.o": 0.117,
|
||||
"build/src/libcd2.o": 0.076,
|
||||
"build/src/libetc.o": 0.095,
|
||||
"build/src/libgpu.o": 0.082,
|
||||
"build/src/libgpu2.o": 0.117,
|
||||
"build/src/libgs1.o": 0.101,
|
||||
"build/src/libgs2.o": 0.116,
|
||||
"build/src/libgs3.o": 0.081,
|
||||
"build/src/libgs4.o": 0.088,
|
||||
"build/src/libgs5.o": 0.078,
|
||||
"build/src/libgs6.o": 0.113,
|
||||
"build/src/libgs7.o": 0.109,
|
||||
"build/src/libgs8.o": 0.084,
|
||||
"build/src/libgte1.o": 0.098,
|
||||
"build/src/libgte10.o": 0.108,
|
||||
"build/src/libgte11.o": 0.126,
|
||||
"build/src/libgte12.o": 0.084,
|
||||
"build/src/libgte13.o": 0.077,
|
||||
"build/src/libgte14.o": 0.092,
|
||||
"build/src/libgte15.o": 0.089,
|
||||
"build/src/libgte16.o": 0.078,
|
||||
"build/src/libgte17.o": 0.079,
|
||||
"build/src/libgte18.o": 0.082,
|
||||
"build/src/libgte19.o": 0.084,
|
||||
"build/src/libgte2.o": 0.081,
|
||||
"build/src/libgte20.o": 0.082,
|
||||
"build/src/libgte21.o": 0.085,
|
||||
"build/src/libgte22.o": 0.134,
|
||||
"build/src/libgte23.o": 0.11,
|
||||
"build/src/libgte24.o": 0.146,
|
||||
"build/src/libgte25.o": 0.103,
|
||||
"build/src/libgte26.o": 0.096,
|
||||
"build/src/libgte27.o": 0.106,
|
||||
"build/src/libgte28.o": 0.113,
|
||||
"build/src/libgte29.o": 0.121,
|
||||
"build/src/libgte3.o": 0.087,
|
||||
"build/src/libgte30.o": 0.093,
|
||||
"build/src/libgte4.o": 0.094,
|
||||
"build/src/libgte5.o": 0.117,
|
||||
"build/src/libgte6.o": 0.114,
|
||||
"build/src/libgte7.o": 0.113,
|
||||
"build/src/libgte8.o": 0.125,
|
||||
"build/src/libgte9.o": 0.086,
|
||||
"build/src/libmcrd1.o": 0.118,
|
||||
"build/src/libmcrd2.o": 0.097,
|
||||
"build/src/libpad1.o": 0.139,
|
||||
"build/src/libpad2.o": 0.129,
|
||||
"build/src/sgap.o": 0.187,
|
||||
"build/src/800.o": 0.747,
|
||||
"build/src/800_b.o": 0.115,
|
||||
"build/src/800_b_2.o": 0.599,
|
||||
"build/src/800_b_o0a.o": 0.1,
|
||||
"build/src/800_c.o": 0.557,
|
||||
"build/src/800b2.o": 0.125,
|
||||
"build/src/apicard1.o": 0.503,
|
||||
"build/src/apicard2.o": 0.108,
|
||||
"build/src/apicard3.o": 0.105,
|
||||
"build/src/apicard4.o": 0.107,
|
||||
"build/src/apicard5.o": 0.091,
|
||||
"build/src/apicard6.o": 0.094,
|
||||
"build/src/apicard7.o": 0.503,
|
||||
"build/src/boot.o": 0.132,
|
||||
"build/src/gap.o": 0.102,
|
||||
"build/src/libapi1.o": 0.12,
|
||||
"build/src/libapi2.o": 0.079,
|
||||
"build/src/libc2_1.o": 0.086,
|
||||
"build/src/libc2_2.o": 0.083,
|
||||
"build/src/libcd1.o": 0.093,
|
||||
"build/src/libcd2.o": 0.083,
|
||||
"build/src/libetc.o": 0.085,
|
||||
"build/src/libgpu.o": 0.088,
|
||||
"build/src/libgpu2.o": 0.087,
|
||||
"build/src/libgs1.o": 0.083,
|
||||
"build/src/libgs2.o": 0.082,
|
||||
"build/src/libgs3.o": 0.084,
|
||||
"build/src/libgs4.o": 0.091,
|
||||
"build/src/libgs5.o": 0.074,
|
||||
"build/src/libgs6.o": 0.091,
|
||||
"build/src/libgs7.o": 0.041,
|
||||
"build/src/libgs8.o": 0.04,
|
||||
"build/src/libgte1.o": 0.076,
|
||||
"build/src/libgte10.o": 0.087,
|
||||
"build/src/libgte11.o": 0.066,
|
||||
"build/src/libgte12.o": 0.09,
|
||||
"build/src/libgte13.o": 0.067,
|
||||
"build/src/libgte14.o": 0.089,
|
||||
"build/src/libgte15.o": 0.07,
|
||||
"build/src/libgte16.o": 0.085,
|
||||
"build/src/libgte17.o": 0.077,
|
||||
"build/src/libgte18.o": 0.074,
|
||||
"build/src/libgte19.o": 0.072,
|
||||
"build/src/libgte2.o": 0.076,
|
||||
"build/src/libgte20.o": 0.079,
|
||||
"build/src/libgte21.o": 0.068,
|
||||
"build/src/libgte22.o": 0.049,
|
||||
"build/src/libgte23.o": 0.056,
|
||||
"build/src/libgte24.o": 0.068,
|
||||
"build/src/libgte25.o": 0.067,
|
||||
"build/src/libgte26.o": 0.062,
|
||||
"build/src/libgte27.o": 0.069,
|
||||
"build/src/libgte28.o": 0.075,
|
||||
"build/src/libgte29.o": 0.061,
|
||||
"build/src/libgte3.o": 0.064,
|
||||
"build/src/libgte30.o": 0.065,
|
||||
"build/src/libgte4.o": 0.068,
|
||||
"build/src/libgte5.o": 0.062,
|
||||
"build/src/libgte6.o": 0.065,
|
||||
"build/src/libgte7.o": 0.081,
|
||||
"build/src/libgte8.o": 0.069,
|
||||
"build/src/libgte9.o": 0.078,
|
||||
"build/src/libmcrd1.o": 0.042,
|
||||
"build/src/libmcrd2.o": 0.05,
|
||||
"build/src/libpad1.o": 0.104,
|
||||
"build/src/libpad2.o": 0.117,
|
||||
"build/src/sgap.o": 0.097,
|
||||
"build/src/sgap_2.o": 0.107,
|
||||
"build/src/sgap_3.o": 0.107,
|
||||
"build/src/sgap_4.o": 0.136,
|
||||
"build/src/sgap_5.o": 0.162,
|
||||
"build/src/sgap_6.o": 0.104,
|
||||
"build/src/sgap_8.o": 0.113,
|
||||
"build/src/snd1.o": 0.096,
|
||||
"build/src/snd10.o": 0.101,
|
||||
"build/src/snd11.o": 0.103,
|
||||
"build/src/snd12.o": 0.079,
|
||||
"build/src/snd2.o": 0.116,
|
||||
"build/src/snd3.o": 0.097,
|
||||
"build/src/snd4.o": 0.131,
|
||||
"build/src/snd5.o": 0.124,
|
||||
"build/src/snd6.o": 0.097,
|
||||
"build/src/snd7.o": 0.103,
|
||||
"build/src/snd8.o": 0.086,
|
||||
"build/src/snd9.o": 0.121,
|
||||
"build/src/ov_SC03_014/ov_SC03_014.o": 0.185,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_after.o": 0.666,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8012ACE0.o": 0.502,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80135888.o": 0.077,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80135A4C.o": 0.102,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80135D20.o": 0.165,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801380E0.o": 0.213,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.o": 0.148,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8013F350.o": 0.123,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8013FFD8.o": 0.078,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80140608.o": 0.263,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8015444C.o": 0.141,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80154C24.o": 0.226,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801588CC.o": 0.144,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80159C84.o": 0.1,
|
||||
"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.13,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8015C32C.o": 0.659,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8016AB6C.o": 0.365,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80171B4C.o": 0.129,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801734BC.o": 0.262,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801789AC.o": 0.089,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80178D40.o": 0.162,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8017A4AC.o": 0.09,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8017AE2C.o": 0.208,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8017EB7C.o": 0.292,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80184440.o": 0.072,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801848E4.o": 0.401,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0b.o": 0.083,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0c.o": 0.087,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0d.o": 0.096,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0e.o": 0.097,
|
||||
"build/src/ov_SC03_015/ov_SC03_015.o": 0.179,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_after.o": 0.72,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.577,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.113,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.146,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.201,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.23,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.156,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.157,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.099,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.304,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.103,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.216,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.133,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.138,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.141,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.171,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.594,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.349,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.143,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.258,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.108,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.135,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.116,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.221,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.29,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.091,
|
||||
"build/src/sgap_3.o": 0.079,
|
||||
"build/src/sgap_4.o": 0.115,
|
||||
"build/src/sgap_5.o": 0.122,
|
||||
"build/src/sgap_6.o": 0.099,
|
||||
"build/src/sgap_8.o": 0.121,
|
||||
"build/src/snd1.o": 0.118,
|
||||
"build/src/snd10.o": 0.087,
|
||||
"build/src/snd11.o": 0.116,
|
||||
"build/src/snd12.o": 0.085,
|
||||
"build/src/snd2.o": 0.131,
|
||||
"build/src/snd3.o": 0.105,
|
||||
"build/src/snd4.o": 0.095,
|
||||
"build/src/snd5.o": 0.112,
|
||||
"build/src/snd6.o": 0.086,
|
||||
"build/src/snd7.o": 0.097,
|
||||
"build/src/snd8.o": 0.083,
|
||||
"build/src/snd9.o": 0.093,
|
||||
"build/src/ov_SC03_014/ov_SC03_014.o": 0.141,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_after.o": 0.439,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8012ACE0.o": 0.365,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80135888.o": 0.122,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80135A4C.o": 0.077,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80135D20.o": 0.143,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801380E0.o": 0.183,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.o": 0.143,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8013F350.o": 0.129,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8013FFD8.o": 0.115,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80140608.o": 0.189,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8015444C.o": 0.133,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80154C24.o": 0.203,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801588CC.o": 0.161,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80159C84.o": 0.143,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8015A3C8.o": 0.149,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8015AE2C.o": 0.199,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8015C32C.o": 0.779,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8016AB6C.o": 0.424,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80171B4C.o": 0.197,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801734BC.o": 0.284,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801789AC.o": 0.166,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80178D40.o": 0.205,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8017A4AC.o": 0.154,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8017AE2C.o": 0.267,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_8017EB7C.o": 0.303,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_80184440.o": 0.1,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_jr_801848E4.o": 0.367,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0b.o": 0.085,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0c.o": 0.1,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0d.o": 0.112,
|
||||
"build/src/ov_SC03_014/ov_SC03_014_o0e.o": 0.131,
|
||||
"build/src/ov_SC03_015/ov_SC03_015.o": 0.191,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_after.o": 0.645,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.534,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.104,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.084,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.161,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.182,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.128,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.146,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.079,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.234,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.118,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.256,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.113,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.102,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.104,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.126,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.611,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.352,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.185,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.294,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.079,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.18,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.106,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.296,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.313,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.115,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.389,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.092,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.106,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.08,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.117,
|
||||
"build/src/ov_SC04_011/ov_SC04_011.o": 0.153,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_after.o": 0.648,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.496,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.097,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.107,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.118,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.108,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.128,
|
||||
"build/src/ov_SC04_011/ov_SC04_011.o": 0.151,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_after.o": 0.616,
|
||||
"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.087,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.069,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.182,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.194,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.146,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.139,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.113,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.238,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.136,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.242,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.11,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.148,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.119,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.131,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.558,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.354,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.16,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.297,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.077,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.129,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.097,
|
||||
"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.766,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.083,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.111
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.144,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.211,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.163,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.12,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.097,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.26,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.093,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.224,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.113,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.124,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.134,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.112,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.533,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.32,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.134,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.269,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.075,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.16,
|
||||
"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.141,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.736,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.096,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.098
|
||||
},
|
||||
"ok": true,
|
||||
"seconds": 3.9
|
||||
"seconds": 25.3
|
||||
}
|
||||
|
||||
@@ -29373,3 +29373,4 @@
|
||||
{"ts": "2026-09-11 01:10:00", "label": "s104_e7", "rung": "E", "calib": {"head": "16c9d2fb6", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_017/ov_SC02_017_jr_8017DF34.c", "fn": "func_80181BBC", "addr": 2149063612, "aliases": null, "header": false, "includers": 0, "nhash_before": "217715202856ca5a105bd3c3896400d44a7d0471", "nhash_after": "f8d6d5bb2ea3d5eeec80daa771204389013958d8", "source": ".run/P36/agents/ov_SC02_017__func_80181BBC/body.c", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.346, "objects": ["build/src/ov_SC02_017/ov_SC02_017_jr_8017DF34.o"], "before_text": "void func_80181BBC(s32 a0)\n{\n s32 s0;\n s32 v0;\n s32 v1;\n register s32 a0_2 __asm__(\"$4\"); // !FAKE: pin $4 \u2014 NEEDED DIFFERS (P36 rung B tus8)\n\n s0 = a0;\n if (func_8012C438(s0, (s32)D_8018E4F8) == 0) {\n return;\n }\n func_8001D0E8(*(s32 *)(s0 + 0x20), 0x1E0, 0x168);\n v1 = *(s32 *)(s0 + 0x20);\n *(s32 *)(v1 + 0x20) = (s32)D_8018E540;\n v0 = *(s32 *)(s0 + 0x64);\n a0_2 = *(s32 *)(s0 + 0x20);\n v1 = *(u16 *)(v0 + 0x36);\n *(s8 *)(s0 + 0x75) = 4;\n *(u16 *)(s0 + 0xFE) = v1;\n v0 = *(s32 *)(a0_2 + 4);\n v0 |= 0x8000;\n *(s32 *)(a0_2 + 4) = v0;\n func_8001D0E8(*(s32 *)(s0 + 0x20), 0x1E0, 0x168);\n v0 = *(u16 *)(s0 + 0xA);\n v1 = 1;\n *(s16 *)(s0 + 2) = v1;\n v0 += 0x36;\n *(s16 *)(s0 + 0xA) = v0;\n}\n", "after_text": "void func_80181BBC(s32 a0)\n{\n u16 uVar1;\n\n if (func_8012C438(a0, (s32)D_8018E4F8) == 0) {\n return;\n }\n func_8001D0E8(*(s32 *)(a0 + 0x20), 0x1E0, 0x168);\n *(s32 *)(*(s32 *)(a0 + 0x20) + 0x20) = (s32)D_8018E540;\n uVar1 = *(u16 *)(*(s32 *)(a0 + 0x64) + 0x36);\n *(u8 *)(a0 + 0x75) = 4;\n *(u16 *)(a0 + 0xFE) = uVar1;\n *(s32 *)(*(s32 *)(a0 + 0x20) + 4) |= 0x8000;\n func_8001D0E8(*(s32 *)(a0 + 0x20), 0x1E0, 0x168);\n *(u16 *)(a0 + 2) = 1;\n *(u16 *)(a0 + 0xA) += 0x36;\n}\n"}
|
||||
{"ts": "2026-09-11 01:10:57", "label": "s104_e7", "rung": "E", "calib": {"head": "ef48a0c49", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_017/ov_SC02_017_jr_8017DF34.c", "fn": "func_801831FC", "addr": 2149069308, "aliases": null, "header": false, "includers": 0, "nhash_before": "2266de8239df7a9260c3585c829686ef45012cfa", "nhash_after": "bd58597e491bcd9f5625d0a12f5b32382f6b6cc2", "source": ".run/P36/agents/ov_SC02_017__func_801831FC/body.c", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.346, "objects": ["build/src/ov_SC02_017/ov_SC02_017_jr_8017DF34.o"], "before_text": "void func_801831FC(s32 arg0) {\n s32 s0 = arg0;\n register s32 v0 __asm__(\"$2\"); // !FAKE: pin $2 \u2014 NEEDED DIFFERS (P36 rung B tus8)\n s16 buf[4];\n s32 base;\n s32 s1;\n s16 v1;\n s16 a1;\n\n base = (s32)&D_80126B58;\n s1 = (s32)D_8018E8EC + (*(s16 *)(s0 + 0xFC)) * 8;\n if (*(s16 *)(s1 + 0x6) == 0) {\n return;\n }\n func_80015978(base + 4, (s32 *)buf);\n if (*(s16 *)(s0 + 0xFC) == 3) {\n if (buf[1] < -0xB00) {\n return;\n }\n buf[1] = *(u16 *)(s1 + 0x2);\n }\n v0 = func_80013294((void *)buf, (void *)s1);\n v1 = (s16)v0;\n if (v1 >= 0x800) {\n return;\n }\n v0 = (0x800 - v1) * 127;\n if (v0 < 0) {\n v0 += 0x7FF;\n }\n v0 = v0 >> 11;\n if (v0 < 0) {\n a1 = 0;\n } else {\n a1 = v0;\n }\n if (a1 >= 0x80) {\n a1 = 0x7F;\n }\n func_8002D4C8(*(u16 *)(s1 + 0x6), (u16)(a1 | 0x1000));\n}\n", "after_text": "void func_801831FC(s32 arg0) {\n s16 buf[4];\n s32 base;\n s32 s1;\n s16 dist;\n s32 q;\n s16 vol;\n\n base = (s32)&D_80126B58;\n s1 = (s32)D_8018E8EC + (*(s16 *)(arg0 + 0xFC)) * 8;\n if (*(s16 *)(s1 + 0x6) == 0) {\n return;\n }\n func_80015978(base + 4, (s32 *)buf);\n if (*(s16 *)(arg0 + 0xFC) == 3) {\n if (buf[1] < -0xB00) {\n return;\n }\n buf[1] = *(u16 *)(s1 + 0x2);\n }\n dist = func_80013294((void *)buf, (void *)s1);\n if (dist >= 0x800) {\n return;\n }\n q = (0x800 - dist) * 127 / 0x800;\n if (q < 0) {\n vol = 0;\n } else {\n vol = q;\n }\n if (vol >= 0x80) {\n vol = 0x7F;\n }\n func_8002D4C8(*(u16 *)(s1 + 0x6), (u16)(vol | 0x1000));\n}\n"}
|
||||
{"ts": "2026-09-11 01:11:31", "label": "s104_e7", "rung": "E", "calib": {"head": "bd0167bf9", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_017/ov_SC02_017_jr_8017DF34.c", "fn": "func_80181294", "addr": 2149061268, "aliases": null, "header": false, "includers": 0, "nhash_before": "e6e9c8caef478d8eb92851a431c9b33e5a4f43ac", "nhash_after": "68482cf5636ba2087cec4c609c051da544b899be", "source": ".run/P36/agents/ov_SC02_017__func_80181294/body.c", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.364, "objects": ["build/src/ov_SC02_017/ov_SC02_017_jr_8017DF34.o"], "before_text": "s32 func_80181294(s32 arg0) {\n s32 e; /* *(s32 *)(arg0 + 0x20) -- the owned effect/entity */\n s16 *rot; /* (s16 *)(e + 0x10) : rot[0]=0x10 rot[1]=0x12 rot[2]=0x14 */\n s32 i;\n s32 t;\n s32 t2;\n s32 base1;\n s32 base2;\n u16 sp10[3];\n\n e = *(s32 *)(arg0 + 0x20);\n rot = (s16 *)(e + 0x10);\n\n if (rand() & 1) {\n *(u16 *)(e + 0x14) += *(s16 *)(arg0 + 0xFC) * (rand() % 8 + 1);\n }\n\n if (rot[2] > 0x38) {\n *(s16 *)(arg0 + 0xFC) = -1;\n rot[2] = 0x38;\n } else if (rot[2] < -0x38) {\n *(s16 *)(arg0 + 0xFC) = 1;\n rot[2] = -0x38;\n }\n\n if (*(s32 *)(arg0 + 0x1C) % 10 == 0) {\n sp10[1] = D_8018E40A;\n for (i = 0; i < 5; i++) {\n register s32 v __asm__(\"$2\"); // !FAKE: pin $2 \u2014 NEEDED DIFFERS (P36 rung B tus8)\n t = rand() % 80;\n if ((rand() & 1) == 0) {\n v = -t;\n } else {\n v = t;\n }\n sp10[0] = v;\n t2 = rand() % 16;\n if ((rand() & 1) == 0) {\n v = -t2 + 0x40;\n } else {\n v = t2 + 0x40;\n }\n sp10[2] = v;\n ((void (*)(s32, void *, s32))func_8017DC70)(arg0, sp10, 1);\n }\n func_8002D4C8(0xBA0, 0);\n if (*(s32 *)(arg0 + 0x1C) % 10 == 0) {\n sp10[0] = *(u16 *)(arg0 + 0x6);\n sp10[1] = *(u16 *)(arg0 + 0xA);\n sp10[2] = *(u16 *)(arg0 + 0xE) + 0x50;\n for (i = 0; i < 10; i++) {\n s32 v;\n t = rand() % 80;\n base1 = *(s16 *)(arg0 + 0x6);\n if ((rand() & 1) == 0) {\n v = base1 - t;\n } else {\n v = base1 + t;\n }\n sp10[0] = v;\n t = rand() % 56;\n base2 = *(s16 *)(arg0 + 0xA);\n if ((rand() & 1) == 0) {\n v = base2 - t;\n } else {\n v = base2 + t;\n }\n sp10[1] = v;\n func_80143BDC(sp10);\n }\n }\n }\n\n if (func_8012BEE8(arg0)) {\n rot[2] = 0;\n func_8012B23C(arg0);\n return 1;\n }\n return 0;\n}\n", "after_text": "s32 func_80181294(s32 arg0) {\n s32 e; /* *(s32 *)(arg0 + 0x20) -- the owned effect/entity */\n s16 *rot; /* (s16 *)(e + 0x10) : rot[0]=0x10 rot[1]=0x12 rot[2]=0x14 */\n s32 i;\n s32 t;\n s32 t2;\n s32 base1;\n s32 base2;\n u16 sp10[3];\n\n e = *(s32 *)(arg0 + 0x20);\n rot = (s16 *)(e + 0x10);\n\n if (rand() & 1) {\n *(u16 *)(e + 0x14) += *(s16 *)(arg0 + 0xFC) * (rand() % 8 + 1);\n }\n\n if (rot[2] > 0x38) {\n *(s16 *)(arg0 + 0xFC) = -1;\n rot[2] = 0x38;\n } else if (rot[2] < -0x38) {\n *(s16 *)(arg0 + 0xFC) = 1;\n rot[2] = -0x38;\n }\n\n if (*(s32 *)(arg0 + 0x1C) % 10 == 0) {\n sp10[1] = D_8018E40A;\n for (i = 0; i < 5; i++) {\n t = rand() % 80;\n sp10[0] = ((rand() & 1) == 0) ? -t : t;\n t2 = rand() % 16;\n sp10[2] = ((rand() & 1) == 0) ? -t2 + 0x40 : t2 + 0x40;\n ((void (*)(s32, void *, s32))func_8017DC70)(arg0, sp10, 1);\n }\n func_8002D4C8(0xBA0, 0);\n if (*(s32 *)(arg0 + 0x1C) % 10 == 0) {\n sp10[0] = *(u16 *)(arg0 + 0x6);\n sp10[1] = *(u16 *)(arg0 + 0xA);\n sp10[2] = *(u16 *)(arg0 + 0xE) + 0x50;\n for (i = 0; i < 10; i++) {\n s32 v;\n t = rand() % 80;\n base1 = *(s16 *)(arg0 + 0x6);\n if ((rand() & 1) == 0) {\n v = base1 - t;\n } else {\n v = base1 + t;\n }\n sp10[0] = v;\n t = rand() % 56;\n base2 = *(s16 *)(arg0 + 0xA);\n if ((rand() & 1) == 0) {\n v = base2 - t;\n } else {\n v = base2 + t;\n }\n sp10[1] = v;\n func_80143BDC(sp10);\n }\n }\n }\n\n if (func_8012BEE8(arg0)) {\n rot[2] = 0;\n func_8012B23C(arg0);\n return 1;\n }\n return 0;\n}\n"}
|
||||
{"ts": "2026-09-11 01:12:29", "label": "s104_e7", "rung": "E", "calib": {"head": "8310031fe", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_017/ov_SC02_017_jr_8017DF34.c", "fn": "func_80181E98", "addr": 2149064344, "aliases": null, "header": false, "includers": 0, "nhash_before": "3d2f4d8627845e45e8d3c4211c817ee299ce5948", "nhash_after": "103d754522a45718d2ae866e015793e2292eec19", "source": ".run/P36/agents/ov_SC02_017__func_80181E98/body.c", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.324, "objects": ["build/src/ov_SC02_017/ov_SC02_017_jr_8017DF34.o"], "before_text": "s32 func_80181E98_impl(void *arg)\n{\n extern void func_8012F214(s32 a0, s32 a1, s32 a2);\n extern s32 func_80013478(s32 a0, s32 a1);\n extern void func_8002D4C8(s32 a0, s32 a1);\n extern s32 D_8018E564;\n extern u8 D_800AF648;\n extern u8 D_80126B5C;\n\n struct {\n s16 in0[4];\n s16 in1[4];\n s16 sxy[2];\n s32 flag;\n } w;\n s32 t;\n s32 r;\n s32 k;\n\n func_8012F214((s32)arg, (s32)&D_8018E564, (s32)w.in0);\n gte_SetRotMatrix(&D_800AF648);\n gte_SetTransMatrix(&D_800AF648);\n gte_ldv0(w.in0);\n gte_rtps();\n gte_stsxy(w.sxy);\n gte_stflg(&w.flag);\n if (w.flag & 0xFFFFEFFF) {\n goto ret0;\n }\n t = w.sxy[0];\n if (t < 0) {\n t = -t;\n }\n if (t < 0xAB) {\n if (w.sxy[1] >= 0) {\n if (w.sxy[1] >= 0x83) {\n goto second;\n }\n goto pass;\n } else {\n if (-w.sxy[1] < 0x83) {\n goto pass;\n }\n }\n }\nsecond:\n w.in1[0] = *(s16 *)((s32)arg + 6);\n w.in1[1] = *(s16 *)((s32)arg + 10);\n w.in1[2] = *(s16 *)((s32)arg + 14);\n gte_ldv0(w.in1);\n gte_rtps();\n gte_stsxy(w.sxy);\n gte_stflg(&w.flag);\n if (w.flag & 0xFFFFEFFF) {\n goto ret0;\n }\n t = w.sxy[0];\n if (t < 0) {\n t = -t;\n }\n if (t >= 0x105) {\n goto ret0;\n }\n if (w.sxy[1] >= 0) {\n if (w.sxy[1] >= 0x8D) {\n goto ret0;\n }\n /* zero-byte cross_jump fence (jump.c find_cross_jump): without an insn\n here the two |sxy[1]| arms share the suffix `slti 0x8D; beq ret0`\n and cross_jump merges them into a single conditional-negate (-5 ins). */\n __asm__ __volatile__(\"\"); // !FAKE: barrier \u2014 NEEDED DIFFERS (P36 rung B tus8)\n goto pass;\n } else {\n if (-w.sxy[1] >= 0x8D) {\n goto ret0;\n }\n }\npass:\n r = func_80013478((s32)&D_80126B5C, (s32)w.in0);\n k = 0x5A0;\n if (r <= 0x41010) {\n k = 0x59F;\n }\n func_8002D4C8(k, 0);\n return 1;\nret0:\n return 0;\n}\n", "after_text": "s32 func_80181E98_impl(void *arg)\n{\n extern void func_8012F214(s32 a0, s32 a1, s32 a2);\n extern s32 func_80013478(s32 a0, s32 a1);\n extern void func_8002D4C8(s32 a0, s32 a1);\n extern s32 D_8018E564;\n extern u8 D_800AF648;\n extern u8 D_80126B5C;\n\n struct {\n s16 in0[4];\n s16 in1[4];\n s16 sxy[2];\n s32 flag;\n } w;\n s32 t;\n s32 r;\n s32 k;\n\n func_8012F214((s32)arg, (s32)&D_8018E564, (s32)w.in0);\n gte_SetRotMatrix(&D_800AF648);\n gte_SetTransMatrix(&D_800AF648);\n gte_ldv0(w.in0);\n gte_rtps();\n gte_stsxy(w.sxy);\n gte_stflg(&w.flag);\n if (w.flag & 0xFFFFEFFF) {\n return 0;\n }\n t = w.sxy[0];\n if (t < 0) {\n t = -t;\n }\n if (t >= 0xAB || (w.sxy[1] >= 0 ? w.sxy[1] >= 0x83 : -w.sxy[1] >= 0x83)) {\n w.in1[0] = *(s16 *)((s32)arg + 6);\n w.in1[1] = *(s16 *)((s32)arg + 10);\n w.in1[2] = *(s16 *)((s32)arg + 14);\n gte_ldv0(w.in1);\n gte_rtps();\n gte_stsxy(w.sxy);\n gte_stflg(&w.flag);\n if (w.flag & 0xFFFFEFFF) {\n return 0;\n }\n t = w.sxy[0];\n if (t < 0) {\n t = -t;\n }\n if (t >= 0x105 || (w.sxy[1] >= 0 ? w.sxy[1] >= 0x8D : -w.sxy[1] >= 0x8D)) {\n return 0;\n }\n }\n r = func_80013478((s32)&D_80126B5C, (s32)w.in0);\n k = 0x5A0;\n if (r <= 0x41010) {\n k = 0x59F;\n }\n func_8002D4C8(k, 0);\n return 1;\n}\n"}
|
||||
|
||||
@@ -5244,57 +5244,31 @@ s32 func_80181E98_impl(void *arg)
|
||||
gte_stsxy(w.sxy);
|
||||
gte_stflg(&w.flag);
|
||||
if (w.flag & 0xFFFFEFFF) {
|
||||
goto ret0;
|
||||
return 0;
|
||||
}
|
||||
t = w.sxy[0];
|
||||
if (t < 0) {
|
||||
t = -t;
|
||||
}
|
||||
if (t < 0xAB) {
|
||||
if (w.sxy[1] >= 0) {
|
||||
if (w.sxy[1] >= 0x83) {
|
||||
goto second;
|
||||
}
|
||||
goto pass;
|
||||
} else {
|
||||
if (-w.sxy[1] < 0x83) {
|
||||
goto pass;
|
||||
}
|
||||
if (t >= 0xAB || (w.sxy[1] >= 0 ? w.sxy[1] >= 0x83 : -w.sxy[1] >= 0x83)) {
|
||||
w.in1[0] = *(s16 *)((s32)arg + 6);
|
||||
w.in1[1] = *(s16 *)((s32)arg + 10);
|
||||
w.in1[2] = *(s16 *)((s32)arg + 14);
|
||||
gte_ldv0(w.in1);
|
||||
gte_rtps();
|
||||
gte_stsxy(w.sxy);
|
||||
gte_stflg(&w.flag);
|
||||
if (w.flag & 0xFFFFEFFF) {
|
||||
return 0;
|
||||
}
|
||||
t = w.sxy[0];
|
||||
if (t < 0) {
|
||||
t = -t;
|
||||
}
|
||||
if (t >= 0x105 || (w.sxy[1] >= 0 ? w.sxy[1] >= 0x8D : -w.sxy[1] >= 0x8D)) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
second:
|
||||
w.in1[0] = *(s16 *)((s32)arg + 6);
|
||||
w.in1[1] = *(s16 *)((s32)arg + 10);
|
||||
w.in1[2] = *(s16 *)((s32)arg + 14);
|
||||
gte_ldv0(w.in1);
|
||||
gte_rtps();
|
||||
gte_stsxy(w.sxy);
|
||||
gte_stflg(&w.flag);
|
||||
if (w.flag & 0xFFFFEFFF) {
|
||||
goto ret0;
|
||||
}
|
||||
t = w.sxy[0];
|
||||
if (t < 0) {
|
||||
t = -t;
|
||||
}
|
||||
if (t >= 0x105) {
|
||||
goto ret0;
|
||||
}
|
||||
if (w.sxy[1] >= 0) {
|
||||
if (w.sxy[1] >= 0x8D) {
|
||||
goto ret0;
|
||||
}
|
||||
/* zero-byte cross_jump fence (jump.c find_cross_jump): without an insn
|
||||
here the two |sxy[1]| arms share the suffix `slti 0x8D; beq ret0`
|
||||
and cross_jump merges them into a single conditional-negate (-5 ins). */
|
||||
__asm__ __volatile__(""); // !FAKE: barrier — NEEDED DIFFERS (P36 rung B tus8)
|
||||
goto pass;
|
||||
} else {
|
||||
if (-w.sxy[1] >= 0x8D) {
|
||||
goto ret0;
|
||||
}
|
||||
}
|
||||
pass:
|
||||
r = func_80013478((s32)&D_80126B5C, (s32)w.in0);
|
||||
k = 0x5A0;
|
||||
if (r <= 0x41010) {
|
||||
@@ -5302,8 +5276,6 @@ pass:
|
||||
}
|
||||
func_8002D4C8(k, 0);
|
||||
return 1;
|
||||
ret0:
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user