From 046e846007cc84be64d9cb13e5b4af6fdd8b78c3 Mon Sep 17 00:00:00 2001 From: Drew T <50529377+Druthulu@users.noreply.github.com> Date: Fri, 11 Sep 2026 04:54:50 -0600 Subject: [PATCH] =?UTF-8?q?phase-36:=20S104=20R22=20218/218=20after=20e30?= =?UTF-8?q?=E2=80=93e34;=20census=20exit=200=20|=20=F0=9F=9B=91=20T7=20RUN?= =?UTF-8?q?NING?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .run/P36/census/lever_census.json | 116 +++++++++++++++--------------- .run/P36/census/lever_census.txt | 24 +++---- docs/lever-progress.tsv | 1 + docs/levers.md | 8 ++- 4 files changed, 78 insertions(+), 71 deletions(-) diff --git a/.run/P36/census/lever_census.json b/.run/P36/census/lever_census.json index 3b3cf6617..1cb9914d2 100644 --- a/.run/P36/census/lever_census.json +++ b/.run/P36/census/lever_census.json @@ -53,7 +53,7 @@ }, "kinds": { "asm-body/direct": 13, - "barrier/direct": 280, + "barrier/direct": 272, "gte-lever/direct": 357, "gte-lever/via-macro": 94, "gte-unsigned/direct": 270, @@ -61,18 +61,22 @@ "gte/via-macro": 6158, "instruction/direct": 206, "instruction/via-macro": 22, - "keepalive/direct": 340, - "launder/direct": 634, + "keepalive/direct": 338, + "launder/direct": 626, "launder/via-macro": 42, "verbatim-body/direct": 2682 } }, "binaries": 218, "cfake_markers": { - "count": 47, + "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:3084", + "src/800_b_2.c:2948", + "src/800_b_2.c:2965", + "src/800_b_2.c:3087", "src/md_SC07_003/md_SC07_003.c:3577", "src/md_SC07_004/md_SC07_004.c:280", "src/ov_SC01_000/ov_SC01_000_jr_8017BEBC.c:3570", @@ -97,54 +101,50 @@ "src/ov_SC04_002/ov_SC04_002_jr_8017BEBC.c:10069", "src/ov_SC04_005/ov_SC04_005_jr_8017BEBC.c:9325", "src/ov_SC04_007/ov_SC04_007_jr_8017BEBC.c:6630", - "src/ov_SC04_011/ov_SC04_011_jr_8017D494.c:7484", - "src/ov_SC04_011/ov_SC04_011_jr_8017D494.c:10288", + "src/ov_SC04_011/ov_SC04_011_jr_8017D494.c:7486", + "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", "src/ov_SC06_000/ov_SC06_000_jr_8017AE2C.c:8484", "src/ov_SC06_000/ov_SC06_000_jr_8017AE2C.c:8811", - "src/ov_SC06_018/ov_SC06_018_jr_80187AEC.c:3125", - "src/ov_SC06_018/ov_SC06_018_jr_80187AEC.c:5384", - "src/ov_SC06_020/ov_SC06_020_jr_80180B04.c:3714", - "src/ov_SC06_022/ov_SC06_022_jr_80184A28.c:3757" + "src/ov_SC06_018/ov_SC06_018_jr_80187AEC.c:3125" ] }, "classes": { "A": { - "bodies": 1408, - "distinct_bodies": 575, + "bodies": 1398, + "distinct_bodies": 565, "file_scope": 0, - "in_bodies": 2271, + "in_bodies": 2257, "kinds": { - "pin": 2271 + "pin": 2257 }, - "marked": 2271, - "sites": 2271, - "tus": 1079, + "marked": 2257, + "sites": 2257, + "tus": 1078, "unmarked": 0 }, "B": { - "bodies": 4662, - "distinct_bodies": 725, + "bodies": 4650, + "distinct_bodies": 713, "file_scope": 13, - "in_bodies": 11282, + "in_bodies": 11264, "kinds": { "asm-body": 13, - "barrier": 280, + "barrier": 272, "gte": 6355, "gte-lever": 451, "gte-unsigned": 270, "instruction": 228, - "keepalive": 340, - "launder": 676, + "keepalive": 338, + "launder": 668, "verbatim-body": 2682 }, - "marked": 2472, - "sites": 11295, + "marked": 2454, + "sites": 11277, "tus": 1426, "unmarked": 8823 }, @@ -250,9 +250,9 @@ "coverage": { "asm": { "comment_dead": 6781, - "live": 15204, + "live": 15172, "macro_block": 194, - "raw": 22179 + "raw": 22147 }, "attribute": { "comment_dead": 0, @@ -268,19 +268,19 @@ }, "register": { "comment_dead": 8574, - "live": 2321, + "live": 2307, "macro_block": 18, - "raw": 10913 + "raw": 10899 }, "volatile": { "comment_dead": 2607, - "live": 1684, + "live": 1683, "macro_block": 82, - "raw": 4373 + "raw": 4372 } }, "coverage_ok": true, - "elapsed_s": 22.1, + "elapsed_s": 22.2, "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": "8b0e8645e", + "head": "a4f043bc3", "headers": 3181, "levers_AB": { - "asm": 1988, - "bodies": 2082, - "distinct_bodies": 772, - "marked": 4259, - "pins": 2271, - "sites": 4259, + "asm": 1970, + "bodies": 2068, + "distinct_bodies": 758, + "marked": 4227, + "pins": 2257, + "sites": 4227, "unmarked": 0, "what": "register pins + asm statements excluding GTE ops: the classes the phase drives to 0" }, @@ -433,27 +433,27 @@ }, "pins": { "bare_name": 9, - "init": 209, + "init": 208, "registers": { - "$0": 58, + "$0": 56, "$10": 10, "$11": 5, "$12": 9, "$13": 6, "$14": 5, "$15": 1, - "$16": 86, - "$17": 34, - "$18": 28, - "$19": 19, - "$2": 780, + "$16": 83, + "$17": 33, + "$18": 27, + "$19": 18, + "$2": 778, "$20": 7, "$21": 5, "$22": 3, "$23": 6, "$25": 1, "$29": 13, - "$3": 171, + "$3": 167, "$4": 503, "$5": 380, "$6": 62, @@ -465,29 +465,29 @@ "a1": 2, "v0": 2 }, - "sites": 2271, + "sites": 2257, "sp": 13, "spelling": { - "__asm__": 2246, + "__asm__": 2232, "asm": 25 }, "volatile_qualified": 0, - "zero": 58 + "zero": 56 }, - "src_stamp": "8a29b650d0a7b817", + "src_stamp": "bb8452ddd3e4e0ab", "tus": 4121, "unclassified": 0, "union_AD": { - "bodies": 5846, + "bodies": 5832, "by_kind": { - "main": 133, + "main": 128, "md": 114, - "ov": 5432, + "ov": 5423, "resident": 6, "shared": 161 }, "copies_in_multi": 4857, - "distinct_bodies": 1103, + "distinct_bodies": 1089, "multi_copy_classes": 114 }, "verbatim_excluded": { diff --git a/.run/P36/census/lever_census.txt b/.run/P36/census/lever_census.txt index 5c735fc4a..de5b54a60 100644 --- a/.run/P36/census/lever_census.txt +++ b/.run/P36/census/lever_census.txt @@ -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 22179 = live 15204 + macro-block 194 + comment/dead 6781 - coverage register raw 10913 = live 2321 + macro-block 18 + comment/dead 8574 - coverage volatile raw 4373 = live 1684 + macro-block 82 + comment/dead 2607 + 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 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 2271 2271 0 1408 575 1079 2271 0 {'pin': 2271} - B asm 11295 11282 13 4662 725 1426 2472 8823 {'gte': 6355, 'gte-lever': 451, 'gte-unsigned': 270, 'barrier': 280, 'launder': 676, 'instruction': 228, 'asm-body': 13, 'keepalive': 340, 'verbatim-body': 2682} - C volatile 1589 1437 152 495 94 609 14 1575 {'decl-body': 58, 'decl-file': 152, 'cast': 1377, 'param': 2} + 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} 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} 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,846 bodies · 1,103 distinct (addresses normalized) · 114 multi-copy classes holding 4,857 bodies · by kind {'ov': 5432, 'main': 133, 'md': 114, 'shared': 161, 'resident': 6} - THE PHASE'S NUMBER (pins + asm statements, GTE excluded): 4,259 sites in 2,082 bodies (772 distinct) · marked !FAKE 4,259 · UNMARKED 0 + 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 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): 47 + 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,271 · $0 58 · $sp 13 · with initializer 209 · volatile-qualified 0 · bare-name 9 · spellings {'__asm__': 2246, 'asm': 25} + pins: 2,257 · $0 56 · $sp 13 · with initializer 208 · volatile-qualified 0 · bare-name 9 · spellings {'__asm__': 2232, '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': 280, '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': 340, 'launder/direct': 634, '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': 338, 'launder/direct': 626, '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.1 s + elapsed 22.2 s diff --git a/docs/lever-progress.tsv b/docs/lever-progress.tsv index f9c8b49f2..87af80e38 100644 --- a/docs/lever-progress.tsv +++ b/docs/lever-progress.tsv @@ -63,3 +63,4 @@ date milestone head sites_AB pins asm bodies_AB distinct_AB marked unmarked gte_ 2026-09-11 S104 T7: TU batches e5–e13 (ov_SC02_017 TU at 0) 860ed9153 4436 2370 2066 2187 873 4436 0 451 314 1589 50 7788 445 76 2026-09-11 S104 T7: TU batches e14–e25 b5b701750 4340 2317 2023 2118 806 4340 0 451 314 1589 50 7788 445 76 2026-09-11 S104 T7: TU batches e18–e29 + R39b/R42 passes edd427861 4272 2279 1993 2090 780 4272 0 451 314 1589 50 7790 445 76 +2026-09-11 S104 T7: e30–e34 batches a4f043bc3 4227 2257 1970 2068 758 4227 0 451 314 1589 50 7792 445 76 diff --git a/docs/levers.md b/docs/levers.md index 6d1b856c8..e1e50875a 100644 --- a/docs/levers.md +++ b/docs/levers.md @@ -109,6 +109,7 @@ counted, not marked). E, F and G belong to the canonical type layer and are the | 2026-09-11 | S104 T7: TU batches e5–e13 (ov_SC02_017 TU at 0) | 2370 | 2066 | **4436** | 2187 | 873 | 451 | 314 | 1589 | 50 | 7788 | 445 | 76 | `860ed9153` | | 2026-09-11 | S104 T7: TU batches e14–e25 | 2317 | 2023 | **4340** | 2118 | 806 | 451 | 314 | 1589 | 50 | 7788 | 445 | 76 | `b5b701750` | | 2026-09-11 | S104 T7: TU batches e18–e29 + R39b/R42 passes | 2279 | 1993 | **4272** | 2090 | 780 | 451 | 314 | 1589 | 50 | 7790 | 445 | 76 | `edd427861` | +| 2026-09-11 | S104 T7: e30–e34 batches | 2257 | 1970 | **4227** | 2068 | 758 | 451 | 314 | 1589 | 50 | 7792 | 445 | 76 | `a4f043bc3` | ### The campaign — every batch, from the ledger (derived on every render) @@ -395,7 +396,12 @@ counted, not marked). E, F and G belong to the canonical type layer and are the | `s104_e29` | 2026-09-11 | E | 0 | 0 | 0 | 7 | 2 | | `s104_r39b` | 2026-09-11 | E | 0 | 0 | 0 | 1 | 1 | | `s104_r42` | 2026-09-11 | E | 0 | 0 | 0 | 3 | 2 | -| **total** | | | **17,122** | **20,778** | **283** | **30,156** | **10,657** | +| `s104_e33` | 2026-09-11 | E | 0 | 0 | 0 | 5 | 4 | +| `s104_e34` | 2026-09-11 | E | 0 | 0 | 0 | 8 | 4 | +| `s104_e30` | 2026-09-11 | E | 0 | 0 | 0 | 8 | 3 | +| `s104_e31` | 2026-09-11 | E | 0 | 0 | 0 | 13 | 5 | +| `s104_e32` | 2026-09-11 | E | 0 | 0 | 0 | 9 | 5 | +| **total** | | | **17,122** | **20,778** | **283** | **30,199** | **10,678** | *Generated by `tools/lever_progress.py --render` from `.run/P36/census/lever_census.json` and `.run/P36/delever/ledger.jsonl`; the series lives in `docs/lever-progress.tsv` (R75: published numbers are generated, never typed).*