mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-10-04 16:28:11 -04:00
T3: batch t3_S49 — restruct: batch t3_S49 rung S — 50 files (TUs; 648 drawable) · 141 bodies: 111 sites → members / 45 kept / 106 skipped · levers off 0 · compiles 77 in 47 s wall · final 50/50 identical · written 23 files | R22 check-all: 218 passed, 0 failed of 218 | type_census: 1650 definitions (523 layouts, 53 duplicate classes, 0 variant camps) · 362981 cast sites in 52131 bodies over 8 base classes (4 forms + A, coverage OK) · 229 lying declarations / 24 callees (+5293 K&R sites, +418 cross-binary apart) · controls 4/4 (restruct_cycle)
This commit is contained in:
+152
-152
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"head": "f0954e2f0e",
|
||||
"head": "f8e355588e",
|
||||
"stamp": "588cbf38c6e4",
|
||||
"generated": "2026-10-02 00:08",
|
||||
"generated": "2026-10-02 00:18",
|
||||
"aliases": [
|
||||
"main",
|
||||
"md_SC07_004",
|
||||
@@ -21,176 +21,176 @@
|
||||
"main": {
|
||||
"objects": 85,
|
||||
"identical": 85,
|
||||
"seconds": 8.869000000000002,
|
||||
"mean_s": 0.104
|
||||
"seconds": 6.961,
|
||||
"mean_s": 0.082
|
||||
},
|
||||
"md_SC07_004": {
|
||||
"objects": 1,
|
||||
"identical": 1,
|
||||
"seconds": 0.525,
|
||||
"mean_s": 0.525
|
||||
"seconds": 0.534,
|
||||
"mean_s": 0.534
|
||||
},
|
||||
"ov_SC03_015": {
|
||||
"objects": 32,
|
||||
"identical": 32,
|
||||
"seconds": 5.020000000000001,
|
||||
"mean_s": 0.157
|
||||
"seconds": 4.966,
|
||||
"mean_s": 0.155
|
||||
},
|
||||
"ov_SC04_011": {
|
||||
"objects": 28,
|
||||
"identical": 28,
|
||||
"seconds": 4.191999999999999,
|
||||
"seconds": 4.192,
|
||||
"mean_s": 0.15
|
||||
}
|
||||
},
|
||||
"per_object_seconds": {
|
||||
"build/src/800.o": 0.805,
|
||||
"build/src/800_b.o": 0.093,
|
||||
"build/src/800_b_2.o": 0.384,
|
||||
"build/src/800_b_o0a.o": 0.104,
|
||||
"build/src/800_c.o": 0.271,
|
||||
"build/src/800b2.o": 0.103,
|
||||
"build/src/apicard1.o": 0.102,
|
||||
"build/src/apicard2.o": 0.089,
|
||||
"build/src/apicard3.o": 0.101,
|
||||
"build/src/apicard4.o": 0.112,
|
||||
"build/src/apicard5.o": 0.098,
|
||||
"build/src/apicard6.o": 0.104,
|
||||
"build/src/apicard7.o": 0.135,
|
||||
"build/src/boot.o": 0.142,
|
||||
"build/src/gap.o": 0.108,
|
||||
"build/src/libapi1.o": 0.075,
|
||||
"build/src/libapi2.o": 0.074,
|
||||
"build/src/libc2_1.o": 0.104,
|
||||
"build/src/libc2_2.o": 0.084,
|
||||
"build/src/libcd1.o": 0.094,
|
||||
"build/src/libcd2.o": 0.11,
|
||||
"build/src/libetc.o": 0.077,
|
||||
"build/src/libgpu.o": 0.107,
|
||||
"build/src/libgpu2.o": 0.097,
|
||||
"build/src/libgs1.o": 0.085,
|
||||
"build/src/libgs2.o": 0.147,
|
||||
"build/src/libgs3.o": 0.129,
|
||||
"build/src/libgs4.o": 0.095,
|
||||
"build/src/libgs5.o": 0.107,
|
||||
"build/src/libgs6.o": 0.119,
|
||||
"build/src/libgs7.o": 0.092,
|
||||
"build/src/libgs8.o": 0.113,
|
||||
"build/src/libgte1.o": 0.086,
|
||||
"build/src/libgte10.o": 0.108,
|
||||
"build/src/libgte11.o": 0.088,
|
||||
"build/src/libgte12.o": 0.107,
|
||||
"build/src/libgte13.o": 0.089,
|
||||
"build/src/libgte14.o": 0.105,
|
||||
"build/src/libgte15.o": 0.078,
|
||||
"build/src/libgte16.o": 0.068,
|
||||
"build/src/libgte17.o": 0.068,
|
||||
"build/src/libgte18.o": 0.069,
|
||||
"build/src/libgte19.o": 0.065,
|
||||
"build/src/libgte2.o": 0.069,
|
||||
"build/src/libgte20.o": 0.069,
|
||||
"build/src/libgte21.o": 0.07,
|
||||
"build/src/libgte22.o": 0.071,
|
||||
"build/src/libgte23.o": 0.075,
|
||||
"build/src/libgte24.o": 0.067,
|
||||
"build/src/libgte25.o": 0.072,
|
||||
"build/src/libgte26.o": 0.073,
|
||||
"build/src/libgte27.o": 0.092,
|
||||
"build/src/libgte28.o": 0.083,
|
||||
"build/src/libgte29.o": 0.109,
|
||||
"build/src/libgte3.o": 0.086,
|
||||
"build/src/libgte30.o": 0.086,
|
||||
"build/src/libgte4.o": 0.083,
|
||||
"build/src/libgte5.o": 0.101,
|
||||
"build/src/libgte6.o": 0.089,
|
||||
"build/src/libgte7.o": 0.093,
|
||||
"build/src/libgte8.o": 0.096,
|
||||
"build/src/libgte9.o": 0.092,
|
||||
"build/src/libmcrd1.o": 0.118,
|
||||
"build/src/libmcrd2.o": 0.092,
|
||||
"build/src/libpad1.o": 0.097,
|
||||
"build/src/libpad2.o": 0.094,
|
||||
"build/src/sgap.o": 0.083,
|
||||
"build/src/sgap_2.o": 0.084,
|
||||
"build/src/sgap_3.o": 0.081,
|
||||
"build/src/sgap_4.o": 0.078,
|
||||
"build/src/sgap_5.o": 0.075,
|
||||
"build/src/sgap_6.o": 0.079,
|
||||
"build/src/sgap_8.o": 0.076,
|
||||
"build/src/snd1.o": 0.089,
|
||||
"build/src/snd10.o": 0.08,
|
||||
"build/src/snd11.o": 0.087,
|
||||
"build/src/snd12.o": 0.075,
|
||||
"build/src/snd2.o": 0.078,
|
||||
"build/src/snd3.o": 0.071,
|
||||
"build/src/snd4.o": 0.071,
|
||||
"build/src/snd5.o": 0.078,
|
||||
"build/src/snd6.o": 0.078,
|
||||
"build/src/snd7.o": 0.08,
|
||||
"build/src/snd8.o": 0.076,
|
||||
"build/src/snd9.o": 0.082,
|
||||
"build/src/md_SC07_004/md_SC07_004.o": 0.525,
|
||||
"build/src/ov_SC03_015/ov_SC03_015.o": 0.157,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_after.o": 0.522,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.397,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.074,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.085,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.131,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.184,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.118,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.093,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.081,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.184,
|
||||
"build/src/800.o": 0.739,
|
||||
"build/src/800_b.o": 0.096,
|
||||
"build/src/800_b_2.o": 0.325,
|
||||
"build/src/800_b_o0a.o": 0.064,
|
||||
"build/src/800_c.o": 0.199,
|
||||
"build/src/800b2.o": 0.079,
|
||||
"build/src/apicard1.o": 0.097,
|
||||
"build/src/apicard2.o": 0.073,
|
||||
"build/src/apicard3.o": 0.063,
|
||||
"build/src/apicard4.o": 0.066,
|
||||
"build/src/apicard5.o": 0.088,
|
||||
"build/src/apicard6.o": 0.076,
|
||||
"build/src/apicard7.o": 0.066,
|
||||
"build/src/boot.o": 0.109,
|
||||
"build/src/gap.o": 0.078,
|
||||
"build/src/libapi1.o": 0.085,
|
||||
"build/src/libapi2.o": 0.062,
|
||||
"build/src/libc2_1.o": 0.064,
|
||||
"build/src/libc2_2.o": 0.061,
|
||||
"build/src/libcd1.o": 0.089,
|
||||
"build/src/libcd2.o": 0.064,
|
||||
"build/src/libetc.o": 0.064,
|
||||
"build/src/libgpu.o": 0.066,
|
||||
"build/src/libgpu2.o": 0.074,
|
||||
"build/src/libgs1.o": 0.056,
|
||||
"build/src/libgs2.o": 0.064,
|
||||
"build/src/libgs3.o": 0.061,
|
||||
"build/src/libgs4.o": 0.067,
|
||||
"build/src/libgs5.o": 0.064,
|
||||
"build/src/libgs6.o": 0.075,
|
||||
"build/src/libgs7.o": 0.063,
|
||||
"build/src/libgs8.o": 0.058,
|
||||
"build/src/libgte1.o": 0.07,
|
||||
"build/src/libgte10.o": 0.059,
|
||||
"build/src/libgte11.o": 0.073,
|
||||
"build/src/libgte12.o": 0.06,
|
||||
"build/src/libgte13.o": 0.067,
|
||||
"build/src/libgte14.o": 0.062,
|
||||
"build/src/libgte15.o": 0.062,
|
||||
"build/src/libgte16.o": 0.06,
|
||||
"build/src/libgte17.o": 0.062,
|
||||
"build/src/libgte18.o": 0.06,
|
||||
"build/src/libgte19.o": 0.057,
|
||||
"build/src/libgte2.o": 0.064,
|
||||
"build/src/libgte20.o": 0.063,
|
||||
"build/src/libgte21.o": 0.062,
|
||||
"build/src/libgte22.o": 0.066,
|
||||
"build/src/libgte23.o": 0.064,
|
||||
"build/src/libgte24.o": 0.06,
|
||||
"build/src/libgte25.o": 0.068,
|
||||
"build/src/libgte26.o": 0.063,
|
||||
"build/src/libgte27.o": 0.068,
|
||||
"build/src/libgte28.o": 0.061,
|
||||
"build/src/libgte29.o": 0.062,
|
||||
"build/src/libgte3.o": 0.063,
|
||||
"build/src/libgte30.o": 0.067,
|
||||
"build/src/libgte4.o": 0.066,
|
||||
"build/src/libgte5.o": 0.07,
|
||||
"build/src/libgte6.o": 0.064,
|
||||
"build/src/libgte7.o": 0.065,
|
||||
"build/src/libgte8.o": 0.067,
|
||||
"build/src/libgte9.o": 0.067,
|
||||
"build/src/libmcrd1.o": 0.073,
|
||||
"build/src/libmcrd2.o": 0.065,
|
||||
"build/src/libpad1.o": 0.065,
|
||||
"build/src/libpad2.o": 0.075,
|
||||
"build/src/sgap.o": 0.064,
|
||||
"build/src/sgap_2.o": 0.066,
|
||||
"build/src/sgap_3.o": 0.065,
|
||||
"build/src/sgap_4.o": 0.11,
|
||||
"build/src/sgap_5.o": 0.066,
|
||||
"build/src/sgap_6.o": 0.087,
|
||||
"build/src/sgap_8.o": 0.071,
|
||||
"build/src/snd1.o": 0.071,
|
||||
"build/src/snd10.o": 0.065,
|
||||
"build/src/snd11.o": 0.068,
|
||||
"build/src/snd12.o": 0.068,
|
||||
"build/src/snd2.o": 0.08,
|
||||
"build/src/snd3.o": 0.065,
|
||||
"build/src/snd4.o": 0.088,
|
||||
"build/src/snd5.o": 0.067,
|
||||
"build/src/snd6.o": 0.081,
|
||||
"build/src/snd7.o": 0.068,
|
||||
"build/src/snd8.o": 0.079,
|
||||
"build/src/snd9.o": 0.077,
|
||||
"build/src/md_SC07_004/md_SC07_004.o": 0.534,
|
||||
"build/src/ov_SC03_015/ov_SC03_015.o": 0.137,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_after.o": 0.499,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.385,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.08,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.079,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.126,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.181,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.132,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.108,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.083,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.198,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.09,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.187,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.104,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.079,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.084,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.107,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.478,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.272,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.115,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.221,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.069,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.116,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.071,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.161,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.218,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.064,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.273,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.062,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.072,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.073,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.078,
|
||||
"build/src/ov_SC04_011/ov_SC04_011.o": 0.133,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_after.o": 0.422,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.357,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.061,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.064,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.13,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.158,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.184,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.1,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.078,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.08,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.101,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.465,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.279,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.11,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.195,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.074,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.104,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.081,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.177,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.214,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.063,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.282,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.055,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.075,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.07,
|
||||
"build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.081,
|
||||
"build/src/ov_SC04_011/ov_SC04_011.o": 0.128,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_after.o": 0.438,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.35,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.065,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.065,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.127,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.169,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.126,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.09,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.074,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.188,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.083,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.172,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.101,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.084,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.077,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.184,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.078,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.175,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.098,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.07,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.081,
|
||||
"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.359,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.222,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.108,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.182,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.084,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.104,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.355,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.225,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.101,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.186,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.07,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.101,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.081,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.103,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.435,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.048,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.061
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.1,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.071,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.119,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.434,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.049,
|
||||
"build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.06
|
||||
},
|
||||
"ok": true,
|
||||
"seconds": 2.2
|
||||
"seconds": 2.0
|
||||
}
|
||||
|
||||
File diff suppressed because one or more lines are too long
+358
-142
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"summary": {
|
||||
"head": "f0954e2f0e",
|
||||
"src_stamp": "a36ff8efb2f0c158",
|
||||
"head": "f8e355588e",
|
||||
"src_stamp": "9977217b385ea2f7",
|
||||
"tool_stamp": "e17c5fa676",
|
||||
"when": "2026-10-02T06:15:44Z",
|
||||
"when": "2026-10-02T06:25:05Z",
|
||||
"files": 7306,
|
||||
"tus": 4121,
|
||||
"headers": 3181,
|
||||
@@ -36,66 +36,66 @@
|
||||
},
|
||||
"casts": {
|
||||
"by_form": {
|
||||
"P": 280014,
|
||||
"P": 279884,
|
||||
"I": 54088,
|
||||
"X": 13790,
|
||||
"A": 18889,
|
||||
"C": 150184,
|
||||
"C": 150256,
|
||||
"M": 15219,
|
||||
"K": 19550
|
||||
"K": 19569
|
||||
},
|
||||
"raw_counts": {
|
||||
"P": 280014,
|
||||
"P": 279884,
|
||||
"I": 54088,
|
||||
"X": 13790,
|
||||
"A": 18889,
|
||||
"C": 150184,
|
||||
"C": 150256,
|
||||
"M": 15219,
|
||||
"K": 19550
|
||||
"K": 19569
|
||||
},
|
||||
"coverage_ok": true,
|
||||
"refused": 0,
|
||||
"deref_total": 363111,
|
||||
"deref_total": 362981,
|
||||
"addr_form": 18889,
|
||||
"typed_cast_member": 150184,
|
||||
"bodies": 52139,
|
||||
"typed_cast_member": 150256,
|
||||
"bodies": 52131,
|
||||
"by_bclass": {
|
||||
"local": 126118,
|
||||
"param": 174124,
|
||||
"global": 8738,
|
||||
"local": 126103,
|
||||
"param": 174077,
|
||||
"global": 8725,
|
||||
"gaddr": 40113,
|
||||
"nested": 10905,
|
||||
"nested": 10850,
|
||||
"ident": 161,
|
||||
"other": 1614,
|
||||
"addr-of": 1338
|
||||
},
|
||||
"by_width": {
|
||||
"s2": 104969,
|
||||
"s4": 96489,
|
||||
"u2": 90626,
|
||||
"s2": 104949,
|
||||
"s4": 96445,
|
||||
"u2": 90562,
|
||||
"u1": 36024,
|
||||
"agg": 13415,
|
||||
"p4": 11109,
|
||||
"u4": 8579,
|
||||
"s1": 1900
|
||||
"s1": 1898
|
||||
},
|
||||
"readability_raw_regex": 282851,
|
||||
"readability_raw_regex": 282721,
|
||||
"abs_casts": 0,
|
||||
"top_bases": [
|
||||
[
|
||||
"param",
|
||||
"param_1",
|
||||
58173
|
||||
58171
|
||||
],
|
||||
[
|
||||
"param",
|
||||
"arg0",
|
||||
46173
|
||||
46171
|
||||
],
|
||||
[
|
||||
"param",
|
||||
"a0",
|
||||
41985
|
||||
41942
|
||||
],
|
||||
[
|
||||
"local",
|
||||
@@ -250,7 +250,7 @@
|
||||
[
|
||||
"local",
|
||||
"pv",
|
||||
1553
|
||||
1538
|
||||
],
|
||||
[
|
||||
"param",
|
||||
@@ -285,13 +285,13 @@
|
||||
],
|
||||
"macros": {
|
||||
"CAST_SIGN": 7954,
|
||||
"CAST_WIDTH": 9538,
|
||||
"CAST_WIDTH": 9551,
|
||||
"CAST_NONSTRUCT": 312,
|
||||
"CAST_ALIAS": 1111,
|
||||
"CAST_ALIAS": 1117,
|
||||
"CAST_MISALIGNED": 623
|
||||
},
|
||||
"check_raw": {
|
||||
"P": 280009,
|
||||
"P": 279879,
|
||||
"I": 54088,
|
||||
"X": 13790,
|
||||
"M": 15218
|
||||
@@ -45727,6 +45727,17 @@
|
||||
"bclass": "local",
|
||||
"off": 22
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC02_041/ov_SC02_041_jr_80178D40.c",
|
||||
"fn": "func_80178D40",
|
||||
"line": 3132,
|
||||
"pos": 114688,
|
||||
"name": "CAST_WIDTH",
|
||||
"cls": "WIDTH",
|
||||
"base": "D_801B8B48",
|
||||
"bclass": "global",
|
||||
"off": 4
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC02_041/ov_SC02_041_jr_8017BEBC.c",
|
||||
"fn": "func_8017CE3C",
|
||||
@@ -48730,6 +48741,17 @@
|
||||
"bclass": "local",
|
||||
"off": 22
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_002/ov_SC03_002_jr_80178D40.c",
|
||||
"fn": "func_80178D40",
|
||||
"line": 3132,
|
||||
"pos": 114688,
|
||||
"name": "CAST_WIDTH",
|
||||
"cls": "WIDTH",
|
||||
"base": "D_801CB248",
|
||||
"bclass": "global",
|
||||
"off": 4
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_002/ov_SC03_002_jr_8017AE2C.c",
|
||||
"fn": "func_8017C3E4",
|
||||
@@ -50402,6 +50424,17 @@
|
||||
"bclass": "local",
|
||||
"off": 22
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_003/ov_SC03_003_jr_80178D40.c",
|
||||
"fn": "func_80178D40",
|
||||
"line": 3132,
|
||||
"pos": 114688,
|
||||
"name": "CAST_WIDTH",
|
||||
"cls": "WIDTH",
|
||||
"base": "D_8018F550",
|
||||
"bclass": "global",
|
||||
"off": 4
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_006/ov_SC03_006_after.c",
|
||||
"fn": "func_801523F4",
|
||||
@@ -50941,6 +50974,17 @@
|
||||
"bclass": "local",
|
||||
"off": 22
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_006/ov_SC03_006_jr_80178D40.c",
|
||||
"fn": "func_80178D40",
|
||||
"line": 3132,
|
||||
"pos": 114688,
|
||||
"name": "CAST_WIDTH",
|
||||
"cls": "WIDTH",
|
||||
"base": "D_801F6EC8",
|
||||
"bclass": "global",
|
||||
"off": 4
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_006/ov_SC03_006_jr_8017AE2C.c",
|
||||
"fn": "func_8017BEF8",
|
||||
@@ -54153,6 +54197,17 @@
|
||||
"bclass": "local",
|
||||
"off": 22
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_007/ov_SC03_007_jr_80178D40.c",
|
||||
"fn": "func_80178D40",
|
||||
"line": 3132,
|
||||
"pos": 114688,
|
||||
"name": "CAST_WIDTH",
|
||||
"cls": "WIDTH",
|
||||
"base": "D_801E9820",
|
||||
"bclass": "global",
|
||||
"off": 4
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_007/ov_SC03_007_jr_8017AE2C.c",
|
||||
"fn": "func_8017E57C",
|
||||
@@ -56716,6 +56771,17 @@
|
||||
"bclass": "local",
|
||||
"off": 22
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_010/ov_SC03_010_jr_80178D40.c",
|
||||
"fn": "func_80178D40",
|
||||
"line": 3132,
|
||||
"pos": 114688,
|
||||
"name": "CAST_WIDTH",
|
||||
"cls": "WIDTH",
|
||||
"base": "D_8019FA80",
|
||||
"bclass": "global",
|
||||
"off": 4
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_010/ov_SC03_010_jr_8017C730.c",
|
||||
"fn": "func_8017E3B8",
|
||||
@@ -56870,6 +56936,39 @@
|
||||
"bclass": "local",
|
||||
"off": 20
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_010/ov_SC03_010_jr_8017F6C0.c",
|
||||
"fn": "func_8017F920",
|
||||
"line": 2969,
|
||||
"pos": 105755,
|
||||
"name": "CAST_ALIAS",
|
||||
"cls": "SCHED-ALIAS",
|
||||
"base": "a0",
|
||||
"bclass": "param",
|
||||
"off": 120
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_010/ov_SC03_010_jr_8017F6C0.c",
|
||||
"fn": "func_8017F920",
|
||||
"line": 2975,
|
||||
"pos": 105905,
|
||||
"name": "CAST_ALIAS",
|
||||
"cls": "SCHED-ALIAS",
|
||||
"base": "a0",
|
||||
"bclass": "param",
|
||||
"off": 118
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_010/ov_SC03_010_jr_8017F6C0.c",
|
||||
"fn": "func_8017F920",
|
||||
"line": 2976,
|
||||
"pos": 105941,
|
||||
"name": "CAST_ALIAS",
|
||||
"cls": "SCHED-ALIAS",
|
||||
"base": "a0",
|
||||
"bclass": "param",
|
||||
"off": 92
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_011/ov_SC03_011_after.c",
|
||||
"fn": "func_801523F4",
|
||||
@@ -57409,6 +57508,17 @@
|
||||
"bclass": "local",
|
||||
"off": 22
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_011/ov_SC03_011_jr_80178D40.c",
|
||||
"fn": "func_80178D40",
|
||||
"line": 3132,
|
||||
"pos": 114688,
|
||||
"name": "CAST_WIDTH",
|
||||
"cls": "WIDTH",
|
||||
"base": "D_801A1D18",
|
||||
"bclass": "global",
|
||||
"off": 4
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_011/ov_SC03_011_jr_8017C730.c",
|
||||
"fn": "func_8017E65C",
|
||||
@@ -58223,6 +58333,17 @@
|
||||
"bclass": "local",
|
||||
"off": 22
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_012/ov_SC03_012_jr_80178D40.c",
|
||||
"fn": "func_80178D40",
|
||||
"line": 3132,
|
||||
"pos": 114688,
|
||||
"name": "CAST_WIDTH",
|
||||
"cls": "WIDTH",
|
||||
"base": "D_80194B38",
|
||||
"bclass": "global",
|
||||
"off": 4
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_012/ov_SC03_012_jr_8017AE2C.c",
|
||||
"fn": "func_8017D8CC",
|
||||
@@ -58806,6 +58927,17 @@
|
||||
"bclass": "local",
|
||||
"off": 22
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_013/ov_SC03_013_jr_80178D40.c",
|
||||
"fn": "func_80178D40",
|
||||
"line": 3132,
|
||||
"pos": 114688,
|
||||
"name": "CAST_WIDTH",
|
||||
"cls": "WIDTH",
|
||||
"base": "D_801ACE08",
|
||||
"bclass": "global",
|
||||
"off": 4
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_013/ov_SC03_013_jr_8017C730.c",
|
||||
"fn": "func_8017F0A0",
|
||||
@@ -59224,6 +59356,39 @@
|
||||
"bclass": "param",
|
||||
"off": 2
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_013/ov_SC03_013_jr_801806F8.c",
|
||||
"fn": "func_80180958",
|
||||
"line": 2980,
|
||||
"pos": 106987,
|
||||
"name": "CAST_ALIAS",
|
||||
"cls": "SCHED-ALIAS",
|
||||
"base": "a0",
|
||||
"bclass": "param",
|
||||
"off": 120
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_013/ov_SC03_013_jr_801806F8.c",
|
||||
"fn": "func_80180958",
|
||||
"line": 2986,
|
||||
"pos": 107137,
|
||||
"name": "CAST_ALIAS",
|
||||
"cls": "SCHED-ALIAS",
|
||||
"base": "a0",
|
||||
"bclass": "param",
|
||||
"off": 118
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_013/ov_SC03_013_jr_801806F8.c",
|
||||
"fn": "func_80180958",
|
||||
"line": 2987,
|
||||
"pos": 107173,
|
||||
"name": "CAST_ALIAS",
|
||||
"cls": "SCHED-ALIAS",
|
||||
"base": "a0",
|
||||
"bclass": "param",
|
||||
"off": 92
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_014/ov_SC03_014_after.c",
|
||||
"fn": "func_801523F4",
|
||||
@@ -59763,6 +59928,17 @@
|
||||
"bclass": "local",
|
||||
"off": 22
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_014/ov_SC03_014_jr_80178D40.c",
|
||||
"fn": "func_80178D40",
|
||||
"line": 3132,
|
||||
"pos": 114688,
|
||||
"name": "CAST_WIDTH",
|
||||
"cls": "WIDTH",
|
||||
"base": "D_801EA388",
|
||||
"bclass": "global",
|
||||
"off": 4
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_014/ov_SC03_014_jr_8017AE2C.c",
|
||||
"fn": "func_8017C6A0",
|
||||
@@ -61633,6 +61809,17 @@
|
||||
"bclass": "local",
|
||||
"off": 22
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_023/ov_SC03_023_jr_80178D40.c",
|
||||
"fn": "func_80178D40",
|
||||
"line": 3132,
|
||||
"pos": 114688,
|
||||
"name": "CAST_WIDTH",
|
||||
"cls": "WIDTH",
|
||||
"base": "D_80198760",
|
||||
"bclass": "global",
|
||||
"off": 4
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_023/ov_SC03_023_jr_8017AE2C.c",
|
||||
"fn": "func_8017DDF8",
|
||||
@@ -62458,6 +62645,17 @@
|
||||
"bclass": "local",
|
||||
"off": 22
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_024/ov_SC03_024_jr_80178D40.c",
|
||||
"fn": "func_80178D40",
|
||||
"line": 3132,
|
||||
"pos": 114688,
|
||||
"name": "CAST_WIDTH",
|
||||
"cls": "WIDTH",
|
||||
"base": "D_801C0CF8",
|
||||
"bclass": "global",
|
||||
"off": 4
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_024/ov_SC03_024_jr_8017AE2C.c",
|
||||
"fn": "func_8017C6A0",
|
||||
@@ -64163,6 +64361,17 @@
|
||||
"bclass": "local",
|
||||
"off": 22
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_028/ov_SC03_028_jr_80178D40.c",
|
||||
"fn": "func_80178D40",
|
||||
"line": 3132,
|
||||
"pos": 114688,
|
||||
"name": "CAST_WIDTH",
|
||||
"cls": "WIDTH",
|
||||
"base": "D_801EB030",
|
||||
"bclass": "global",
|
||||
"off": 4
|
||||
},
|
||||
{
|
||||
"tu": "src/ov_SC03_028/ov_SC03_028_jr_8017AE2C.c",
|
||||
"fn": "func_8017C8D0",
|
||||
@@ -216396,66 +216605,88 @@
|
||||
"cross_callees": 96
|
||||
},
|
||||
"struct_map": {
|
||||
"types": 18643,
|
||||
"explained_sites": 359190,
|
||||
"deref_sites": 363111,
|
||||
"types": 18792,
|
||||
"explained_sites": 359060,
|
||||
"deref_sites": 362981,
|
||||
"explained_pct": 98.9,
|
||||
"unassigned_sites": 3921,
|
||||
"conflicts": 838,
|
||||
"suspect": 10,
|
||||
"conflicts": 852,
|
||||
"suspect": 11,
|
||||
"evidence": {
|
||||
"param": 39382,
|
||||
"arg": 10890,
|
||||
"assign": 19334,
|
||||
"ret-of": 5813,
|
||||
"assign&": 1286,
|
||||
"return": 1534,
|
||||
"arg&": 316,
|
||||
"field": 6925,
|
||||
"arg": 10920,
|
||||
"ret-of": 5738,
|
||||
"assign": 19270,
|
||||
"return": 1531,
|
||||
"assign&": 1265,
|
||||
"arg&": 276,
|
||||
"field": 6917,
|
||||
"nested": 9
|
||||
},
|
||||
"vetoed": {
|
||||
"arg-conduit": 139143,
|
||||
"arg-conduit": 139163,
|
||||
"arg&-conduit": 14638,
|
||||
"ret-of-multisource": 6618,
|
||||
"arg&-no-overlap": 3017,
|
||||
"assign&-multisource": 12225,
|
||||
"assign-multisource": 33293,
|
||||
"field-multisource": 5656,
|
||||
"arg-no-overlap": 26865,
|
||||
"ret-of": 446,
|
||||
"assign": 297,
|
||||
"return": 3,
|
||||
"assign&": 318,
|
||||
"arg": 37,
|
||||
"field": 16
|
||||
"assign-multisource": 33292,
|
||||
"ret-of-multisource": 6631,
|
||||
"arg-no-overlap": 38762,
|
||||
"arg&-no-overlap": 3405,
|
||||
"field-multisource": 5641,
|
||||
"ret-of": 586,
|
||||
"assign": 357,
|
||||
"assign&": 338,
|
||||
"arg": 132,
|
||||
"return": 6,
|
||||
"field": 32
|
||||
},
|
||||
"singletons": 14685,
|
||||
"multi_body": 3958,
|
||||
"sites_in_multi_body": 303574,
|
||||
"singletons": 14791,
|
||||
"multi_body": 4001,
|
||||
"sites_in_multi_body": 302931,
|
||||
"top": [
|
||||
{
|
||||
"name": "Unkstruct_800D3888",
|
||||
"sites": 44788,
|
||||
"bodies": 7524,
|
||||
"name": "Unkstruct_80126B58",
|
||||
"sites": 23242,
|
||||
"bodies": 3018,
|
||||
"size_hint": 588,
|
||||
"fields": 221,
|
||||
"conflicts": 50,
|
||||
"sign_mixed": 75,
|
||||
"fields": 165,
|
||||
"conflicts": 49,
|
||||
"sign_mixed": 50,
|
||||
"merges": {
|
||||
"arg&": 295,
|
||||
"param": 11266,
|
||||
"arg": 8076,
|
||||
"assign": 8627,
|
||||
"return": 709,
|
||||
"ret-of": 2456,
|
||||
"assign&": 150,
|
||||
"field": 1266
|
||||
"assign&": 104,
|
||||
"param": 2154,
|
||||
"arg": 1121,
|
||||
"assign": 43,
|
||||
"field": 43
|
||||
},
|
||||
"globals_at": [
|
||||
"D_80126B58"
|
||||
],
|
||||
"globals_ptr": [
|
||||
"D_80126B58"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Unkstruct_800B5CB8",
|
||||
"sites": 20550,
|
||||
"bodies": 4494,
|
||||
"size_hint": 268,
|
||||
"fields": 128,
|
||||
"conflicts": 50,
|
||||
"sign_mixed": 53,
|
||||
"merges": {
|
||||
"arg&": 255,
|
||||
"assign&": 19,
|
||||
"assign": 8633,
|
||||
"param": 9098,
|
||||
"ret-of": 2426,
|
||||
"arg": 6960,
|
||||
"return": 705,
|
||||
"field": 1123
|
||||
},
|
||||
"globals_at": [
|
||||
"D_800B5CB8",
|
||||
"D_800D3888",
|
||||
"D_800DE5A0",
|
||||
"D_801269F0"
|
||||
"D_80181448"
|
||||
],
|
||||
"globals_ptr": [
|
||||
"D_8006386C",
|
||||
@@ -216546,31 +216777,6 @@
|
||||
"globals_at": [],
|
||||
"globals_ptr": []
|
||||
},
|
||||
{
|
||||
"name": "Unkstruct_80126948",
|
||||
"sites": 3284,
|
||||
"bodies": 1098,
|
||||
"size_hint": 164,
|
||||
"fields": 34,
|
||||
"conflicts": 0,
|
||||
"sign_mixed": 10,
|
||||
"merges": {
|
||||
"arg&": 1,
|
||||
"assign": 104,
|
||||
"param": 8,
|
||||
"arg": 15,
|
||||
"assign&": 4
|
||||
},
|
||||
"globals_at": [
|
||||
"D_80126948",
|
||||
"D_80126E60"
|
||||
],
|
||||
"globals_ptr": [
|
||||
"D_80114EE8",
|
||||
"D_801151D4",
|
||||
"D_80126948"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Unkstruct_57a28935",
|
||||
"sites": 3271,
|
||||
@@ -216610,6 +216816,31 @@
|
||||
"globals_at": [],
|
||||
"globals_ptr": []
|
||||
},
|
||||
{
|
||||
"name": "Unkstruct_80126948",
|
||||
"sites": 3034,
|
||||
"bodies": 848,
|
||||
"size_hint": 164,
|
||||
"fields": 34,
|
||||
"conflicts": 0,
|
||||
"sign_mixed": 10,
|
||||
"merges": {
|
||||
"arg&": 1,
|
||||
"assign": 104,
|
||||
"param": 6,
|
||||
"arg": 14,
|
||||
"assign&": 4
|
||||
},
|
||||
"globals_at": [
|
||||
"D_80126948",
|
||||
"D_80126E60"
|
||||
],
|
||||
"globals_ptr": [
|
||||
"D_80114EE8",
|
||||
"D_801151D4",
|
||||
"D_80126948"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Unkstruct_a2c8734a",
|
||||
"sites": 2604,
|
||||
@@ -216790,21 +217021,6 @@
|
||||
},
|
||||
"globals_at": [],
|
||||
"globals_ptr": []
|
||||
},
|
||||
{
|
||||
"name": "Unkstruct_cd1bacd2",
|
||||
"sites": 1764,
|
||||
"bodies": 126,
|
||||
"size_hint": 56,
|
||||
"fields": 10,
|
||||
"conflicts": 0,
|
||||
"sign_mixed": 0,
|
||||
"merges": {
|
||||
"param": 2,
|
||||
"assign": 2
|
||||
},
|
||||
"globals_at": [],
|
||||
"globals_ptr": []
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -216838,8 +217054,8 @@
|
||||
"block_frames": 629
|
||||
},
|
||||
"global_blocks": {
|
||||
"n": 2122,
|
||||
"members": 14248,
|
||||
"n": 2126,
|
||||
"members": 14263,
|
||||
"top": [
|
||||
{
|
||||
"base": "0x800cf10c",
|
||||
@@ -217017,9 +217233,9 @@
|
||||
"path": ".run/P37/census/parked.tsv"
|
||||
},
|
||||
"timing": {
|
||||
"walk_s": 41.3,
|
||||
"decls_s": 190.8,
|
||||
"total_s": 200.5
|
||||
"walk_s": 47.8,
|
||||
"decls_s": 190.9,
|
||||
"total_s": 200.1
|
||||
}
|
||||
},
|
||||
"dup_layout_classes": [
|
||||
@@ -218813,10 +219029,10 @@
|
||||
"tier": 3,
|
||||
"camps": [
|
||||
[
|
||||
"Pair_8013AD38"
|
||||
"Range_80189A70"
|
||||
],
|
||||
[
|
||||
"Range_80189A70"
|
||||
"Pair_8013AD38"
|
||||
],
|
||||
[
|
||||
"Entry"
|
||||
@@ -219082,30 +219298,6 @@
|
||||
"Rec_80180808"
|
||||
]
|
||||
},
|
||||
{
|
||||
"lhash": "ac91ae2d8aa0",
|
||||
"size": 28,
|
||||
"n_names": 3,
|
||||
"n_defs": 72,
|
||||
"canon": 3,
|
||||
"in_c": 59,
|
||||
"names": [
|
||||
"G3",
|
||||
"S800D22E4",
|
||||
"vec"
|
||||
],
|
||||
"tier": 3,
|
||||
"camps": [
|
||||
[],
|
||||
[
|
||||
"G3"
|
||||
]
|
||||
],
|
||||
"opaque_names": [
|
||||
"S800D22E4",
|
||||
"vec"
|
||||
]
|
||||
},
|
||||
{
|
||||
"lhash": "9568f57fb00f",
|
||||
"size": 20,
|
||||
@@ -219156,6 +219348,30 @@
|
||||
"Blk32_801898F4"
|
||||
]
|
||||
},
|
||||
{
|
||||
"lhash": "ac91ae2d8aa0",
|
||||
"size": 28,
|
||||
"n_names": 3,
|
||||
"n_defs": 72,
|
||||
"canon": 3,
|
||||
"in_c": 59,
|
||||
"names": [
|
||||
"G3",
|
||||
"S800D22E4",
|
||||
"vec"
|
||||
],
|
||||
"tier": 3,
|
||||
"camps": [
|
||||
[],
|
||||
[
|
||||
"G3"
|
||||
]
|
||||
],
|
||||
"opaque_names": [
|
||||
"S800D22E4",
|
||||
"vec"
|
||||
]
|
||||
},
|
||||
{
|
||||
"lhash": "355775b26f45",
|
||||
"size": 20,
|
||||
|
||||
@@ -1,33 +1,33 @@
|
||||
type_census — 2026-10-02T06:15:44Z at f0954e2f0e (src stamp a36ff8efb2f0c158, tool e17c5fa676); 7306 files (4121 TUs + 3181 headers), 99109 function definitions; walk 41.3 s, total 200.5 s
|
||||
type_census — 2026-10-02T06:25:05Z at f8e355588e (src stamp 9977217b385ea2f7, tool e17c5fa676); 7306 files (4121 TUs + 3181 headers), 99109 function definitions; walk 47.8 s, total 200.1 s
|
||||
|
||||
DEFINITIONS 1650 struct/union bodies (+0 enums): canonical header 1021 · .c file-scope 0 · .c block-scope 600 · per-function shared headers 29 · other headers 0 · include/ 326
|
||||
1024 distinct names · 523 distinct layouts (0 unresolved) · 53 duplicate classes covering 496 names (tier 1 0 same-named, tier 2 53 opaque; 44 layout-twin classes / 472 names kept apart) · 42 exact-text classes / 546 copies · 0 VARIANT names (>1 layout) · 55 dead canonical names · 0 canonical names redefined in .c · 4300 scalar/alias typedefs · 145 forward decls
|
||||
CAST SITES deref 363111 = P 280014 + I 54088 + X 13790 + M 15219 (+ A address-of 18889; + C typed cast-member 150184) in 52139 bodies · coverage OK (raw {'P': 280014, 'I': 54088, 'X': 13790, 'A': 18889, 'C': 150184, 'M': 15219, 'K': 19550}) · refused 0 · absolute 0 · readability regex over raw text 282851
|
||||
by base: param 174124 · local 126118 · gaddr 40113 · nested 10905 · global 8738 · other 1614 · addr-of 1338 · ident 161
|
||||
by width: s2 104969 · s4 96489 · u2 90626 · u1 36024 · agg 13415 · p4 11109 · u4 8579 · s1 1900
|
||||
top bases: param_1(param) 58173 · arg0(param) 46173 · a0(param) 41985 · p(local) 13235 · cach(local) 8246 · buf(local) 7056 · s0(local) 6770 · s1(local) 6454 · p(param) 6220 · flag(local) 5453 · dst(local) 4853 · iVar2(local) 4714 · iVar1(local) 3811 · cur(local) 3375 · e(local) 3103 · src(local) 2599
|
||||
CAST SITES deref 362981 = P 279884 + I 54088 + X 13790 + M 15219 (+ A address-of 18889; + C typed cast-member 150256) in 52131 bodies · coverage OK (raw {'P': 279884, 'I': 54088, 'X': 13790, 'A': 18889, 'C': 150256, 'M': 15219, 'K': 19569}) · refused 0 · absolute 0 · readability regex over raw text 282721
|
||||
by base: param 174077 · local 126103 · gaddr 40113 · nested 10850 · global 8725 · other 1614 · addr-of 1338 · ident 161
|
||||
by width: s2 104949 · s4 96445 · u2 90562 · u1 36024 · agg 13415 · p4 11109 · u4 8579 · s1 1898
|
||||
top bases: param_1(param) 58171 · arg0(param) 46171 · a0(param) 41942 · p(local) 13235 · cach(local) 8246 · buf(local) 7056 · s0(local) 6770 · s1(local) 6454 · p(param) 6220 · flag(local) 5453 · dst(local) 4853 · iVar2(local) 4714 · iVar1(local) 3811 · cur(local) 3375 · e(local) 3103 · src(local) 2599
|
||||
DECLARATIONS 99109 function definitions (1894 K&R) · 4279260 extern function declarations over 12088 names (3773 spelled >1 way) · 6424 names with >1 body text · 1078766 data externs over 55542 symbols (18498 typed >1 way) · asm-label aliases 5148 (159 names) · builtins {'memcpy': 301, 'abs': 1} · attributes {'packed': 26, 'aligned': 6}
|
||||
lying declarations 229 over 24 callees {'K&R-empty': 216, 'narrow': 13} · K&R sites (marked, counted apart) 5293 over 200 callees · cross-binary (the fleet's definitions disagree, this binary has none) 418 over 96 callees
|
||||
STRUCT MAP 18643 types explain 359190/363111 deref sites (98.9 %); unassigned 3921; 3958 types span ≥2 bodies (303574 sites), 14685 single-body; types with conflicts 838, suspect 10
|
||||
merges by evidence {'param': 39382, 'arg': 10890, 'assign': 19334, 'ret-of': 5813, 'assign&': 1286, 'return': 1534, 'arg&': 316, 'field': 6925, 'nested': 9}; vetoed {'arg-conduit': 139143, 'arg&-conduit': 14638, 'ret-of-multisource': 6618, 'arg&-no-overlap': 3017, 'assign&-multisource': 12225, 'assign-multisource': 33293, 'field-multisource': 5656, 'arg-no-overlap': 26865, 'ret-of': 446, 'assign': 297, 'return': 3, 'assign&': 318, 'arg': 37, 'field': 16}
|
||||
Unkstruct_800D3888 sites 44788 bodies 7524 fields 221 size≥0x24c width-conflicts 50 sign-mixed 75 merges {'param': 11266, 'assign': 8627, 'arg': 8076, 'ret-of': 2456} at D_800D3888,D_800DE5A0,D_801269F0 ptr D_8006386C,D_80074778,D_80074780
|
||||
STRUCT MAP 18792 types explain 359060/362981 deref sites (98.9 %); unassigned 3921; 4001 types span ≥2 bodies (302931 sites), 14791 single-body; types with conflicts 852, suspect 11
|
||||
merges by evidence {'param': 39382, 'arg': 10920, 'ret-of': 5738, 'assign': 19270, 'return': 1531, 'assign&': 1265, 'arg&': 276, 'field': 6917, 'nested': 9}; vetoed {'arg-conduit': 139163, 'arg&-conduit': 14638, 'assign&-multisource': 12225, 'assign-multisource': 33292, 'ret-of-multisource': 6631, 'arg-no-overlap': 38762, 'arg&-no-overlap': 3405, 'field-multisource': 5641, 'ret-of': 586, 'assign': 357, 'assign&': 338, 'arg': 132, 'return': 6, 'field': 32}
|
||||
Unkstruct_80126B58 sites 23242 bodies 3018 fields 165 size≥0x24c width-conflicts 49 sign-mixed 50 merges {'param': 2154, 'arg': 1121, 'assign&': 104, 'assign': 43} at D_80126B58 ptr D_80126B58
|
||||
Unkstruct_800B5CB8 sites 20550 bodies 4494 fields 128 size≥0x10c width-conflicts 50 sign-mixed 53 merges {'param': 9098, 'assign': 8633, 'arg': 6960, 'ret-of': 2426} at D_800B5CB8,D_800D3888,D_80181448 ptr D_8006386C,D_80074778,D_80074780
|
||||
Unkstruct_cb638a45 sites 6477 bodies 381 fields 6 size≥0x10 width-conflicts 0 sign-mixed 0 merges {'param': 12, 'arg': 5}
|
||||
Unkstruct_dac960ce sites 4464 bodies 124 fields 13 size≥0x24c width-conflicts 0 sign-mixed 2 merges {'param': 2}
|
||||
Unkstruct_0caecd54 sites 4340 bodies 124 fields 23 size≥0xfe width-conflicts 0 sign-mixed 1 merges {'param': 2, 'assign': 1, 'return': 1}
|
||||
Unkstruct_f8ed2b9f sites 4061 bodies 4061 fields 1 size≥0x217 width-conflicts 0 sign-mixed 0 merges {'param': 2}
|
||||
Unkstruct_a32b99a1 sites 3936 bodies 123 fields 8 size≥0x4b width-conflicts 0 sign-mixed 1 merges {}
|
||||
Unkstruct_8e3dbe51 sites 3930 bodies 131 fields 5 size≥0x4c width-conflicts 0 sign-mixed 1 merges {}
|
||||
Unkstruct_80126948 sites 3284 bodies 1098 fields 34 size≥0xa4 width-conflicts 0 sign-mixed 10 merges {'assign': 104, 'arg': 15, 'param': 8, 'assign&': 4} at D_80126948,D_80126E60 ptr D_80114EE8,D_801151D4,D_80126948
|
||||
Unkstruct_57a28935 sites 3271 bodies 196 fields 26 size≥0xa4 width-conflicts 3 sign-mixed 9 merges {'param': 268, 'arg': 133}
|
||||
Unkstruct_1fa9e810 sites 3144 bodies 131 fields 3 size≥0x49 width-conflicts 0 sign-mixed 0 merges {}
|
||||
Unkstruct_30b21035 sites 3100 bodies 124 fields 13 size≥0x54 width-conflicts 0 sign-mixed 0 merges {}
|
||||
Unkstruct_a2c8734a sites 2604 bodies 124 fields 8 size≥0x34 width-conflicts 0 sign-mixed 3 merges {'param': 2}
|
||||
GLOBAL BLOCKS 2122 runs of ≥4 adjacent scalar D_ symbols (14248 symbols): 0x800cf10c+0x34 ×29 (D_800CF10C..D_800CF13C) · 0x800a6580+0x3a ×27 (D_800A6580..D_800A65B8) · 0x801998a4+0x57 ×24 (D_801998A4..D_801998FA) · 0x80199840+0x56 ×23 (D_80199840..D_80199895) · 0x801a9608+0x50 ×22 (D_801A9608..D_801A9654) · 0x801ab708+0x54 ×21 (D_801AB708..D_801AB758) · 0x801b0df0+0x4b ×21 (D_801B0DF0..D_801B0E3A) · 0x801b83a0+0x4e ×21 (D_801B83A0..D_801B83ED)
|
||||
Unkstruct_80126948 sites 3034 bodies 848 fields 34 size≥0xa4 width-conflicts 0 sign-mixed 10 merges {'assign': 104, 'arg': 14, 'param': 6, 'assign&': 4} at D_80126948,D_80126E60 ptr D_80114EE8,D_801151D4,D_80126948
|
||||
GLOBAL BLOCKS 2126 runs of ≥4 adjacent scalar D_ symbols (14263 symbols): 0x800cf10c+0x34 ×29 (D_800CF10C..D_800CF13C) · 0x800a6580+0x3a ×27 (D_800A6580..D_800A65B8) · 0x801998a4+0x57 ×24 (D_801998A4..D_801998FA) · 0x80199840+0x56 ×23 (D_80199840..D_80199895) · 0x801a9608+0x50 ×22 (D_801A9608..D_801A9654) · 0x801ab708+0x54 ×21 (D_801AB708..D_801AB758) · 0x801b0df0+0x4b ×21 (D_801B0DF0..D_801B0E3A) · 0x801b83a0+0x4e ×21 (D_801B83A0..D_801B83ED)
|
||||
PARKED (P36) 24 classes / 453 bodies / 691 needed sites → .run/P37/census/parked.tsv; needs {'signature': 13, 'struct': 7, '?': 4}; 22 PARK names are minimum-lever banks
|
||||
CONTROLS 4/4: player_block_widths OK (D_80078E8C:4/4 D_80078EB2:2/2 D_80078EB4:2/2 D_80078EB6:2/2 D_80078EB8:2/2 D_80078F08:4/4 D_80078F0C:4/4) · matrix_layouts OK (MATRIX=32 MATRIX_L48=48) · prim_layout_class OK (defs in 1 files, 1 spellings, 1/1 in one layout (64 B)) · tu_conflict_D_800A651C OK (s32:1202 | u8[]:9 | OtBlk[]:9 | OtBlk_80016450[]:8 | s32[]:7)
|
||||
|
||||
duplicate-layout classes (top 12): 4B×56 names (0 defs): B4_80165140, B4_8017F154, B4_8018750C, B4_8018AD9C… | 8B×46 names (0 defs): Blk8S16, Blk8_80126940, Blk8_80180A38, D_80195AF4_t… | 8B×45 names (0 defs): B8, B8_17F474, B8_80165140, B8_801851A8… | 8B×34 names (0 defs): Args_80182194, Blk8017FD54, Blk8_801A6AD0, Blk8_801AD914… | 20B×32 names (0 defs): Blk20_8017D110, Buf8017BF34_8017BF34, Buf8017BF50_8017C234, Loc_80180E10… | 16B×28 names (0 defs): Blk16X, Blk16_8017ECD4, Blk16_8018A4C4, Blk16_8018A8B8… | 6B×25 names (0 defs): D80190448_t, Pt6_8017D65C, ResMapCol, S6… | 32B×25 names (0 defs): Blk20_8016DF5C, Blk20_80180B78, Blk20_80184694, Blk32L_80133298… | 8B×22 names (22 defs): B8014, Blk8_80133CD4, Blk8_801463A0, Blk8_8017FF80… | 12B×19 names (19 defs): Blk12, Prim126, PrimC59C, PrimC974… | 8B×14 names (0 defs): CdFileLoc, Cmd_801805C8, M8_8016B6BC, Pair8_8017DDC4… | 4B×14 names (0 defs): D_801D0660_s, Ent_80186AE4, P4, Pair4_801B02DC…
|
||||
VARIANT names (top 12):
|
||||
|
||||
type_census: 1650 definitions (523 layouts, 53 duplicate classes, 0 variant camps) · 363111 cast sites in 52139 bodies over 8 base classes (4 forms + A, coverage OK) · 229 lying declarations / 24 callees (+5293 K&R sites, +418 cross-binary apart) · controls 4/4
|
||||
struct_map: 18643 types over 18643 clusters explain 359190/363111 sites (98.9 %); 3921 unassigned sites; 838 types with conflicts
|
||||
type_census: 1650 definitions (523 layouts, 53 duplicate classes, 0 variant camps) · 362981 cast sites in 52131 bodies over 8 base classes (4 forms + A, coverage OK) · 229 lying declarations / 24 callees (+5293 K&R sites, +418 cross-binary apart) · controls 4/4
|
||||
struct_map: 18792 types over 18792 clusters explain 359060/362981 sites (98.9 %); 3921 unassigned sites; 852 types with conflicts
|
||||
|
||||
@@ -3129,7 +3129,7 @@ s32 func_80178D40(s32 arg0, s32 arg1)
|
||||
if (((s32 (*)(s32))((Cmd_80178D40 *)arg1)->a.w)(((Actor_80178D40 *)arg0)) == 0) {
|
||||
break;
|
||||
}
|
||||
D_801B8B48 = *(s32 *)(D_801B8B48 + 4);
|
||||
D_801B8B48 = CAST_WIDTH(s32, D_801B8B48, 4);
|
||||
return;
|
||||
case 0x37:
|
||||
(*(s16*)&D_801B96D4) = 3;
|
||||
|
||||
@@ -2627,34 +2627,34 @@ void func_8017AE2C(s32 param_1) {
|
||||
case 1:
|
||||
g[1] = (u16)g[1] - 1;
|
||||
if (g[1] <= 0) {
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) = (u16)g[2];
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 = (u16)g[2];
|
||||
goto reset_both;
|
||||
}
|
||||
{
|
||||
s32 r = func_8012B608(*(s16 *)(*(s32 *)(pv + 0x20) + 0x12), g[2], 6);
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) + r;
|
||||
s32 r = func_8012B608(*(s16 *)(((Unkstruct_800B5CB8 *)pv)->unk20 + 0x12), g[2], 6);
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 + r;
|
||||
}
|
||||
return;
|
||||
case 2:
|
||||
func_8012B178(pv, (s32)g[4] << 8);
|
||||
func_8012AD80(pv);
|
||||
*(u16 *)(pv + 0xA) -= 8;
|
||||
((Unkstruct_800B5CB8 *)pv)->unkA -= 8;
|
||||
func_8012B030((u8 *)pv);
|
||||
break;
|
||||
case 3:
|
||||
if (g[1] != 0) {
|
||||
if (g[5] != 0) {
|
||||
void *p = (void *)(pv + 4);
|
||||
if ((s16)func_80012A60(*(s16 *)(*(s32 *)(pv + 0x20) + 0x12),
|
||||
if ((s16)func_80012A60(*(s16 *)(((Unkstruct_800B5CB8 *)pv)->unk20 + 0x12),
|
||||
(s16)func_8012B744(p, &g[6])) < 0x100) {
|
||||
g[1] = 0;
|
||||
}
|
||||
*(s16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
func_8012B744(p, &D_801B963C);
|
||||
func_8012B178(pv, 0xFFFA0000);
|
||||
func_8012AD80(pv);
|
||||
*(u16 *)(pv + 0xA) -= 8;
|
||||
((Unkstruct_800B5CB8 *)pv)->unkA -= 8;
|
||||
func_8012B030((u8 *)pv);
|
||||
/* &D_801B9630+0xC == &D_801B963C; distinct rtx defeats gcc's address-CSE
|
||||
so BE98's arg rematerializes instead of sharing the store's reg (byte-gate). */
|
||||
@@ -2665,9 +2665,9 @@ void func_8017AE2C(s32 param_1) {
|
||||
}
|
||||
{
|
||||
s32 t = func_8012B744((void *)(pv + 4), &g[6]);
|
||||
s32 r = func_8012B608(*(s16 *)(*(s32 *)(pv + 0x20) + 0x12), t, g[3]);
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) + r;
|
||||
s32 r = func_8012B608(*(s16 *)(((Unkstruct_800B5CB8 *)pv)->unk20 + 0x12), t, g[3]);
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 + r;
|
||||
}
|
||||
g[1] = (u16)g[1] - 1;
|
||||
if (g[1] > 0) {
|
||||
@@ -2676,11 +2676,11 @@ void func_8017AE2C(s32 param_1) {
|
||||
g[1] = 0;
|
||||
return;
|
||||
}
|
||||
*(s16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
func_8012B744((void *)(pv + 4), &D_801B963C);
|
||||
func_8012B178(pv, 0xFFFA0000);
|
||||
func_8012AD80(pv);
|
||||
*(u16 *)(pv + 0xA) -= 8;
|
||||
((Unkstruct_800B5CB8 *)pv)->unkA -= 8;
|
||||
func_8012B030((u8 *)pv);
|
||||
/* see note above: distinct rtx for the same address defeats address-CSE. */
|
||||
if (func_8012BE98(pv, (u16 *)((s32)&D_801B9630 + 0xC)) < 0x101) {
|
||||
|
||||
@@ -3000,13 +3000,13 @@ void func_80184DDC(void *a0)
|
||||
extern u8 D_801B9550[];
|
||||
extern short D_80192640;
|
||||
|
||||
switch (*(u16 *)((s32)a0 + 0x34)) {
|
||||
switch (((Unkstruct_800B5CB8 *)a0)->unk34) {
|
||||
case 0:
|
||||
if (func_801886A0(4) == 0) {
|
||||
return;
|
||||
}
|
||||
func_80187994((s32)a0, (s32)D_801B9544, 0, 0x40);
|
||||
*(u16 *)((s32)a0 + 0x34) = 1;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk34 = 1;
|
||||
return;
|
||||
case 1:
|
||||
func_801886A0(4);
|
||||
@@ -3014,19 +3014,19 @@ void func_80184DDC(void *a0)
|
||||
return;
|
||||
}
|
||||
func_80187994((s32)a0, (s32)D_801B9550, 0, 0x40);
|
||||
*(u16 *)((s32)a0 + 0x34) = 2;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk34 = 2;
|
||||
return;
|
||||
case 2:
|
||||
*(s32 *)(*(s32 *)((s32)a0 + 0xCC) + 0xB0) = 2;
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)((s32)a0 + 0xCC))->unkB0 = 2;
|
||||
if (func_80187A64((s32)a0) != 0) {
|
||||
*(u16 *)((s32)a0 + 0x34) = 3;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk34 = 3;
|
||||
}
|
||||
return;
|
||||
case 3:
|
||||
if (func_801886A0(4) == 0) {
|
||||
return;
|
||||
}
|
||||
*(u16 *)((s32)a0 + 0x34) = 4;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk34 = 4;
|
||||
func_80187994((s32)a0, (s32)D_801B9544, 1, 0x40);
|
||||
return;
|
||||
case 4:
|
||||
@@ -3034,7 +3034,7 @@ void func_80184DDC(void *a0)
|
||||
if (func_80187A64((s32)a0) == 0) {
|
||||
return;
|
||||
}
|
||||
*(u16 *)((s32)a0 + 0x2) = 5;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk2 = 5;
|
||||
func_80187778((s32 *)a0, (s32)&D_80192640);
|
||||
return;
|
||||
}
|
||||
@@ -3048,8 +3048,8 @@ void func_80184F18(s32 *arg0)
|
||||
extern void func_80187750(s32 a0);
|
||||
extern short D_801C36E8;
|
||||
|
||||
*(s16 *)((s32)arg0 + 2) = 9;
|
||||
*(s16 *)((s32)arg0 + 0x34) = 0;
|
||||
((Unkstruct_800B5CB8 *)arg0)->unk2 = 9;
|
||||
((Unkstruct_800B5CB8 *)arg0)->unk34 = 0;
|
||||
func_8012E88C((s32)arg0);
|
||||
func_8012A828((s32)arg0, (s32)&D_801C36E8);
|
||||
func_80187750((s32)arg0);
|
||||
|
||||
@@ -3129,7 +3129,7 @@ s32 func_80178D40(s32 arg0, s32 arg1)
|
||||
if (((s32 (*)(s32))((Cmd_80178D40 *)arg1)->a.w)(((Actor_80178D40 *)arg0)) == 0) {
|
||||
break;
|
||||
}
|
||||
D_801CB248 = *(s32 *)(D_801CB248 + 4);
|
||||
D_801CB248 = CAST_WIDTH(s32, D_801CB248, 4);
|
||||
return;
|
||||
case 0x37:
|
||||
(*(s16*)&D_801CBB4C) = 3;
|
||||
|
||||
@@ -2955,7 +2955,7 @@ void func_801816F0(void *a0) {
|
||||
extern void (*D_801899F4[])(void);
|
||||
|
||||
void func_80181808(void *a0) {
|
||||
D_801899F4[*(u16 *)((s32)a0 + 0x2)]();
|
||||
D_801899F4[((Unkstruct_80126B58 *)a0)->unk2]();
|
||||
}
|
||||
|
||||
|
||||
@@ -3045,7 +3045,7 @@ s32 func_80181990(void *a0)
|
||||
void func_80181A10(void *a0)
|
||||
{
|
||||
s32 v0;
|
||||
*(s32 *)(*(s32 *)((s32)a0 + 0xCC) + 0xB0) = 2;
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)((s32)a0 + 0xCC))->unkB0 = 2;
|
||||
v0 = func_8018317C(5, 0, 5, 0x1E);
|
||||
if (v0 != 0) {
|
||||
func_80181548(a0);
|
||||
@@ -3104,7 +3104,7 @@ void func_80181B24(s32 a0)
|
||||
if (func_80183550(a0) != 0) {
|
||||
func_80183480(a0, (s32)&D_801A4304, 1, 0x70);
|
||||
}
|
||||
if (func_8012BD14(*(s32 *)(a0 + 0x64)) < 0x4001) {
|
||||
if (func_8012BD14(((Unkstruct_800B5CB8 *)a0)->unk64) < 0x4001) {
|
||||
func_8014CB68();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2833,49 +2833,49 @@ extern int func_80178970(void);
|
||||
extern void func_80178D18(void);
|
||||
|
||||
void func_80181BCC(void *a0) {
|
||||
switch (*(u16 *)((char *)a0 + 0x34)) {
|
||||
switch (((Unkstruct_800B5CB8 *)a0)->unk34) {
|
||||
case 0:
|
||||
func_801789AC((s32)a0);
|
||||
if (func_80128C98(3) != 0) {
|
||||
(*(u16 *)((char *)a0 + 0x34))++;
|
||||
(((Unkstruct_800B5CB8 *)a0)->unk34)++;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if (func_801789AC((s32)a0) != 0) {
|
||||
(*(u16 *)((char *)a0 + 0x34)) += 1;
|
||||
(((Unkstruct_800B5CB8 *)a0)->unk34) += 1;
|
||||
func_80178CBC((s32)a0, (s32)&D_80189ADC);
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
((s32 (*)(s32))func_80178970)((s32)a0);
|
||||
if ((func_80029178(0x10A) & 0xFF) != 0) {
|
||||
(*(u16 *)((char *)a0 + 0x34))++;
|
||||
(((Unkstruct_800B5CB8 *)a0)->unk34)++;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
((s32 (*)(s32))func_80178970)((s32)a0);
|
||||
*(u16 *)(*(s32 *)((char *)a0 + 0x20) + 0x12) =
|
||||
*(u16 *)(*(s32 *)((char *)a0 + 0x20) + 0x12) +
|
||||
func_8012B608(*(s16 *)(*(s32 *)((char *)a0 + 0x20) + 0x12), 0x1E0, 8);
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)((char *)a0 + 0x20))->unk12 =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)((char *)a0 + 0x20))->unk12 +
|
||||
func_8012B608(*(s16 *)(((Unkstruct_800B5CB8 *)a0)->unk20 + 0x12), 0x1E0, 8);
|
||||
break;
|
||||
case 4:
|
||||
if (((s32 (*)(s32))func_80178970)((s32)a0) != 0) {
|
||||
func_80029514(0x87);
|
||||
func_800D0CA0(1);
|
||||
*(s32 *)((char *)a0 + 0x1C) = 0x1E;
|
||||
(*(u16 *)((char *)a0 + 0x34))++;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk1C = 0x1E;
|
||||
(((Unkstruct_800B5CB8 *)a0)->unk34)++;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
if (func_8012BEE8((s32)a0) != 0) {
|
||||
(*(u16 *)((char *)a0 + 0x34))++;
|
||||
(((Unkstruct_800B5CB8 *)a0)->unk34)++;
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
if (func_800D0CE0() == 1) {
|
||||
((void (*)(s32))func_80178D18)((s32)a0);
|
||||
func_80183264(a0, (s32)D_80189A40);
|
||||
*(u16 *)((char *)a0 + 0x2) = 4;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk2 = 4;
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -2886,6 +2886,6 @@ void func_80181BCC(void *a0) {
|
||||
extern void (*D_80189BEC[])(void);
|
||||
|
||||
void func_80181D3C(void *a0) {
|
||||
D_80189BEC[*(u16 *)((s32)a0 + 0x2)]();
|
||||
D_80189BEC[((Unkstruct_80126B58 *)a0)->unk2]();
|
||||
}
|
||||
|
||||
|
||||
@@ -3129,7 +3129,7 @@ s32 func_80178D40(s32 arg0, s32 arg1)
|
||||
if (((s32 (*)(s32))((Cmd_80178D40 *)arg1)->a.w)(((Actor_80178D40 *)arg0)) == 0) {
|
||||
break;
|
||||
}
|
||||
D_8018F550 = *(s32 *)(D_8018F550 + 4);
|
||||
D_8018F550 = CAST_WIDTH(s32, D_8018F550, 4);
|
||||
return;
|
||||
case 0x37:
|
||||
(*(s16*)&D_8018FB74) = 3;
|
||||
|
||||
@@ -2627,34 +2627,34 @@ void func_8017AE2C(s32 param_1) {
|
||||
case 1:
|
||||
g[1] = (u16)g[1] - 1;
|
||||
if (g[1] <= 0) {
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) = (u16)g[2];
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 = (u16)g[2];
|
||||
goto reset_both;
|
||||
}
|
||||
{
|
||||
s32 r = func_8012B608(*(s16 *)(*(s32 *)(pv + 0x20) + 0x12), g[2], 6);
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) + r;
|
||||
s32 r = func_8012B608(*(s16 *)(((Unkstruct_800B5CB8 *)pv)->unk20 + 0x12), g[2], 6);
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 + r;
|
||||
}
|
||||
return;
|
||||
case 2:
|
||||
func_8012B178(pv, (s32)g[4] << 8);
|
||||
func_8012AD80(pv);
|
||||
*(u16 *)(pv + 0xA) -= 8;
|
||||
((Unkstruct_800B5CB8 *)pv)->unkA -= 8;
|
||||
func_8012B030((u8 *)pv);
|
||||
break;
|
||||
case 3:
|
||||
if (g[1] != 0) {
|
||||
if (g[5] != 0) {
|
||||
void *p = (void *)(pv + 4);
|
||||
if ((s16)func_80012A60(*(s16 *)(*(s32 *)(pv + 0x20) + 0x12),
|
||||
if ((s16)func_80012A60(*(s16 *)(((Unkstruct_800B5CB8 *)pv)->unk20 + 0x12),
|
||||
(s16)func_8012B744(p, &g[6])) < 0x100) {
|
||||
g[1] = 0;
|
||||
}
|
||||
*(s16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
func_8012B744(p, &D_8018FADC);
|
||||
func_8012B178(pv, 0xFFFA0000);
|
||||
func_8012AD80(pv);
|
||||
*(u16 *)(pv + 0xA) -= 8;
|
||||
((Unkstruct_800B5CB8 *)pv)->unkA -= 8;
|
||||
func_8012B030((u8 *)pv);
|
||||
/* &D_8018FAD0+0xC == &D_8018FADC; distinct rtx defeats gcc's address-CSE
|
||||
so BE98's arg rematerializes instead of sharing the store's reg (byte-gate). */
|
||||
@@ -2665,9 +2665,9 @@ void func_8017AE2C(s32 param_1) {
|
||||
}
|
||||
{
|
||||
s32 t = func_8012B744((void *)(pv + 4), &g[6]);
|
||||
s32 r = func_8012B608(*(s16 *)(*(s32 *)(pv + 0x20) + 0x12), t, g[3]);
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) + r;
|
||||
s32 r = func_8012B608(*(s16 *)(((Unkstruct_800B5CB8 *)pv)->unk20 + 0x12), t, g[3]);
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 + r;
|
||||
}
|
||||
g[1] = (u16)g[1] - 1;
|
||||
if (g[1] > 0) {
|
||||
@@ -2676,11 +2676,11 @@ void func_8017AE2C(s32 param_1) {
|
||||
g[1] = 0;
|
||||
return;
|
||||
}
|
||||
*(s16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
func_8012B744((void *)(pv + 4), &D_8018FADC);
|
||||
func_8012B178(pv, 0xFFFA0000);
|
||||
func_8012AD80(pv);
|
||||
*(u16 *)(pv + 0xA) -= 8;
|
||||
((Unkstruct_800B5CB8 *)pv)->unkA -= 8;
|
||||
func_8012B030((u8 *)pv);
|
||||
/* see note above: distinct rtx for the same address defeats address-CSE. */
|
||||
if (func_8012BE98(pv, (u16 *)((s32)&D_8018FAD0 + 0xC)) < 0x101) {
|
||||
@@ -3304,7 +3304,7 @@ void func_8017BE60(void *a0) {
|
||||
extern void (*D_80182CBC[])(void);
|
||||
|
||||
void func_8017BEBC(void *a0) {
|
||||
D_80182CBC[*(u16 *)((s32)a0 + 0x2)]();
|
||||
D_80182CBC[((Unkstruct_80126B58 *)a0)->unk2]();
|
||||
}
|
||||
|
||||
|
||||
@@ -3322,7 +3322,7 @@ void func_8017BEF8(s32 param_1)
|
||||
|
||||
v0 = ((s32 (*)(void))func_801465C0)();
|
||||
s0 = v0;
|
||||
*(s32 *)(param_1 + 0x20) = v0;
|
||||
((Unkstruct_80126B58 *)param_1)->unk20 = v0;
|
||||
|
||||
if (v0 == 0) {
|
||||
((void (*)(s32))func_80146C3C)(param_1);
|
||||
@@ -3336,7 +3336,7 @@ void func_8017BEF8(s32 param_1)
|
||||
*(s16 *)(s0 + 0x14) = -0xE3;
|
||||
*(s32 *)(s0 + 4) |= 0x8000000;
|
||||
func_80146E90((s32 *)param_1, 4);
|
||||
*(u16 *)(param_1 + 2) += 1;
|
||||
((Unkstruct_80126B58 *)param_1)->unk2 += 1;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -3129,7 +3129,7 @@ s32 func_80178D40(s32 arg0, s32 arg1)
|
||||
if (((s32 (*)(s32))((Cmd_80178D40 *)arg1)->a.w)(((Actor_80178D40 *)arg0)) == 0) {
|
||||
break;
|
||||
}
|
||||
D_801F6EC8 = *(s32 *)(D_801F6EC8 + 4);
|
||||
D_801F6EC8 = CAST_WIDTH(s32, D_801F6EC8, 4);
|
||||
return;
|
||||
case 0x37:
|
||||
(*(s16*)&D_801F78B4) = 3;
|
||||
|
||||
@@ -3129,7 +3129,7 @@ s32 func_80178D40(s32 arg0, s32 arg1)
|
||||
if (((s32 (*)(s32))((Cmd_80178D40 *)arg1)->a.w)(((Actor_80178D40 *)arg0)) == 0) {
|
||||
break;
|
||||
}
|
||||
D_801E9820 = *(s32 *)(D_801E9820 + 4);
|
||||
D_801E9820 = CAST_WIDTH(s32, D_801E9820, 4);
|
||||
return;
|
||||
case 0x37:
|
||||
(*(s16*)&D_801EB2C4) = 3;
|
||||
|
||||
@@ -3129,7 +3129,7 @@ s32 func_80178D40(s32 arg0, s32 arg1)
|
||||
if (((s32 (*)(s32))((Cmd_80178D40 *)arg1)->a.w)(((Actor_80178D40 *)arg0)) == 0) {
|
||||
break;
|
||||
}
|
||||
D_8019FA80 = *(s32 *)(D_8019FA80 + 4);
|
||||
D_8019FA80 = CAST_WIDTH(s32, D_8019FA80, 4);
|
||||
return;
|
||||
case 0x37:
|
||||
(*(s16*)&D_801A01CC) = 3;
|
||||
|
||||
@@ -2627,34 +2627,34 @@ void func_8017AE2C(s32 param_1) {
|
||||
case 1:
|
||||
g[1] = (u16)g[1] - 1;
|
||||
if (g[1] <= 0) {
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) = (u16)g[2];
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 = (u16)g[2];
|
||||
goto reset_both;
|
||||
}
|
||||
{
|
||||
s32 r = func_8012B608(*(s16 *)(*(s32 *)(pv + 0x20) + 0x12), g[2], 6);
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) + r;
|
||||
s32 r = func_8012B608(*(s16 *)(((Unkstruct_800B5CB8 *)pv)->unk20 + 0x12), g[2], 6);
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 + r;
|
||||
}
|
||||
return;
|
||||
case 2:
|
||||
func_8012B178(pv, (s32)g[4] << 8);
|
||||
func_8012AD80(pv);
|
||||
*(u16 *)(pv + 0xA) -= 8;
|
||||
((Unkstruct_800B5CB8 *)pv)->unkA -= 8;
|
||||
func_8012B030((u8 *)pv);
|
||||
break;
|
||||
case 3:
|
||||
if (g[1] != 0) {
|
||||
if (g[5] != 0) {
|
||||
void *p = (void *)(pv + 4);
|
||||
if ((s16)func_80012A60(*(s16 *)(*(s32 *)(pv + 0x20) + 0x12),
|
||||
if ((s16)func_80012A60(*(s16 *)(((Unkstruct_800B5CB8 *)pv)->unk20 + 0x12),
|
||||
(s16)func_8012B744(p, &g[6])) < 0x100) {
|
||||
g[1] = 0;
|
||||
}
|
||||
*(s16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
func_8012B744(p, &D_801A0134);
|
||||
func_8012B178(pv, 0xFFFA0000);
|
||||
func_8012AD80(pv);
|
||||
*(u16 *)(pv + 0xA) -= 8;
|
||||
((Unkstruct_800B5CB8 *)pv)->unkA -= 8;
|
||||
func_8012B030((u8 *)pv);
|
||||
/* &D_801A0128+0xC == &D_801A0134; distinct rtx defeats gcc's address-CSE
|
||||
so BE98's arg rematerializes instead of sharing the store's reg (byte-gate). */
|
||||
@@ -2665,9 +2665,9 @@ void func_8017AE2C(s32 param_1) {
|
||||
}
|
||||
{
|
||||
s32 t = func_8012B744((void *)(pv + 4), &g[6]);
|
||||
s32 r = func_8012B608(*(s16 *)(*(s32 *)(pv + 0x20) + 0x12), t, g[3]);
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) + r;
|
||||
s32 r = func_8012B608(*(s16 *)(((Unkstruct_800B5CB8 *)pv)->unk20 + 0x12), t, g[3]);
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 + r;
|
||||
}
|
||||
g[1] = (u16)g[1] - 1;
|
||||
if (g[1] > 0) {
|
||||
@@ -2676,11 +2676,11 @@ void func_8017AE2C(s32 param_1) {
|
||||
g[1] = 0;
|
||||
return;
|
||||
}
|
||||
*(s16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
func_8012B744((void *)(pv + 4), &D_801A0134);
|
||||
func_8012B178(pv, 0xFFFA0000);
|
||||
func_8012AD80(pv);
|
||||
*(u16 *)(pv + 0xA) -= 8;
|
||||
((Unkstruct_800B5CB8 *)pv)->unkA -= 8;
|
||||
func_8012B030((u8 *)pv);
|
||||
/* see note above: distinct rtx for the same address defeats address-CSE. */
|
||||
if (func_8012BE98(pv, (u16 *)((s32)&D_801A0128 + 0xC)) < 0x101) {
|
||||
@@ -3316,7 +3316,7 @@ extern void func_80146C3C(u8 *a0);
|
||||
extern void (*D_80183A08[])(void);
|
||||
|
||||
void func_8017BFC8(void *a0) {
|
||||
D_80183A08[*(u16 *)((s32)a0 + 0x2)]();
|
||||
D_80183A08[((Unkstruct_80126B58 *)a0)->unk2]();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -2966,17 +2966,17 @@ void func_8017F920(s32 a0) {
|
||||
s32 addr;
|
||||
|
||||
addr = (s32)&D_8019C7EC;
|
||||
*(s32 *)(a0 + 0x78) = addr;
|
||||
CAST_ALIAS(s32, a0, 0x78) = addr;
|
||||
if (D_80078EAE == 0) {
|
||||
v0 = (*(s16 *)addr * 24) / 16;
|
||||
} else {
|
||||
v0 = *(u16 *)addr;
|
||||
}
|
||||
*(s16 *)(a0 + 0x76) = v0;
|
||||
*(s16 *)(a0 + 0x5C) = D_8019C7EE;
|
||||
CAST_ALIAS(s16, a0, 0x76) = v0;
|
||||
CAST_ALIAS(s16, a0, 0x5C) = D_8019C7EE;
|
||||
if (D_8019C7F0 != 0) {
|
||||
v0 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(a0 + 0x20) = v0;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk20 = v0;
|
||||
if (v0 == 0) {
|
||||
func_8012CAE4((void *)a0);
|
||||
return;
|
||||
@@ -2984,18 +2984,18 @@ void func_8017F920(s32 a0) {
|
||||
func_8001C810(v0, D_8019C7F0);
|
||||
}
|
||||
if (D_8019C7F4 != 0) {
|
||||
*(s32 *)(a0 + 0x58) = D_8019C7F4 | 0x60000000;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk58 = D_8019C7F4 | 0x60000000;
|
||||
}
|
||||
|
||||
addr = *(s32 *)(a0 + 0x20);
|
||||
addr = ((Unkstruct_800B5CB8 *)a0)->unk20;
|
||||
*(s32 *)(addr + 0x4) |= 0x8040;
|
||||
*(u16 *)(a0 + 0x5C) = 0xCC00;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk5C = 0xCC00;
|
||||
func_8012A828(a0, (void *)&D_8019D200);
|
||||
|
||||
*(s16 *)(a0 + 0x34) = 1;
|
||||
*(s16 *)(a0 + 0x2) = 0xB;
|
||||
*(s32 *)(a0 + 0x1C) = 0x3C;
|
||||
*(s8 *)(a0 + 0x75) = 9;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk34 = 1;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk2 = 0xB;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk1C = 0x3C;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk75 = 9;
|
||||
D_801A005C = (s16 *)-1;
|
||||
}
|
||||
|
||||
|
||||
@@ -3129,7 +3129,7 @@ s32 func_80178D40(s32 arg0, s32 arg1)
|
||||
if (((s32 (*)(s32))((Cmd_80178D40 *)arg1)->a.w)(((Actor_80178D40 *)arg0)) == 0) {
|
||||
break;
|
||||
}
|
||||
D_801A1D18 = *(s32 *)(D_801A1D18 + 4);
|
||||
D_801A1D18 = CAST_WIDTH(s32, D_801A1D18, 4);
|
||||
return;
|
||||
case 0x37:
|
||||
(*(s16*)&D_801A2400) = 3;
|
||||
|
||||
@@ -2627,34 +2627,34 @@ void func_8017AE2C(s32 param_1) {
|
||||
case 1:
|
||||
g[1] = (u16)g[1] - 1;
|
||||
if (g[1] <= 0) {
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) = (u16)g[2];
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 = (u16)g[2];
|
||||
goto reset_both;
|
||||
}
|
||||
{
|
||||
s32 r = func_8012B608(*(s16 *)(*(s32 *)(pv + 0x20) + 0x12), g[2], 6);
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) + r;
|
||||
s32 r = func_8012B608(*(s16 *)(((Unkstruct_800B5CB8 *)pv)->unk20 + 0x12), g[2], 6);
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 + r;
|
||||
}
|
||||
return;
|
||||
case 2:
|
||||
func_8012B178(pv, (s32)g[4] << 8);
|
||||
func_8012AD80(pv);
|
||||
*(u16 *)(pv + 0xA) -= 8;
|
||||
((Unkstruct_800B5CB8 *)pv)->unkA -= 8;
|
||||
func_8012B030((u8 *)pv);
|
||||
break;
|
||||
case 3:
|
||||
if (g[1] != 0) {
|
||||
if (g[5] != 0) {
|
||||
void *p = (void *)(pv + 4);
|
||||
if ((s16)func_80012A60(*(s16 *)(*(s32 *)(pv + 0x20) + 0x12),
|
||||
if ((s16)func_80012A60(*(s16 *)(((Unkstruct_800B5CB8 *)pv)->unk20 + 0x12),
|
||||
(s16)func_8012B744(p, &g[6])) < 0x100) {
|
||||
g[1] = 0;
|
||||
}
|
||||
*(s16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
func_8012B744(p, &D_801A2364);
|
||||
func_8012B178(pv, 0xFFFA0000);
|
||||
func_8012AD80(pv);
|
||||
*(u16 *)(pv + 0xA) -= 8;
|
||||
((Unkstruct_800B5CB8 *)pv)->unkA -= 8;
|
||||
func_8012B030((u8 *)pv);
|
||||
/* &D_801A2358+0xC == &D_801A2364; distinct rtx defeats gcc's address-CSE
|
||||
so BE98's arg rematerializes instead of sharing the store's reg (byte-gate). */
|
||||
@@ -2665,9 +2665,9 @@ void func_8017AE2C(s32 param_1) {
|
||||
}
|
||||
{
|
||||
s32 t = func_8012B744((void *)(pv + 4), &g[6]);
|
||||
s32 r = func_8012B608(*(s16 *)(*(s32 *)(pv + 0x20) + 0x12), t, g[3]);
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) + r;
|
||||
s32 r = func_8012B608(*(s16 *)(((Unkstruct_800B5CB8 *)pv)->unk20 + 0x12), t, g[3]);
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 + r;
|
||||
}
|
||||
g[1] = (u16)g[1] - 1;
|
||||
if (g[1] > 0) {
|
||||
@@ -2676,11 +2676,11 @@ void func_8017AE2C(s32 param_1) {
|
||||
g[1] = 0;
|
||||
return;
|
||||
}
|
||||
*(s16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
func_8012B744((void *)(pv + 4), &D_801A2364);
|
||||
func_8012B178(pv, 0xFFFA0000);
|
||||
func_8012AD80(pv);
|
||||
*(u16 *)(pv + 0xA) -= 8;
|
||||
((Unkstruct_800B5CB8 *)pv)->unkA -= 8;
|
||||
func_8012B030((u8 *)pv);
|
||||
/* see note above: distinct rtx for the same address defeats address-CSE. */
|
||||
if (func_8012BE98(pv, (u16 *)((s32)&D_801A2358 + 0xC)) < 0x101) {
|
||||
@@ -3318,7 +3318,7 @@ extern void func_80147364(u16, s32);
|
||||
extern void (*D_80184D78[])(void);
|
||||
|
||||
void func_8017BFC8(void *a0) {
|
||||
D_80184D78[*(u16 *)((s32)a0 + 0x2)]();
|
||||
D_80184D78[((Unkstruct_80126B58 *)a0)->unk2]();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -3129,7 +3129,7 @@ s32 func_80178D40(s32 arg0, s32 arg1)
|
||||
if (((s32 (*)(s32))((Cmd_80178D40 *)arg1)->a.w)(((Actor_80178D40 *)arg0)) == 0) {
|
||||
break;
|
||||
}
|
||||
D_80194B38 = *(s32 *)(D_80194B38 + 4);
|
||||
D_80194B38 = CAST_WIDTH(s32, D_80194B38, 4);
|
||||
return;
|
||||
case 0x37:
|
||||
(*(s16*)&D_8019515C) = 3;
|
||||
|
||||
@@ -3129,7 +3129,7 @@ s32 func_80178D40(s32 arg0, s32 arg1)
|
||||
if (((s32 (*)(s32))((Cmd_80178D40 *)arg1)->a.w)(((Actor_80178D40 *)arg0)) == 0) {
|
||||
break;
|
||||
}
|
||||
D_801ACE08 = *(s32 *)(D_801ACE08 + 4);
|
||||
D_801ACE08 = CAST_WIDTH(s32, D_801ACE08, 4);
|
||||
return;
|
||||
case 0x37:
|
||||
(*(s16*)&D_801AD554) = 3;
|
||||
|
||||
@@ -2627,34 +2627,34 @@ void func_8017AE2C(s32 param_1) {
|
||||
case 1:
|
||||
g[1] = (u16)g[1] - 1;
|
||||
if (g[1] <= 0) {
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) = (u16)g[2];
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 = (u16)g[2];
|
||||
goto reset_both;
|
||||
}
|
||||
{
|
||||
s32 r = func_8012B608(*(s16 *)(*(s32 *)(pv + 0x20) + 0x12), g[2], 6);
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) + r;
|
||||
s32 r = func_8012B608(*(s16 *)(((Unkstruct_800B5CB8 *)pv)->unk20 + 0x12), g[2], 6);
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 + r;
|
||||
}
|
||||
return;
|
||||
case 2:
|
||||
func_8012B178(pv, (s32)g[4] << 8);
|
||||
func_8012AD80(pv);
|
||||
*(u16 *)(pv + 0xA) -= 8;
|
||||
((Unkstruct_800B5CB8 *)pv)->unkA -= 8;
|
||||
func_8012B030((u8 *)pv);
|
||||
break;
|
||||
case 3:
|
||||
if (g[1] != 0) {
|
||||
if (g[5] != 0) {
|
||||
void *p = (void *)(pv + 4);
|
||||
if ((s16)func_80012A60(*(s16 *)(*(s32 *)(pv + 0x20) + 0x12),
|
||||
if ((s16)func_80012A60(*(s16 *)(((Unkstruct_800B5CB8 *)pv)->unk20 + 0x12),
|
||||
(s16)func_8012B744(p, &g[6])) < 0x100) {
|
||||
g[1] = 0;
|
||||
}
|
||||
*(s16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
func_8012B744(p, &D_801AD4BC);
|
||||
func_8012B178(pv, 0xFFFA0000);
|
||||
func_8012AD80(pv);
|
||||
*(u16 *)(pv + 0xA) -= 8;
|
||||
((Unkstruct_800B5CB8 *)pv)->unkA -= 8;
|
||||
func_8012B030((u8 *)pv);
|
||||
/* &D_801AD4B0+0xC == &D_801AD4BC; distinct rtx defeats gcc's address-CSE
|
||||
so BE98's arg rematerializes instead of sharing the store's reg (byte-gate). */
|
||||
@@ -2665,9 +2665,9 @@ void func_8017AE2C(s32 param_1) {
|
||||
}
|
||||
{
|
||||
s32 t = func_8012B744((void *)(pv + 4), &g[6]);
|
||||
s32 r = func_8012B608(*(s16 *)(*(s32 *)(pv + 0x20) + 0x12), t, g[3]);
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
*(u16 *)(*(s32 *)(pv + 0x20) + 0x12) + r;
|
||||
s32 r = func_8012B608(*(s16 *)(((Unkstruct_800B5CB8 *)pv)->unk20 + 0x12), t, g[3]);
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 + r;
|
||||
}
|
||||
g[1] = (u16)g[1] - 1;
|
||||
if (g[1] > 0) {
|
||||
@@ -2676,11 +2676,11 @@ void func_8017AE2C(s32 param_1) {
|
||||
g[1] = 0;
|
||||
return;
|
||||
}
|
||||
*(s16 *)(*(s32 *)(pv + 0x20) + 0x12) =
|
||||
((Unkstruct_800B5CB8 *)*(s32 *)(pv + 0x20))->unk12 =
|
||||
func_8012B744((void *)(pv + 4), &D_801AD4BC);
|
||||
func_8012B178(pv, 0xFFFA0000);
|
||||
func_8012AD80(pv);
|
||||
*(u16 *)(pv + 0xA) -= 8;
|
||||
((Unkstruct_800B5CB8 *)pv)->unkA -= 8;
|
||||
func_8012B030((u8 *)pv);
|
||||
/* see note above: distinct rtx for the same address defeats address-CSE. */
|
||||
if (func_8012BE98(pv, (u16 *)((s32)&D_801AD4B0 + 0xC)) < 0x101) {
|
||||
@@ -3316,7 +3316,7 @@ extern void func_80147364(u16, s32);
|
||||
extern void (*D_80184A40[])(void);
|
||||
|
||||
void func_8017BFC8(void *a0) {
|
||||
D_80184A40[*(u16 *)((s32)a0 + 0x2)]();
|
||||
D_80184A40[((Unkstruct_80126B58 *)a0)->unk2]();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -2977,17 +2977,17 @@ void func_80180958(s32 a0) {
|
||||
s32 addr;
|
||||
|
||||
addr = (s32)&D_801A52E4;
|
||||
*(s32 *)(a0 + 0x78) = addr;
|
||||
CAST_ALIAS(s32, a0, 0x78) = addr;
|
||||
if (D_80078EAE == 0) {
|
||||
v0 = (*(s16 *)addr * 24) / 16;
|
||||
} else {
|
||||
v0 = *(u16 *)addr;
|
||||
}
|
||||
*(s16 *)(a0 + 0x76) = v0;
|
||||
*(s16 *)(a0 + 0x5C) = D_801A52E6;
|
||||
CAST_ALIAS(s16, a0, 0x76) = v0;
|
||||
CAST_ALIAS(s16, a0, 0x5C) = D_801A52E6;
|
||||
if (D_801A52E8 != 0) {
|
||||
v0 = ((s32 (*)(void))func_8012C1B8)();
|
||||
*(s32 *)(a0 + 0x20) = v0;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk20 = v0;
|
||||
if (v0 == 0) {
|
||||
func_8012CAE4((void *)a0);
|
||||
return;
|
||||
@@ -2995,18 +2995,18 @@ void func_80180958(s32 a0) {
|
||||
func_8001C810(v0, D_801A52E8);
|
||||
}
|
||||
if (D_801A52EC != 0) {
|
||||
*(s32 *)(a0 + 0x58) = D_801A52EC | 0x60000000;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk58 = D_801A52EC | 0x60000000;
|
||||
}
|
||||
|
||||
addr = *(s32 *)(a0 + 0x20);
|
||||
addr = ((Unkstruct_800B5CB8 *)a0)->unk20;
|
||||
*(s32 *)(addr + 0x4) |= 0x8040;
|
||||
*(u16 *)(a0 + 0x5C) = 0xCC00;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk5C = 0xCC00;
|
||||
func_8012A828(a0, (void *)&D_801A5CF8);
|
||||
|
||||
*(s16 *)(a0 + 0x34) = 1;
|
||||
*(s16 *)(a0 + 0x2) = 0xB;
|
||||
*(s32 *)(a0 + 0x1C) = 0x3C;
|
||||
*(s8 *)(a0 + 0x75) = 9;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk34 = 1;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk2 = 0xB;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk1C = 0x3C;
|
||||
((Unkstruct_800B5CB8 *)a0)->unk75 = 9;
|
||||
D_801AD3E4 = (s16 *)-1;
|
||||
}
|
||||
|
||||
|
||||
@@ -3129,7 +3129,7 @@ s32 func_80178D40(s32 arg0, s32 arg1)
|
||||
if (((s32 (*)(s32))((Cmd_80178D40 *)arg1)->a.w)(((Actor_80178D40 *)arg0)) == 0) {
|
||||
break;
|
||||
}
|
||||
D_801EA388 = *(s32 *)(D_801EA388 + 4);
|
||||
D_801EA388 = CAST_WIDTH(s32, D_801EA388, 4);
|
||||
return;
|
||||
case 0x37:
|
||||
(*(s16*)&D_801EB03C) = 3;
|
||||
|
||||
@@ -3129,7 +3129,7 @@ s32 func_80178D40(s32 arg0, s32 arg1)
|
||||
if (((s32 (*)(s32))((Cmd_80178D40 *)arg1)->a.w)(((Actor_80178D40 *)arg0)) == 0) {
|
||||
break;
|
||||
}
|
||||
D_80198760 = *(s32 *)(D_80198760 + 4);
|
||||
D_80198760 = CAST_WIDTH(s32, D_80198760, 4);
|
||||
return;
|
||||
case 0x37:
|
||||
(*(s16*)&D_80198D84) = 3;
|
||||
|
||||
@@ -3129,7 +3129,7 @@ s32 func_80178D40(s32 arg0, s32 arg1)
|
||||
if (((s32 (*)(s32))((Cmd_80178D40 *)arg1)->a.w)(((Actor_80178D40 *)arg0)) == 0) {
|
||||
break;
|
||||
}
|
||||
D_801C0CF8 = *(s32 *)(D_801C0CF8 + 4);
|
||||
D_801C0CF8 = CAST_WIDTH(s32, D_801C0CF8, 4);
|
||||
return;
|
||||
case 0x37:
|
||||
(*(s16*)&D_801C184C) = 3;
|
||||
|
||||
@@ -3129,7 +3129,7 @@ s32 func_80178D40(s32 arg0, s32 arg1)
|
||||
if (((s32 (*)(s32))((Cmd_80178D40 *)arg1)->a.w)(((Actor_80178D40 *)arg0)) == 0) {
|
||||
break;
|
||||
}
|
||||
D_801EB030 = *(s32 *)(D_801EB030 + 4);
|
||||
D_801EB030 = CAST_WIDTH(s32, D_801EB030, 4);
|
||||
return;
|
||||
case 0x37:
|
||||
(*(s16*)&D_801EC604) = 3;
|
||||
|
||||
Reference in New Issue
Block a user