mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-09-29 07:10:32 -04:00
phase-36: S104 e36 func_80185730 banked (returns a0 via the TU's def-side alias, class E)
This commit is contained in:
@@ -61,8 +61,8 @@
|
||||
"gte/via-macro": 6158,
|
||||
"instruction/direct": 206,
|
||||
"instruction/via-macro": 22,
|
||||
"keepalive/direct": 338,
|
||||
"launder/direct": 626,
|
||||
"keepalive/direct": 337,
|
||||
"launder/direct": 624,
|
||||
"launder/via-macro": 42,
|
||||
"verbatim-body/direct": 2682
|
||||
}
|
||||
@@ -71,8 +71,6 @@
|
||||
"cfake_markers": {
|
||||
"count": 50,
|
||||
"sample": [
|
||||
"src/ov_SC05_003/ov_SC05_003_jr_8017BEBC.c:4815",
|
||||
"src/ov_SC05_005/ov_SC05_005_jr_8017D898.c:4026",
|
||||
"src/800.c:12578",
|
||||
"src/800_b_2.c:2948",
|
||||
"src/800_b_2.c:2965",
|
||||
@@ -105,6 +103,8 @@
|
||||
"src/ov_SC04_011/ov_SC04_011_jr_8017D494.c:10290",
|
||||
"src/ov_SC04_011/ov_SC04_011_jr_8017D494.c:13431",
|
||||
"src/ov_SC05_001/ov_SC05_001_jr_8017BEBC.c:5814",
|
||||
"src/ov_SC05_003/ov_SC05_003_jr_8017BEBC.c:4815",
|
||||
"src/ov_SC05_005/ov_SC05_005_jr_8017D898.c:4026",
|
||||
"src/ov_SC05_007/ov_SC05_007_jr_8017BEBC.c:3335",
|
||||
"src/ov_SC05_018/ov_SC05_018_jr_8017D604.c:4942",
|
||||
"src/ov_SC06_000/ov_SC06_000_jr_8017AE2C.c:8444",
|
||||
@@ -115,23 +115,23 @@
|
||||
},
|
||||
"classes": {
|
||||
"A": {
|
||||
"bodies": 1398,
|
||||
"distinct_bodies": 565,
|
||||
"bodies": 1397,
|
||||
"distinct_bodies": 564,
|
||||
"file_scope": 0,
|
||||
"in_bodies": 2257,
|
||||
"in_bodies": 2256,
|
||||
"kinds": {
|
||||
"pin": 2257
|
||||
"pin": 2256
|
||||
},
|
||||
"marked": 2257,
|
||||
"sites": 2257,
|
||||
"marked": 2256,
|
||||
"sites": 2256,
|
||||
"tus": 1078,
|
||||
"unmarked": 0
|
||||
},
|
||||
"B": {
|
||||
"bodies": 4650,
|
||||
"distinct_bodies": 713,
|
||||
"bodies": 4648,
|
||||
"distinct_bodies": 711,
|
||||
"file_scope": 13,
|
||||
"in_bodies": 11264,
|
||||
"in_bodies": 11261,
|
||||
"kinds": {
|
||||
"asm-body": 13,
|
||||
"barrier": 272,
|
||||
@@ -139,12 +139,12 @@
|
||||
"gte-lever": 451,
|
||||
"gte-unsigned": 270,
|
||||
"instruction": 228,
|
||||
"keepalive": 338,
|
||||
"launder": 668,
|
||||
"keepalive": 337,
|
||||
"launder": 666,
|
||||
"verbatim-body": 2682
|
||||
},
|
||||
"marked": 2454,
|
||||
"sites": 11277,
|
||||
"marked": 2451,
|
||||
"sites": 11274,
|
||||
"tus": 1426,
|
||||
"unmarked": 8823
|
||||
},
|
||||
@@ -180,15 +180,15 @@
|
||||
"E": {
|
||||
"bodies": 1099,
|
||||
"distinct_bodies": 160,
|
||||
"file_scope": 6424,
|
||||
"file_scope": 6425,
|
||||
"in_bodies": 1368,
|
||||
"kinds": {
|
||||
"asm-label": 7792
|
||||
"asm-label": 7793
|
||||
},
|
||||
"marked": 0,
|
||||
"sites": 7792,
|
||||
"sites": 7793,
|
||||
"tus": 2090,
|
||||
"unmarked": 7792
|
||||
"unmarked": 7793
|
||||
},
|
||||
"F": {
|
||||
"bodies": 428,
|
||||
@@ -250,9 +250,9 @@
|
||||
"coverage": {
|
||||
"asm": {
|
||||
"comment_dead": 6781,
|
||||
"live": 15172,
|
||||
"live": 15169,
|
||||
"macro_block": 194,
|
||||
"raw": 22147
|
||||
"raw": 22144
|
||||
},
|
||||
"attribute": {
|
||||
"comment_dead": 0,
|
||||
@@ -268,9 +268,9 @@
|
||||
},
|
||||
"register": {
|
||||
"comment_dead": 8574,
|
||||
"live": 2307,
|
||||
"live": 2306,
|
||||
"macro_block": 18,
|
||||
"raw": 10899
|
||||
"raw": 10898
|
||||
},
|
||||
"volatile": {
|
||||
"comment_dead": 2607,
|
||||
@@ -280,7 +280,7 @@
|
||||
}
|
||||
},
|
||||
"coverage_ok": true,
|
||||
"elapsed_s": 22.2,
|
||||
"elapsed_s": 22.1,
|
||||
"generated": "2026-09-11",
|
||||
"gte_levers": {
|
||||
"direct": 357,
|
||||
@@ -291,15 +291,15 @@
|
||||
"via_macro": 94,
|
||||
"what": "GTE ops whose clobbers exceed the canonical macro's (a scheduling steer): class-B levers INSIDE the headline number since T5 (2026-09-09), marked, 0 at the close"
|
||||
},
|
||||
"head": "a4f043bc3",
|
||||
"head": "4c7f60154",
|
||||
"headers": 3181,
|
||||
"levers_AB": {
|
||||
"asm": 1970,
|
||||
"bodies": 2068,
|
||||
"distinct_bodies": 758,
|
||||
"marked": 4227,
|
||||
"pins": 2257,
|
||||
"sites": 4227,
|
||||
"asm": 1967,
|
||||
"bodies": 2066,
|
||||
"distinct_bodies": 756,
|
||||
"marked": 4223,
|
||||
"pins": 2256,
|
||||
"sites": 4223,
|
||||
"unmarked": 0,
|
||||
"what": "register pins + asm statements excluding GTE ops: the classes the phase drives to 0"
|
||||
},
|
||||
@@ -446,7 +446,7 @@
|
||||
"$17": 33,
|
||||
"$18": 27,
|
||||
"$19": 18,
|
||||
"$2": 778,
|
||||
"$2": 777,
|
||||
"$20": 7,
|
||||
"$21": 5,
|
||||
"$22": 3,
|
||||
@@ -465,29 +465,29 @@
|
||||
"a1": 2,
|
||||
"v0": 2
|
||||
},
|
||||
"sites": 2257,
|
||||
"sites": 2256,
|
||||
"sp": 13,
|
||||
"spelling": {
|
||||
"__asm__": 2232,
|
||||
"__asm__": 2231,
|
||||
"asm": 25
|
||||
},
|
||||
"volatile_qualified": 0,
|
||||
"zero": 56
|
||||
},
|
||||
"src_stamp": "bb8452ddd3e4e0ab",
|
||||
"src_stamp": "c6d641655ae61886",
|
||||
"tus": 4121,
|
||||
"unclassified": 0,
|
||||
"union_AD": {
|
||||
"bodies": 5832,
|
||||
"bodies": 5830,
|
||||
"by_kind": {
|
||||
"main": 128,
|
||||
"md": 114,
|
||||
"ov": 5423,
|
||||
"ov": 5421,
|
||||
"resident": 6,
|
||||
"shared": 161
|
||||
},
|
||||
"copies_in_multi": 4857,
|
||||
"distinct_bodies": 1089,
|
||||
"distinct_bodies": 1087,
|
||||
"multi_copy_classes": 114
|
||||
},
|
||||
"verbatim_excluded": {
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
lever_census: 218 binaries · 4,121 TUs + 3,181 headers · coverage OK · unclassified 0 · verbatim excluded 13 fn / 14 sites (manifest 13)
|
||||
coverage asm raw 22147 = live 15172 + macro-block 194 + comment/dead 6781
|
||||
coverage register raw 10899 = live 2307 + macro-block 18 + comment/dead 8574
|
||||
coverage asm raw 22144 = live 15169 + macro-block 194 + comment/dead 6781
|
||||
coverage register raw 10898 = live 2306 + macro-block 18 + comment/dead 8574
|
||||
coverage volatile raw 4372 = live 1683 + macro-block 82 + comment/dead 2607
|
||||
coverage builtin raw 599 = live 445 + macro-block 0 + comment/dead 154
|
||||
coverage attribute raw 76 = live 76 + macro-block 0 + comment/dead 0
|
||||
class sites in-bodies file-scope bodies distinct TUs marked unmarked kinds
|
||||
A pins 2257 2257 0 1398 565 1078 2257 0 {'pin': 2257}
|
||||
B asm 11277 11264 13 4650 713 1426 2454 8823 {'launder': 668, 'barrier': 272, 'gte': 6355, 'keepalive': 338, 'gte-lever': 451, 'gte-unsigned': 270, 'instruction': 228, 'asm-body': 13, 'verbatim-body': 2682}
|
||||
C volatile 1589 1437 152 495 94 609 14 1575 {'cast': 1377, 'decl-body': 58, 'decl-file': 152, 'param': 2}
|
||||
A pins 2256 2256 0 1397 564 1078 2256 0 {'pin': 2256}
|
||||
B asm 11274 11261 13 4648 711 1426 2451 8823 {'gte-lever': 451, 'launder': 666, 'keepalive': 337, 'gte': 6355, 'gte-unsigned': 270, 'barrier': 272, 'instruction': 228, 'asm-body': 13, 'verbatim-body': 2682}
|
||||
C volatile 1589 1437 152 495 94 609 14 1575 {'decl-body': 58, 'decl-file': 152, 'cast': 1377, 'param': 2}
|
||||
D register 50 50 0 47 47 6 0 50 {'register': 50}
|
||||
E asm-label 7792 1368 6424 1099 160 2090 0 7792 {'asm-label': 7792}
|
||||
E asm-label 7793 1368 6425 1099 160 2090 0 7793 {'asm-label': 7793}
|
||||
F builtin 445 445 0 428 27 302 0 445 {'builtin': 445}
|
||||
G attribute 76 1 75 1 1 40 0 76 {'attribute': 76}
|
||||
UNION A–D: 5,832 bodies · 1,089 distinct (addresses normalized) · 114 multi-copy classes holding 4,857 bodies · by kind {'main': 128, 'ov': 5423, 'shared': 161, 'md': 114, 'resident': 6}
|
||||
THE PHASE'S NUMBER (pins + asm statements, GTE excluded): 4,227 sites in 2,068 bodies (758 distinct) · marked !FAKE 4,227 · UNMARKED 0
|
||||
UNION A–D: 5,830 bodies · 1,087 distinct (addresses normalized) · 114 multi-copy classes holding 4,857 bodies · by kind {'ov': 5421, 'shared': 161, 'main': 128, 'md': 114, 'resident': 6}
|
||||
THE PHASE'S NUMBER (pins + asm statements, GTE excluded): 4,223 sites in 2,066 bodies (756 distinct) · marked !FAKE 4,223 · UNMARKED 0
|
||||
orphan !FAKE markers (no pin/asm site on the line nor below): 0
|
||||
marked ordinary-C fakes kept by Drew's S104 ruling (a) (`do { } while (0)`, dead initialisers; NOT levers): 50
|
||||
GTE levers (clobbers beyond the canonical macro's): 451 sites (94 via a variant macro, 357 direct) · marked 451 · UNMARKED 0 · unsigned GTE statements 270
|
||||
per-TU asm macro definitions outside the GTE header: 314 {'gte': 150, 'launder': 154, 'instruction': 9, 'barrier': 1} (GTE variants 64)
|
||||
pins: 2,257 · $0 56 · $sp 13 · with initializer 208 · volatile-qualified 0 · bare-name 9 · spellings {'__asm__': 2232, 'asm': 25}
|
||||
pins: 2,256 · $0 56 · $sp 13 · with initializer 208 · volatile-qualified 0 · bare-name 9 · spellings {'__asm__': 2231, 'asm': 25}
|
||||
whole-body asm routines in C shells, manifest PERMANENT (hand asm, NOT levers): 22 routines · 2,682 sites (2,660 private copies + 22 shared headers); asm-bodies NOT permanent (levers): 13 site(s) ['func_8001E378:DECOMPILE-NOW', 'func_80020F34:DECOMPILE-NOW', 'func_800249F0:DECOMPILE-NOW', 'func_80025CBC:DECOMPILE-NOW', 'func_80026514:UNCERTAIN', 'func_800268D0:UNCERTAIN', 'func_80027058:DECOMPILE-NOW', 'func_80027200:DECOMPILE-NOW', 'func_800CBA44:DECOMPILE-NOW', 'func_8017D810:DECOMPILE-NOW', 'func_8017E26C:UNCERTAIN', 'func_80184440:DECOMPILE-NOW', 'func_801A3BCC:DECOMPILE-NOW']
|
||||
asm kinds: {'asm-body/direct': 13, 'barrier/direct': 272, 'gte/direct': 197, 'gte/via-macro': 6158, 'gte-lever/direct': 357, 'gte-lever/via-macro': 94, 'gte-unsigned/direct': 270, 'instruction/direct': 206, 'instruction/via-macro': 22, 'keepalive/direct': 338, 'launder/direct': 626, 'launder/via-macro': 42, 'verbatim-body/direct': 2682}
|
||||
asm kinds: {'asm-body/direct': 13, 'barrier/direct': 272, 'gte/direct': 197, 'gte/via-macro': 6158, 'gte-lever/direct': 357, 'gte-lever/via-macro': 94, 'gte-unsigned/direct': 270, 'instruction/direct': 206, 'instruction/via-macro': 22, 'keepalive/direct': 337, 'launder/direct': 624, 'launder/via-macro': 42, 'verbatim-body/direct': 2682}
|
||||
instruction mnemonics: {'la': 139, 'addu': 23, 'addiu': 22, 'RTP_SND': 22, '.section': 7, 'lui': 3, 'lh': 3, 'and': 2, 'mult': 1, 'mfhi': 1, 'sll': 1, 'li': 1, 'lw': 1, 'nop': 1, 'srl': 1}
|
||||
gte mnemonics: {'gte_ldv0': 758, 'gte_stlvnl': 593, 'gte_stsxy': 448, 'gte_rtps': 439, 'gte_stflg': 415, 'gte_rtpt': 352, 'gte_SetRotMatrix': 253, 'gte_stsxy3': 236, 'gte_SetTransMatrix': 231, 'gte_rtv0tr': 228, 'gte_ldv3c': 184, 'gte_ldv3': 177, 'gte_stsv': 161, 'lwc2': 158, 'gte_stsz4': 149, 'gte_stsz3': 147, 'gte_stszotz': 134, 'gte_dpcl': 134, 'gte_stclmv': 114, 'gte_stsxy3_f3': 111, 'gte_nclip': 108, 'gte_stopz': 108, 'gte_stsxy3c': 108, 'gte_rtir': 81, 'gte_stsxy3_ft3': 79, 'gte_ldclmv': 78, 'gte_avsz4': 56, 'gte_stotz': 52, 'gte_ldrgb': 30, 'gte_nccs': 25}
|
||||
asm-bearing macro definitions: 314 (20 names, 3 with >1 text) kinds {'gte': 150, 'launder': 154, 'instruction': 9, 'barrier': 1}
|
||||
@@ -29,4 +29,4 @@ lever_census: 218 binaries · 4,121 TUs + 3,181 headers · coverage OK · unclas
|
||||
src/shared/ov/func_80178004.h pins got 8 expected 26 N-A
|
||||
ov_SC03_006 func_80184034 bare-name pins got 0 expected 3 N-A
|
||||
engine_prelude.h asm sites (a macro definition only) got 0 expected 0 OK
|
||||
elapsed 22.2 s
|
||||
elapsed 22.1 s
|
||||
|
||||
Reference in New Issue
Block a user