T3: batch t3_S1 — restruct: batch t3_S1 rung S — 50 files (TUs; 2088 drawable) · 3803 bodies: 24546 sites → members / 2835 kept / 9346 skipped · levers off 14 · compiles 6948 in 1701 s wall · final 50/50 identical · written 50 files | R22 check-all: 218 passed, 0 failed of 218 | type_census: 1650 definitions (523 layouts, 53 duplicate classes, 0 variant camps) · 473279 cast sites in 67648 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:
Drew T
2026-10-01 13:03:04 -06:00
parent 1f8eb7e594
commit 0bd7785cef
54 changed files with 83369 additions and 27241 deletions
+151 -151
View File
@@ -1,7 +1,7 @@
{
"head": "3507628e40",
"head": "fe2e814776",
"stamp": "588cbf38c6e4",
"generated": "2026-10-01 12:16",
"generated": "2026-10-01 12:24",
"aliases": [
"main",
"md_SC07_004",
@@ -21,176 +21,176 @@
"main": {
"objects": 85,
"identical": 85,
"seconds": 8.519999999999998,
"mean_s": 0.1
"seconds": 9.309,
"mean_s": 0.11
},
"md_SC07_004": {
"objects": 1,
"identical": 1,
"seconds": 0.602,
"mean_s": 0.602
"seconds": 0.653,
"mean_s": 0.653
},
"ov_SC03_015": {
"objects": 32,
"identical": 32,
"seconds": 6.038,
"mean_s": 0.189
"seconds": 6.504,
"mean_s": 0.203
},
"ov_SC04_011": {
"objects": 28,
"identical": 28,
"seconds": 5.418000000000002,
"mean_s": 0.194
"seconds": 5.495,
"mean_s": 0.196
}
},
"per_object_seconds": {
"build/src/800.o": 0.9,
"build/src/800_b.o": 0.111,
"build/src/800_b_2.o": 0.368,
"build/src/800_b_o0a.o": 0.081,
"build/src/800_c.o": 0.239,
"build/src/800b2.o": 0.093,
"build/src/apicard1.o": 0.089,
"build/src/apicard2.o": 0.084,
"build/src/apicard3.o": 0.105,
"build/src/apicard4.o": 0.073,
"build/src/apicard5.o": 0.102,
"build/src/apicard6.o": 0.098,
"build/src/apicard7.o": 0.121,
"build/src/boot.o": 0.128,
"build/src/gap.o": 0.093,
"build/src/libapi1.o": 0.081,
"build/src/libapi2.o": 0.071,
"build/src/libc2_1.o": 0.081,
"build/src/800.o": 0.994,
"build/src/800_b.o": 0.097,
"build/src/800_b_2.o": 0.4,
"build/src/800_b_o0a.o": 0.097,
"build/src/800_c.o": 0.27,
"build/src/800b2.o": 0.143,
"build/src/apicard1.o": 0.087,
"build/src/apicard2.o": 0.092,
"build/src/apicard3.o": 0.117,
"build/src/apicard4.o": 0.106,
"build/src/apicard5.o": 0.109,
"build/src/apicard6.o": 0.1,
"build/src/apicard7.o": 0.115,
"build/src/boot.o": 0.138,
"build/src/gap.o": 0.119,
"build/src/libapi1.o": 0.112,
"build/src/libapi2.o": 0.08,
"build/src/libc2_1.o": 0.092,
"build/src/libc2_2.o": 0.073,
"build/src/libcd1.o": 0.1,
"build/src/libcd2.o": 0.079,
"build/src/libetc.o": 0.081,
"build/src/libgpu.o": 0.09,
"build/src/libgpu2.o": 0.086,
"build/src/libgs1.o": 0.08,
"build/src/libgs2.o": 0.081,
"build/src/libgs3.o": 0.074,
"build/src/libgs4.o": 0.079,
"build/src/libgs5.o": 0.077,
"build/src/libgs6.o": 0.1,
"build/src/libgs7.o": 0.081,
"build/src/libgs8.o": 0.071,
"build/src/libgte1.o": 0.083,
"build/src/libgte10.o": 0.075,
"build/src/libgte11.o": 0.076,
"build/src/libgte12.o": 0.088,
"build/src/libgte13.o": 0.083,
"build/src/libgte14.o": 0.09,
"build/src/libgte15.o": 0.074,
"build/src/libgte16.o": 0.085,
"build/src/libgte17.o": 0.079,
"build/src/libgte18.o": 0.08,
"build/src/libgte19.o": 0.077,
"build/src/libgte2.o": 0.078,
"build/src/libgte20.o": 0.08,
"build/src/libgte21.o": 0.075,
"build/src/libgte22.o": 0.085,
"build/src/libgte23.o": 0.09,
"build/src/libgte24.o": 0.082,
"build/src/libgte25.o": 0.077,
"build/src/libgte26.o": 0.079,
"build/src/libgte27.o": 0.087,
"build/src/libgte28.o": 0.087,
"build/src/libgte29.o": 0.086,
"build/src/libgte3.o": 0.09,
"build/src/libgte30.o": 0.091,
"build/src/libgte4.o": 0.107,
"build/src/libgte5.o": 0.094,
"build/src/libgte6.o": 0.077,
"build/src/libgte7.o": 0.074,
"build/src/libgte8.o": 0.082,
"build/src/libgte9.o": 0.084,
"build/src/libmcrd1.o": 0.09,
"build/src/libmcrd2.o": 0.083,
"build/src/libpad1.o": 0.089,
"build/src/libpad2.o": 0.093,
"build/src/sgap.o": 0.1,
"build/src/sgap_2.o": 0.077,
"build/src/sgap_3.o": 0.082,
"build/src/sgap_4.o": 0.093,
"build/src/sgap_5.o": 0.079,
"build/src/sgap_6.o": 0.08,
"build/src/sgap_8.o": 0.085,
"build/src/snd1.o": 0.099,
"build/src/snd10.o": 0.084,
"build/src/snd11.o": 0.08,
"build/src/snd12.o": 0.074,
"build/src/snd2.o": 0.091,
"build/src/snd3.o": 0.079,
"build/src/snd4.o": 0.082,
"build/src/snd5.o": 0.083,
"build/src/libcd1.o": 0.113,
"build/src/libcd2.o": 0.081,
"build/src/libetc.o": 0.079,
"build/src/libgpu.o": 0.087,
"build/src/libgpu2.o": 0.092,
"build/src/libgs1.o": 0.094,
"build/src/libgs2.o": 0.083,
"build/src/libgs3.o": 0.081,
"build/src/libgs4.o": 0.101,
"build/src/libgs5.o": 0.081,
"build/src/libgs6.o": 0.102,
"build/src/libgs7.o": 0.098,
"build/src/libgs8.o": 0.11,
"build/src/libgte1.o": 0.084,
"build/src/libgte10.o": 0.077,
"build/src/libgte11.o": 0.084,
"build/src/libgte12.o": 0.099,
"build/src/libgte13.o": 0.085,
"build/src/libgte14.o": 0.085,
"build/src/libgte15.o": 0.093,
"build/src/libgte16.o": 0.083,
"build/src/libgte17.o": 0.076,
"build/src/libgte18.o": 0.108,
"build/src/libgte19.o": 0.081,
"build/src/libgte2.o": 0.091,
"build/src/libgte20.o": 0.084,
"build/src/libgte21.o": 0.108,
"build/src/libgte22.o": 0.084,
"build/src/libgte23.o": 0.078,
"build/src/libgte24.o": 0.077,
"build/src/libgte25.o": 0.101,
"build/src/libgte26.o": 0.128,
"build/src/libgte27.o": 0.107,
"build/src/libgte28.o": 0.078,
"build/src/libgte29.o": 0.075,
"build/src/libgte3.o": 0.095,
"build/src/libgte30.o": 0.081,
"build/src/libgte4.o": 0.082,
"build/src/libgte5.o": 0.085,
"build/src/libgte6.o": 0.083,
"build/src/libgte7.o": 0.076,
"build/src/libgte8.o": 0.085,
"build/src/libgte9.o": 0.087,
"build/src/libmcrd1.o": 0.092,
"build/src/libmcrd2.o": 0.085,
"build/src/libpad1.o": 0.087,
"build/src/libpad2.o": 0.098,
"build/src/sgap.o": 0.088,
"build/src/sgap_2.o": 0.093,
"build/src/sgap_3.o": 0.075,
"build/src/sgap_4.o": 0.099,
"build/src/sgap_5.o": 0.078,
"build/src/sgap_6.o": 0.089,
"build/src/sgap_8.o": 0.089,
"build/src/snd1.o": 0.098,
"build/src/snd10.o": 0.094,
"build/src/snd11.o": 0.1,
"build/src/snd12.o": 0.089,
"build/src/snd2.o": 0.113,
"build/src/snd3.o": 0.087,
"build/src/snd4.o": 0.108,
"build/src/snd5.o": 0.082,
"build/src/snd6.o": 0.088,
"build/src/snd7.o": 0.089,
"build/src/snd8.o": 0.074,
"build/src/snd9.o": 0.081,
"build/src/md_SC07_004/md_SC07_004.o": 0.602,
"build/src/ov_SC03_015/ov_SC03_015.o": 0.174,
"build/src/ov_SC03_015/ov_SC03_015_after.o": 0.626,
"build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.475,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.088,
"build/src/snd7.o": 0.129,
"build/src/snd8.o": 0.081,
"build/src/snd9.o": 0.084,
"build/src/md_SC07_004/md_SC07_004.o": 0.653,
"build/src/ov_SC03_015/ov_SC03_015.o": 0.184,
"build/src/ov_SC03_015/ov_SC03_015_after.o": 0.674,
"build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.524,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.098,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.087,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.164,
"build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.199,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.154,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.123,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.091,
"build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.232,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.105,
"build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.225,
"build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.122,
"build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.081,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.093,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.125,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.574,
"build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.322,
"build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.133,
"build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.251,
"build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.097,
"build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.141,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.099,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.219,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.251,
"build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.084,
"build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.344,
"build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.076,
"build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.095,
"build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.084,
"build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.104,
"build/src/ov_SC04_011/ov_SC04_011.o": 0.177,
"build/src/ov_SC04_011/ov_SC04_011_after.o": 0.549,
"build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.435,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.081,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.078,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.163,
"build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.209,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.154,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.111,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.099,
"build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.233,
"build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.168,
"build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.231,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.172,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.116,
"build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.097,
"build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.245,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.117,
"build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.229,
"build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.134,
"build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.106,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.109,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.14,
"build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.612,
"build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.357,
"build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.149,
"build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.272,
"build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.094,
"build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.148,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.111,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.226,
"build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.276,
"build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.088,
"build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.366,
"build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.084,
"build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.096,
"build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.092,
"build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.102,
"build/src/ov_SC04_011/ov_SC04_011.o": 0.181,
"build/src/ov_SC04_011/ov_SC04_011_after.o": 0.567,
"build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.467,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.08,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.087,
"build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.166,
"build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.206,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.16,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.116,
"build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.104,
"build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.248,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.104,
"build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.218,
"build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.226,
"build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.135,
"build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.098,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.107,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.137,
"build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.106,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.104,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.135,
"build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.463,
"build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.287,
"build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.148,
"build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.23,
"build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.097,
"build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.134,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.099,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.145,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.58,
"build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.069,
"build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.078
"build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.289,
"build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.136,
"build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.223,
"build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.091,
"build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.138,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.101,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.136,
"build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.565,
"build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.078,
"build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.083
},
"ok": true,
"seconds": 2.6
"seconds": 2.7
}
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
+17 -17
View File
@@ -1,33 +1,33 @@
type_census — 2026-10-01T17:32:55Z at 7845da8f03 (src stamp 64f7b70e3eb5b45d, tool a018054562); 7306 files (4121 TUs + 3181 headers), 99109 function definitions; walk 57.6 s, total 276.0 s
type_census — 2026-10-01T18:59:47Z at fe2e814776 (src stamp 97a583190e434577, tool e17c5fa676); 7306 files (4121 TUs + 3181 headers), 99109 function definitions; walk 65.8 s, total 273.4 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) · 56 dead canonical names · 0 canonical names redefined in .c · 4300 scalar/alias typedefs · 145 forward decls
CAST SITES deref 502988 = P 408979 + I 60666 + X 13800 + M 19543 (+ A address-of 18892; + C typed cast-member 36853) in 69492 bodies · coverage OK (raw {'P': 408979, 'I': 60666, 'X': 13800, 'A': 18892, 'C': 36853, 'M': 19543, 'K': 12}) · refused 0 · absolute 0 · readability regex over raw text 411816
by base: param 276840 · local 149900 · gaddr 40123 · nested 24076 · global 8861 · other 1677 · addr-of 1350 · ident 161
by width: s4 145146 · u2 142772 · s2 131805 · u1 43174 · agg 13480 · p4 12018 · u4 11164 · s1 3429
top bases: a0(param) 92255 · param_1(param) 81578 · arg0(param) 67704 · p(local) 18039 · p(param) 11784 · s0(local) 10368 · cach(local) 8246 · s1(local) 7137 · buf(local) 7060 · flag(local) 5453 · *(s32 *)(a0 + 0x20)(nested) 5215 · iVar2(local) 5160 · dst(local) 4874 · iVar1(local) 4836 · iVar3(local) 4693 · e(local) 3918
DECLARATIONS 99109 function definitions (1894 K&R) · 4279260 extern function declarations over 12088 names (3773 spelled >1 way) · 6413 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}
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 473279 = P 379387 + I 60565 + X 13797 + M 19530 (+ A address-of 18892; + C typed cast-member 58879) in 67648 bodies · coverage OK (raw {'P': 379387, 'I': 60565, 'X': 13797, 'A': 18892, 'C': 58879, 'M': 19530, 'K': 5115}) · refused 0 · absolute 0 · readability regex over raw text 382224
by base: param 255514 · local 146191 · gaddr 40117 · nested 19385 · global 8846 · other 1727 · addr-of 1338 · ident 161
by width: s4 134817 · u2 132784 · s2 124013 · u1 42460 · agg 13446 · p4 11602 · u4 10775 · s1 3382
top bases: a0(param) 77869 · param_1(param) 77572 · arg0(param) 65847 · p(local) 17451 · p(param) 11464 · s0(local) 9158 · cach(local) 8246 · buf(local) 7056 · s1(local) 7000 · flag(local) 5453 · iVar2(local) 5110 · dst(local) 4854 · iVar1(local) 4821 · iVar3(local) 4610 · e(local) 3882 · obj(local) 3439
DECLARATIONS 99109 function definitions (1894 K&R) · 4279260 extern function declarations over 12088 names (3773 spelled >1 way) · 6435 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 19123 types explain 498868/502988 deref sites (99.2 %); unassigned 4120; 4046 types span ≥2 bodies (440088 sites), 15077 single-body; types with conflicts 857, suspect 11
merges by evidence {'param': 38862, 'assign': 16777, 'ret-of': 4334, 'arg': 10823, 'return': 1524, 'assign&': 1183, 'arg&': 270, 'field': 9896}; vetoed {'arg-conduit': 115274, 'ret-of-multisource': 6678, 'assign-multisource': 33062, 'arg&-conduit': 14636, 'field-multisource': 7008, 'ret-of': 675, 'assign&-multisource': 12102, 'arg&-no-overlap': 3455, 'assign': 347, 'arg-no-overlap': 43617, 'assign&': 337, 'arg': 182, 'return': 12, 'field': 3224}
Unkstruct_800B5CB8 sites 107580 bodies 11184 fields 134 size≥0x10c width-conflicts 50 sign-mixed 55 merges {'param': 9704, 'assign': 8078, 'arg': 7080, 'field': 2622} at D_800B5CB8,D_800D3888,D_80181448 ptr D_8006386C,D_80074778,D_80074780
Unkstruct_80126B58 sites 65397 bodies 17047 fields 175 size≥0x24c width-conflicts 50 sign-mixed 60 merges {'param': 2102, 'arg': 1087, 'assign&': 106, 'field': 51} at D_80126B58 ptr D_80126B58
STRUCT MAP 18853 types explain 469163/473279 deref sites (99.1 %); unassigned 4116; 3968 types span ≥2 bodies (412217 sites), 14885 single-body; types with conflicts 858, suspect 12
merges by evidence {'param': 39680, 'arg': 11284, 'assign': 17745, 'ret-of': 5099, 'assign&': 1239, 'return': 1526, 'arg&': 256, 'field': 8963, 'nested': 6}; vetoed {'arg-no-overlap': 36079, 'arg&-no-overlap': 3438, 'arg-conduit': 121064, 'assign&-multisource': 12168, 'assign-multisource': 33106, 'arg&-conduit': 14637, 'ret-of-multisource': 6609, 'assign': 356, 'field-multisource': 6538, 'assign&': 325, 'ret-of': 395, 'arg': 1262, 'return': 10, 'field': 1168}
Unkstruct_800B5CB8 sites 78513 bodies 7638 fields 133 size≥0x10c width-conflicts 50 sign-mixed 57 merges {'param': 10058, 'assign': 8393, 'arg': 7337, 'field': 2350} at D_800B5CB8,D_800D3888,D_80181448 ptr D_8006386C,D_80074778,D_80074780
Unkstruct_80126B58 sites 64172 bodies 16360 fields 173 size≥0x24c width-conflicts 50 sign-mixed 57 merges {'param': 2084, 'arg': 1083, 'assign&': 107, 'field': 48} at D_80126B58 ptr D_80126B58
Unkstruct_cb638a45 sites 6477 bodies 381 fields 6 size≥0x10 width-conflicts 0 sign-mixed 0 merges {'param': 10, 'arg': 4}
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_8014964C sites 4093 bodies 1749 fields 20 size≥0x84 width-conflicts 1 sign-mixed 9 merges {'field': 112}
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_8014A1B0 sites 3778 bodies 542 fields 13 size≥0xfe width-conflicts 0 sign-mixed 1 merges {'field': 13, 'arg': 10, 'param': 10, 'return': 1}
Unkstruct_80128EA8 sites 3311 bodies 632 fields 18 size≥0x38 width-conflicts 0 sign-mixed 13 merges {'arg': 23, 'ret-of': 19, 'field': 7, 'param': 2}
Unkstruct_8015D57C sites 3768 bodies 540 fields 7 size≥0xfe width-conflicts 0 sign-mixed 0 merges {'field': 10}
Unkstruct_80126948 sites 3278 bodies 1095 fields 34 size≥0xa4 width-conflicts 1 sign-mixed 10 merges {'assign': 104, 'arg': 17, 'param': 14, '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 {}
GLOBAL BLOCKS 2124 runs of ≥4 adjacent scalar D_ symbols (14253 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)
GLOBAL BLOCKS 2121 runs of ≥4 adjacent scalar D_ symbols (14243 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) · 502988 cast sites in 69492 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: 19123 types over 19123 clusters explain 498868/502988 sites (99.2 %); 4120 unassigned sites; 857 types with conflicts
type_census: 1650 definitions (523 layouts, 53 duplicate classes, 0 variant camps) · 473279 cast sites in 67648 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: 18853 types over 18853 clusters explain 469163/473279 sites (99.1 %); 4116 unassigned sites; 858 types with conflicts
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff