diff --git a/docs/backlog.md b/docs/backlog.md index 3298448c4..bf63a9156 100644 --- a/docs/backlog.md +++ b/docs/backlog.md @@ -2,7 +2,7 @@ > Generated by `tools/backlog.py render` from `.run/backlog.jsonl`. These are functions the Phase-21 automation got **close** on but did NOT byte-match. The whole-binary byte-gate is the sole arbiter (G3/P9): **byte-matches bank and are NOT listed here** — only genuine near-misses/blockers are. Ranked by hand-session priority: **reach** (×N propagation leverage) → **closeness** (match_one mismatch count, lower = closer) → **size**. Each row's `best_draft` is the closest C the machine reached — resume from there. -**Open near-misses:** 198 · by status {'near': 141, 'failed': 57} · by class {'struct': 1, 'schedule': 1, 'WAVE': 3, None: 188, 'LENGTH-DRIFT': 3, 'regalloc-perm-clamp': 1, 'STRUCT': 1} +**Open near-misses:** 195 · by status {'near': 139, 'failed': 56} · by class {'struct': 1, 'schedule': 1, 'WAVE': 2, None: 186, 'LENGTH-DRIFT': 3, 'regalloc-perm-clamp': 1, 'STRUCT': 1} | # | addr | reach | class | nins | status | closeness | where it stuck | best draft | |--:|------|------:|-------|-----:|--------|----------:|----------------|------------| @@ -33,174 +33,171 @@ | 25 | func_80180E68 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80180E68.c` | | 26 | func_80183FC8 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80183FC8.c` | | 27 | func_80181CB8 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80181CB8.c` | -| 28 | func_80182DCC | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80182DCC.c` | -| 29 | func_8017ECB4 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017ECB4.c` | -| 30 | func_8017F8B8 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017F8B8.c` | -| 31 | func_8017F950 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017F950.c` | -| 32 | func_80181E88 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80181E88.c` | -| 33 | func_80182170 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80182170.c` | -| 34 | func_80188E3C | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80188E3C.c` | -| 35 | func_800D0488 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_800D0488.c` | -| 36 | func_8017F6C0 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017F6C0.c` | -| 37 | func_8016AE5C | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8016AE5C.c` | -| 38 | func_801A11D4 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_801A11D4.c` | -| 39 | func_8017E48C | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017E48C.c` | -| 40 | func_801827E0 | None | | 23 | near | 1 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=23 target=23 | `.run/wave_eo/shard427/func_801827E0.c` | -| 41 | func_8017F268 | None | LENGTH-DRIFT | None | near | 1 | lenmiss permuter-length route | `.run/backlog_drafts/func_8017F268.c` | -| 42 | func_8017E1E8 | None | | None | near | 1 | residual: 1 mismatch | `.run/backlog_drafts/func_8017E1E8.c` | -| 43 | func_801AB818 | None | | None | near | 1 | residual: 1 mismatch | `.run/backlog_drafts/func_801AB818.c` | -| 44 | func_80180020 | None | | 231 | near | 2 | resolver DIFF (real-TU rtu_match, 20260826-145551): mine=231 target=231 | `.run/backlog_drafts/func_80180020.c` | -| 45 | func_801A4ACC | None | | 237 | near | 2 | resolver DIFF (real-TU rtu_match, 20260826-145551): mine=237 target=237 | `.run/backlog_drafts/func_801A4ACC.c` | -| 46 | func_801804C8 | None | | None | near | 2 | residual: 2 mismatch | `.run/backlog_drafts/func_801804C8.c` | -| 47 | func_8017E254 | None | LENGTH-DRIFT | None | near | 2 | lenmiss permuter-length route | `.run/backlog_drafts/func_8017E254.c` | -| 48 | func_80180A10 | None | LENGTH-DRIFT | None | near | 2 | lenmiss permuter-length route | `.run/backlog_drafts/func_80180A10.c` | -| 49 | func_80180B84 | None | | None | near | 2 | residual: 2 mismatch | `.run/backlog_drafts/func_80180B84.c` | -| 50 | func_801809B8 | None | | None | near | 2 | residual: 2 mismatch | `.run/backlog_drafts/func_801809B8.c` | -| 51 | func_801816C8 | None | | None | near | 2 | residual: 2 mismatch | `.run/backlog_drafts/func_801816C8.c` | -| 52 | func_8017DA50 | None | | None | near | 3 | residual: 3 mismatch | `.run/backlog_drafts/func_8017DA50.c` | +| 28 | func_80182AF8 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80182AF8.c` | +| 29 | func_80182DCC | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80182DCC.c` | +| 30 | func_8017ECB4 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017ECB4.c` | +| 31 | func_8017F8B8 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017F8B8.c` | +| 32 | func_8017F950 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017F950.c` | +| 33 | func_80181E88 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80181E88.c` | +| 34 | func_80182170 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80182170.c` | +| 35 | func_80188E3C | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_80188E3C.c` | +| 36 | func_800D0488 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_800D0488.c` | +| 37 | func_8017F6C0 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017F6C0.c` | +| 38 | func_8016AE5C | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8016AE5C.c` | +| 39 | func_801A11D4 | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_801A11D4.c` | +| 40 | func_8017E48C | None | | None | near | 0 | match_one MATCH but the whole-binary gate rejected — CAUSE NOT DETERMINED. FIRST re-derive the destination TU from the asm subdir: asm//nonmatchings//.s => src//.c (the third path component IS the TU). Only then look for a decl conflict or a codegen residual. | `.run/backlog_drafts/func_8017E48C.c` | +| 41 | func_801827E0 | None | | 23 | near | 1 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=23 target=23 | `.run/wave_eo/shard427/func_801827E0.c` | +| 42 | func_8017F268 | None | LENGTH-DRIFT | None | near | 1 | lenmiss permuter-length route | `.run/backlog_drafts/func_8017F268.c` | +| 43 | func_8017E1E8 | None | | None | near | 1 | residual: 1 mismatch | `.run/backlog_drafts/func_8017E1E8.c` | +| 44 | func_801AB818 | None | | None | near | 1 | residual: 1 mismatch | `.run/backlog_drafts/func_801AB818.c` | +| 45 | func_80180020 | None | | 231 | near | 2 | resolver DIFF (real-TU rtu_match, 20260826-145551): mine=231 target=231 | `.run/backlog_drafts/func_80180020.c` | +| 46 | func_801A4ACC | None | | 237 | near | 2 | resolver DIFF (real-TU rtu_match, 20260826-145551): mine=237 target=237 | `.run/backlog_drafts/func_801A4ACC.c` | +| 47 | func_801804C8 | None | | None | near | 2 | residual: 2 mismatch | `.run/backlog_drafts/func_801804C8.c` | +| 48 | func_8017E254 | None | LENGTH-DRIFT | None | near | 2 | lenmiss permuter-length route | `.run/backlog_drafts/func_8017E254.c` | +| 49 | func_80180A10 | None | LENGTH-DRIFT | None | near | 2 | lenmiss permuter-length route | `.run/backlog_drafts/func_80180A10.c` | +| 50 | func_80180B84 | None | | None | near | 2 | residual: 2 mismatch | `.run/backlog_drafts/func_80180B84.c` | +| 51 | func_801809B8 | None | | None | near | 2 | residual: 2 mismatch | `.run/backlog_drafts/func_801809B8.c` | +| 52 | func_801816C8 | None | | None | near | 2 | residual: 2 mismatch | `.run/backlog_drafts/func_801816C8.c` | | 53 | func_80185840 | None | regalloc-perm-clamp | None | near | 3 | 52/52 ins, 9->3 mismatched. Residual = ONE register identity (clamp result in $a0, target wants $v0). THREE reusable levers found: (1) the §17 zero-reg copy done right — 'register u32 zr __asm__("$0"); c = val + zr;' reproduces the target's non-coalescing 'addu $v1,$v0,$zero' live-range copy, which §52a had called the non-coalescing-delay-slot-copy WALL; (2) 'r = 0x80;' BEFORE a single-armed if (not if/else) is what gets the li into the branch delay slot — reorg's fill_simple_delay_slots BACKWARD scan steals it, whereas any two-arm spelling needs fill_eager_delay_slots' target-thread steal which never fires (53 ins + j/nop); (3) a zero-byte asm fence between the sh and the += stops sched1 hoisting the lui above the store. Permuter seed. | `.run/wave_p31n/ov_SC02_000/func_80185840.c` | | 54 | func_8017D918 | None | | None | near | 4 | residual: 4 mismatch | `.run/backlog_drafts/func_8017D918.c` | | 55 | func_80185F4C | None | | None | near | 4 | residual: 4 mismatch | `.run/backlog_drafts/func_80185F4C.c` | -| 56 | func_80181B8C | None | | None | near | 5 | residual: 5 mismatch | `.run/backlog_drafts/func_80181B8C.c` | -| 57 | func_8018AD74 | None | | None | near | 5 | residual: 5 mismatch | `.run/backlog_drafts/func_8018AD74.c` | -| 58 | func_8018A3CC | None | | None | near | 5 | residual: 5 mismatch | `.run/backlog_drafts/func_8018A3CC.c` | -| 59 | func_80189240 | None | | None | near | 6 | residual: 6 mismatch | `.run/backlog_drafts/func_80189240.c` | -| 60 | func_801852B0 | None | | None | near | 6 | residual: 6 mismatch | `.run/backlog_drafts/func_801852B0.c` | -| 61 | func_8018611C | None | | None | near | 6 | residual: 6 mismatch | `.run/backlog_drafts/func_8018611C.c` | -| 62 | func_80182CBC | None | | 28 | near | 7 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=28 target=28 | `.run/backlog_drafts/func_80182CBC.c` | -| 63 | func_801ADA10 | None | | None | near | 7 | residual: 7 mismatch | `.run/backlog_drafts/func_801ADA10.c` | -| 64 | func_8017D2AC | None | | None | near | 7 | residual: 7 mismatch | `.run/backlog_drafts/func_8017D2AC.c` | -| 65 | func_80181C84 | None | | None | near | 8 | residual: 8 mismatch | `.run/backlog_drafts/func_80181C84.c` | -| 66 | func_80180EC0 | None | | None | near | 9 | residual: 9 mismatch | `.run/backlog_drafts/func_80180EC0.c` | -| 67 | func_80183940 | None | | 58 | near | 11 | resolver DIFF (real-TU rtu_match, 20260825-235252): mine=58 target=58 | `.run/wave_ex/shard484/func_80183940.c` | -| 68 | func_8017E7E8 | None | | None | near | 11 | residual: 11 mismatch | `.run/backlog_drafts/func_8017E7E8.c` | -| 69 | func_801810A4 | None | | None | near | 12 | residual: 12 mismatch | `.run/backlog_drafts/func_801810A4.c` | -| 70 | func_8017CDE4 | None | | None | near | 16 | residual: 16 mismatch | `.run/backlog_drafts/func_8017CDE4.c` | -| 71 | func_8018FB5C | None | | None | near | 16 | residual: 16 mismatch | `.run/backlog_drafts/func_8018FB5C.c` | -| 72 | func_800D0664 | None | | 22 | near | 19 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=14 target=22 | `.run/backlog_drafts/func_800D0664.c` | -| 73 | func_80181294 | None | | None | near | 19 | residual: 19 mismatch | `.run/backlog_drafts/func_80181294.c` | -| 74 | func_801831D0 | None | | 22 | near | 21 | resolver DIFF (real-TU rtu_match, 20260826-040016): mine=13 target=22 | `.run/backlog_drafts/func_801831D0.c` | -| 75 | func_80183178 | None | | None | near | 21 | residual: 21 mismatch | `.run/backlog_drafts/func_80183178.c` | +| 56 | func_8018AD74 | None | | None | near | 5 | residual: 5 mismatch | `.run/backlog_drafts/func_8018AD74.c` | +| 57 | func_8018A3CC | None | | None | near | 5 | residual: 5 mismatch | `.run/backlog_drafts/func_8018A3CC.c` | +| 58 | func_80189240 | None | | None | near | 6 | residual: 6 mismatch | `.run/backlog_drafts/func_80189240.c` | +| 59 | func_801852B0 | None | | None | near | 6 | residual: 6 mismatch | `.run/backlog_drafts/func_801852B0.c` | +| 60 | func_8018611C | None | | None | near | 6 | residual: 6 mismatch | `.run/backlog_drafts/func_8018611C.c` | +| 61 | func_80182CBC | None | | 28 | near | 7 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=28 target=28 | `.run/backlog_drafts/func_80182CBC.c` | +| 62 | func_801ADA10 | None | | None | near | 7 | residual: 7 mismatch | `.run/backlog_drafts/func_801ADA10.c` | +| 63 | func_8017D2AC | None | | None | near | 7 | residual: 7 mismatch | `.run/backlog_drafts/func_8017D2AC.c` | +| 64 | func_80181C84 | None | | None | near | 8 | residual: 8 mismatch | `.run/backlog_drafts/func_80181C84.c` | +| 65 | func_80180EC0 | None | | None | near | 9 | residual: 9 mismatch | `.run/backlog_drafts/func_80180EC0.c` | +| 66 | func_80183940 | None | | 58 | near | 11 | resolver DIFF (real-TU rtu_match, 20260825-235252): mine=58 target=58 | `.run/wave_ex/shard484/func_80183940.c` | +| 67 | func_8017E7E8 | None | | None | near | 11 | residual: 11 mismatch | `.run/backlog_drafts/func_8017E7E8.c` | +| 68 | func_801810A4 | None | | None | near | 12 | residual: 12 mismatch | `.run/backlog_drafts/func_801810A4.c` | +| 69 | func_8017CDE4 | None | | None | near | 16 | residual: 16 mismatch | `.run/backlog_drafts/func_8017CDE4.c` | +| 70 | func_8018FB5C | None | | None | near | 16 | residual: 16 mismatch | `.run/backlog_drafts/func_8018FB5C.c` | +| 71 | func_800D0664 | None | | 22 | near | 19 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=14 target=22 | `.run/backlog_drafts/func_800D0664.c` | +| 72 | func_80181294 | None | | None | near | 19 | residual: 19 mismatch | `.run/backlog_drafts/func_80181294.c` | +| 73 | func_801831D0 | None | | 22 | near | 21 | resolver DIFF (real-TU rtu_match, 20260826-040016): mine=13 target=22 | `.run/backlog_drafts/func_801831D0.c` | +| 74 | func_80183178 | None | | None | near | 21 | residual: 21 mismatch | `.run/backlog_drafts/func_80183178.c` | +| 75 | func_80181270 | None | | 24 | near | 22 | resolver DIFF (real-TU rtu_match, 20260826-145551): mine=17 target=24 | `.run/backlog_drafts/func_80181270.c` | | 76 | func_8017F35C | None | | 36 | near | 22 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=35 target=36 | `.run/wave_cn/shard141/func_8017F35C.c` | | 77 | func_8017EEA4 | None | | 36 | near | 23 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=36 target=36 | `.run/wave_dx/shard220/func_8017EEA4.c` | | 78 | func_80182FF0 | None | | None | near | 23 | residual: 23 mismatch | `.run/backlog_drafts/func_80182FF0.c` | | 79 | func_8017D4CC | None | | None | near | 23 | residual: 23 mismatch | `.run/backlog_drafts/func_8017D4CC.c` | | 80 | func_801843E0 | None | | None | near | 25 | residual: 25 mismatch | `.run/backlog_drafts/func_801843E0.c` | | 81 | func_80183830 | None | | 29 | near | 27 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=15 target=29 | `.run/backlog_drafts/func_80183830.c` | -| 82 | func_800CAE0C | None | | None | near | 27 | residual: 27 mismatch | `.run/backlog_drafts/func_800CAE0C.c` | -| 83 | func_800D0100 | None | | 29 | near | 29 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=15 target=29 | `.run/backlog_drafts/func_800D0100.c` | -| 84 | func_801805C0 | None | | 81 | near | 29 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=81 target=81 | `.run/wave_du/shard119/func_801805C0.c` | -| 85 | func_80185214 | None | | None | near | 32 | residual: 32 mismatch | `.run/backlog_drafts/func_80185214.c` | -| 86 | func_800D0A7C | None | | 40 | near | 33 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=29 target=40 | `.run/backlog_drafts/func_800D0A7C.c` | -| 87 | func_80181344 | None | | None | near | 48 | residual: 48 mismatch | `.run/backlog_drafts/func_80181344.c` | -| 88 | func_801832E0 | None | | 57 | near | 49 | resolver DIFF (real-TU rtu_match, 20260826-044601): mine=35 target=57 | `.run/wave_g0b/shard8/func_801832E0.c` | -| 89 | func_801808AC | None | | 67 | near | 60 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=41 target=67 | `.run/wave_ec/shard8/func_801808AC.c` | -| 90 | func_8017D610 | None | | None | near | 64 | residual: 64 mismatch | `.run/backlog_drafts/func_8017D610.c` | -| 91 | func_801808AC | None | | 41 | near | 65 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=67 target=41 | `.run/wave_fa/shard6/func_801808AC.c` | -| 92 | func_800D0C50 | None | | 71 | near | 68 | resolver DIFF (real-TU rtu_match, 20260826-044601): mine=46 target=71 | `.run/backlog_drafts/func_800D0C50.c` | -| 93 | func_800D0B1C | None | | 77 | near | 69 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=49 target=77 | `.run/backlog_drafts/func_800D0B1C.c` | -| 94 | func_801835B0 | None | | 73 | near | 71 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=36 target=73 | `.run/wave_ed/shard3/func_801835B0.c` | -| 95 | func_8017FED8 | None | | 62 | near | 72 | resolver DIFF (real-TU rtu_match, 20260826-004023): mine=78 target=62 | `.run/wave_fb/shard11/func_8017FED8.c` | -| 96 | func_801874E4 | None | | None | near | 73 | residual: 73 mismatch | `.run/backlog_drafts/func_801874E4.c` | -| 97 | func_801457A4 | None | | 79 | near | 74 | resolver DIFF (real-TU rtu_match, 20260826-044601): mine=49 target=79 | `.run/backlog_drafts/func_801457A4.c` | -| 98 | func_8017FB04 | None | | 20 | near | 75 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=78 target=20 | `.run/backlog_drafts/func_8017FB04.c` | -| 99 | func_8017FED8 | None | | 78 | near | 75 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=62 target=78 | `.run/wave_ei/shard319/func_8017FED8.c` | -| 100 | func_8017DABC | None | | 78 | near | 75 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=39 target=78 | `.run/wave_dd/shard353/func_8017DABC.c` | -| 101 | func_80180610 | None | | 79 | near | 78 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=31 target=79 | `.run/wave_ck/shard182/func_80180610.c` | -| 102 | func_8017E37C | None | | None | near | 79 | residual: 79 mismatch | `.run/backlog_drafts/func_8017E37C.c` | -| 103 | func_8017FB04 | None | | 83 | near | 80 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=20 target=83 | `.run/wave_eq/shard509/func_8017FB04.c` | -| 104 | func_801805C0 | None | | 22 | near | 81 | resolver DIFF (real-TU rtu_match, 20260825-235252): mine=81 target=22 | `.run/wave_ey/shard163/func_801805C0.c` | -| 105 | func_8017D3F4 | None | | 85 | near | 81 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=34 target=85 | `.run/wave_ds/shard302/func_8017D3F4.c` | -| 106 | func_8017E160 | None | | 98 | near | 83 | resolver DIFF (real-TU rtu_match, 20260826-053145): mine=77 target=98 | `.run/wave_g0c/shard9/func_8017E160.c` | -| 107 | func_8017E4DC | None | | 92 | near | 85 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=75 target=92 | `.run/wave_dd/shard160/func_8017E4DC.c` | -| 108 | func_8018006C | None | | None | near | 86 | residual: 86 mismatch | `.run/backlog_drafts/func_8018006C.c` | -| 109 | func_80182288 | None | | 41 | near | 88 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=91 target=41 | `.run/backlog_drafts/func_80182288.c` | -| 110 | func_8017EDC0 | None | | None | near | 91 | residual: 91 mismatch | `.run/backlog_drafts/func_8017EDC0.c` | -| 111 | func_8017EB78 | None | | 10 | near | 94 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=95 target=10 | `.run/wave_df/shard365/func_8017EB78.c` | -| 112 | func_80183098 | None | | 104 | near | 98 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=53 target=104 | `.run/wave_cx/shard97/func_80183098.c` | -| 113 | func_8017DAEC | 1 | WAVE | 113 | near | 98 | WAVE: 98 mismatch | `.run/backlog_drafts/func_8017DAEC.c` | -| 114 | func_8017DF70 | None | | 108 | near | 105 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=30 target=108 | `.run/wave_dj/shard178/func_8017DF70.c` | -| 115 | func_80183940 | None | | 110 | near | 106 | resolver DIFF (real-TU rtu_match, 20260825-235252): mine=58 target=110 | `.run/backlog_drafts/func_80183940.c` | -| 116 | func_8017F69C | None | | None | near | 107 | residual: 107 mismatch | `.run/backlog_drafts/func_8017F69C.c` | -| 117 | func_8017D508 | None | | None | near | 113 | residual: 113 mismatch | `.run/backlog_drafts/func_8017D508.c` | -| 118 | func_8017F4DC | None | | 73 | near | 114 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=121 target=73 | `.run/wave_cx/shard91/func_8017F4DC.c` | -| 119 | func_8017DB98 | None | | None | near | 115 | residual: 115 mismatch | `.run/backlog_drafts/func_8017DB98.c` | -| 120 | func_80180B3C | None | | 297 | near | 125 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=296 target=297 | `.run/wave_eo/shard478/func_80180B3C.c` | -| 121 | func_80185E68 | 1 | STRUCT | 132 | near | 131 | STRUCT: 131 mismatch | `.run/backlog_drafts/func_80185E68.c` | -| 122 | func_801824EC | None | | 156 | near | 144 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=109 target=156 | `.run/wave_ch/shard144/func_801824EC.c` | -| 123 | func_80184F18 | None | | 153 | near | 145 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=123 target=153 | `.run/wave_df/shard362/func_80184F18.c` | -| 124 | func_801867D0 | None | | 198 | near | 166 | resolver DIFF (real-TU rtu_match, 20260826-062321): mine=100 target=198 | `.run/wave_g0d/shard11/func_801867D0.c` | -| 125 | func_800CB00C | None | | 123 | near | 168 | resolver DIFF (real-TU rtu_match, 20260826-053145): mine=174 target=123 | `.run/wave_g0c/shard30/func_800CB00C.c` | -| 126 | func_8018035C | None | | 196 | near | 188 | resolver DIFF (real-TU rtu_match, 20260825-235252): mine=94 target=196 | `.run/wave_en/shard401/func_8018035C.c` | -| 127 | func_8017E780 | None | | 200 | near | 194 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=27 target=200 | `.run/wave_de/shard553/func_8017E780.c` | -| 128 | func_801823B8 | None | | None | near | 204 | residual: 204 mismatch | `.run/backlog_drafts/func_801823B8.c` | -| 129 | func_8017E380 | None | | 191 | near | 210 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=235 target=191 | `.run/wave_fa/shard316/func_8017E380.c` | -| 130 | func_800CB56C | None | | 94 | near | 221 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=234 target=94 | `.run/wave_du/shard263/func_800CB56C.c` | -| 131 | func_801806F8 | None | | 241 | near | 235 | resolver DIFF (real-TU rtu_match, 20260826-062321): mine=72 target=241 | `.run/wave_g0d/shard20/func_801806F8.c` | -| 132 | func_80181164 | None | | None | near | 241 | residual: 241 mismatch | `.run/backlog_drafts/func_80181164.c` | -| 133 | func_80180C38 | None | | 34 | near | 246 | resolver DIFF (real-TU rtu_match, 20260826-145551): mine=248 target=34 | `.run/backlog_drafts/func_80180C38.c` | -| 134 | func_80180ABC | None | | 257 | near | 250 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=49 target=257 | `.run/wave_ci/shard141/func_80180ABC.c` | -| 135 | func_80182184 | None | | 272 | near | 261 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=202 target=272 | `.run/wave_de/shard232/func_80182184.c` | -| 136 | func_8017EC68 | None | | 279 | near | 274 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=341 target=279 | `.run/wave_fa/shard313/func_8017EC68.c` | -| 137 | func_80180B3C | None | | 21 | near | 287 | resolver DIFF (real-TU rtu_match, 20260826-022235): mine=287 target=21 | `.run/wave_eq/shard63/func_80180B3C.c` | -| 138 | func_800D0D6C | None | | 345 | near | 323 | resolver DIFF (real-TU rtu_match, 20260826-080111): mine=225 target=345 | `.run/wave_g0f/shard100/func_800D0D6C.c` | -| 139 | func_8017E594 | None | | 357 | near | 352 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=114 target=357 | `.run/wave_cw/shard204/func_8017E594.c` | -| 140 | func_800D12D0 | None | | 657 | near | 597 | resolver DIFF (real-TU rtu_match, 20260826-062321): mine=321 target=657 | `.run/wave_g0d/shard45/func_800D12D0.c` | -| 141 | func_8016AB6C | None | | 188 | near | 14831 | resolver DIFF (real-TU rtu_match, 20260826-004023): mine=14864 target=188 | `.run/wave_fc/shard132/func_8016AB6C.c` | -| 142 | func_800CB4EC | None | | 37 | failed | | resolver SYMBOL-MISMATCH (real-TU rtu_match, 20260825-233820): i=20 hi/lo draft D_80126B1A vs target 0x80126B1C =func_80126B1C (splat-derived); i=22 hi/lo draft D_80126B1C vs target 0x80126B1A =func_80126B1A (splat-derived) | `.run/wave_fa/shard370/func_800CB4EC.c` | -| 143 | func_80182564 | None | | 44 | failed | | resolver SYMBOL-MISMATCH (real-TU rtu_match, 20260825-233820): i=1 hi/lo draft D_80126942 vs target 0x80126940 =func_80126940 (splat-derived); i=3 hi/lo draft D_80126944 vs target 0x80126942 =func_80126942 (splat-derived); i=5 hi/lo draft D_80126940 vs target 0x80126944 =func_80126944 (splat-derived) | `.run/wave_fa/shard330/func_80182564.c` | -| 144 | func_80186A34 | None | | 70 | failed | | resolver SYMBOL-MISMATCH (real-TU rtu_match, 20260825-235252): i=50 hi/lo draft D_801C92CC vs target 0x801C92BC =func_801C92BC (splat-derived); i=54 hi/lo draft D_801C92BC vs target 0x801C92CC =func_801C92CC (splat-derived) | `.run/wave_dm/shard206/func_80186A34.c` | -| 145 | func_80185BA4 | 1 | WAVE | 177 | failed | | won't compile standalone (loose-typing / missing decl) | | -| 146 | func_801EE0D4 | None | | 407 | failed | | resolver SYMBOL-MISMATCH (real-TU rtu_match, 20260825-233727): i=35 hi/lo draft D_801F801C vs target 0x801F8303 =func_801F8303 (splat-derived); i=45 hi/lo draft D_801F801C vs target 0x801F8303 =func_801F8303 (splat-derived) | `.run/wave_ek/shard112/func_801EE0D4.c` | -| 147 | func_8013DD68 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8013DD68.c` | -| 148 | func_8017D994 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017D994.c` | -| 149 | func_8017E558 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017E558.c` | -| 150 | func_8017DDE0 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017DDE0.c` | -| 151 | func_80183940 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80183940.c` | -| 152 | func_8018046C | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8018046C.c` | -| 153 | func_8017FAA8 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233727): .run/resolver/work/ov_SC03_013__func_8017FAA8/c0/rtu/func_8017FAA8/t.c:4276: conflicting types for `SV3' | `.run/backlog_drafts/func_8017FAA8.c` | -| 154 | func_800D30D0 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/md_MAIN_003__func_800D30D0/c0/rtu/func_800D30D0/t.c:1094: conflicting types for `func_8005C604' | `.run/backlog_drafts/func_800D30D0.c` | -| 155 | func_800CD2EC | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/md_MAIN_044__func_800CD2EC/c0/rtu/func_800CD2EC/t.c:424: conflicting types for `func_800CD7A8' | `.run/backlog_drafts/func_800CD2EC.c` | -| 156 | func_801A3D60 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/md_SC07_004__func_801A3D60/c0/rtu/func_801A3D60/t.c:1439: conflicting types for `Mtx32_801A90D8' | `.run/backlog_drafts/func_801A3D60.c` | -| 157 | func_8017F9F8 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC01_006__func_8017F9F8/c0/rtu/func_8017F9F8/t.c:3099: conflicting types for `D_800A5E88' | `.run/backlog_drafts/func_8017F9F8.c` | -| 158 | func_80189B30 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC02_005__func_80189B30/c0/rtu/func_80189B30/t.c:8557: conflicting types for `Blob8_8018B058' | `.run/backlog_drafts/func_80189B30.c` | -| 159 | func_80185230 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC03_007__func_80185230/c0/rtu/func_80185230/t.c:4758: conflicting types for `func_80185230' | `.run/backlog_drafts/func_80185230.c` | -| 160 | func_8017FA74 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC03_092__func_8017FA74/c0/rtu/func_8017FA74/t.c:5483: conflicting types for `Tbl8_8017FC44' | `.run/backlog_drafts/func_8017FA74.c` | -| 161 | func_8017E880 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC03_121__func_8017E880/c0/rtu/func_8017E880/t.c:2950: conflicting types for `SVECTOR' | `.run/wave_dk/shard308/func_8017E880.c` | -| 162 | func_8017F62C | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC04_016__func_8017F62C/c0/rtu/func_8017F62C/t.c:4186: argument `param_1' doesn't match prototype | `.run/backlog_drafts/func_8017F62C.c` | -| 163 | func_801805C0 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC04_018__func_801805C0/c0/rtu/func_801805C0/t.c:4826: `D_801B9AA8' undeclared (first use this function) | `.run/wave_es/shard250/func_801805C0.c` | -| 164 | func_8017FAF4 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC05_010__func_8017FAF4/c0/rtu/func_8017FAF4/t.c:4241: conflicting types for `D_801C7E60' | `.run/backlog_drafts/func_8017FAF4.c` | -| 165 | func_8017E1BC | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC07_000__func_8017E1BC/c0/rtu/func_8017E1BC/t.c:4304: conflicting types for `func_8012AD44' | `.run/backlog_drafts/func_8017E1BC.c` | -| 166 | func_800D06E8 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/resident__func_800D06E8/c0/rtu/func_800D06E8/t.c:1770: conflicting types for `Struct80078E78' | `.run/wave_ch/shard62/func_800D06E8.c` | -| 167 | func_80183FD0 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260826-044601): .run/resolver/work/ov_SC06_020__func_80183FD0/c0/rtu/func_80183FD0/t.c:4974: conflicting types for `func_80183FD0' | `.run/wave_g0b/shard43/func_80183FD0.c` | -| 168 | func_800D1254 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260826-062321): .run/resolver/work/md_MAIN_011__func_800D1254/c0/rtu/func_800D1254/t.c:963: conflicting types for `Gs_80078E78' | `.run/backlog_drafts/func_800D1254.c` | -| 169 | func_801A38E4 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260826-062321): .run/resolver/work/md_SC07_003__func_801A38E4/c0/rtu/func_801A38E4/t.c:1943: conflicting types for `func_801A38E4' | `.run/wave_g0d/shard6/func_801A38E4.c` | -| 170 | func_800CB4A4 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260826-080111): .run/resolver/work/md_MAIN_027__func_800CB4A4/c0/rtu/func_800CB4A4/t.c:436: conflicting types for `Blk8' | `.run/backlog_drafts/func_800CB4A4.c` | -| 171 | func_800D02D0 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260826-080111): .run/resolver/work/resident__func_800D02D0/c0/rtu/func_800D02D0/t.c:1136: conflicting types for `CdFileLoc' | `.run/backlog_drafts/func_800D02D0.c` | -| 172 | func_8018FE20 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8018FE20.c` | -| 173 | func_80186AE4 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80186AE4.c` | -| 174 | func_8017EB58 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017EB58.c` | -| 175 | func_801A2EC8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801A2EC8.c` | -| 176 | func_80183748 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80183748.c` | -| 177 | func_8017FBCC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017FBCC.c` | -| 178 | func_8017ECAC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017ECAC.c` | -| 179 | func_8017FCFC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017FCFC.c` | -| 180 | func_8017F2B8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017F2B8.c` | -| 181 | func_801832F8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801832F8.c` | -| 182 | func_8018568C | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8018568C.c` | -| 183 | func_8017FB04 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017FB04.c` | -| 184 | func_801814F4 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801814F4.c` | -| 185 | func_8017F018 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017F018.c` | -| 186 | func_801829CC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801829CC.c` | -| 187 | func_80182BD8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80182BD8.c` | -| 188 | func_801870E8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801870E8.c` | -| 189 | func_8017EDE8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017EDE8.c` | -| 190 | func_8018095C | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8018095C.c` | -| 191 | func_8018489C | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8018489C.c` | -| 192 | func_80186020 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80186020.c` | -| 193 | func_80181720 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80181720.c` | -| 194 | func_8017E464 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017E464.c` | -| 195 | func_801808AC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801808AC.c` | -| 196 | func_80189E60 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80189E60.c` | -| 197 | func_8017E658 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017E658.c` | -| 198 | func_80185FB0 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80185FB0.c` | +| 82 | func_800D0100 | None | | 29 | near | 29 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=15 target=29 | `.run/backlog_drafts/func_800D0100.c` | +| 83 | func_801805C0 | None | | 81 | near | 29 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=81 target=81 | `.run/wave_du/shard119/func_801805C0.c` | +| 84 | func_80185214 | None | | None | near | 32 | residual: 32 mismatch | `.run/backlog_drafts/func_80185214.c` | +| 85 | func_800D0A7C | None | | 40 | near | 33 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=29 target=40 | `.run/backlog_drafts/func_800D0A7C.c` | +| 86 | func_80181344 | None | | None | near | 48 | residual: 48 mismatch | `.run/backlog_drafts/func_80181344.c` | +| 87 | func_801832E0 | None | | 57 | near | 49 | resolver DIFF (real-TU rtu_match, 20260826-044601): mine=35 target=57 | `.run/wave_g0b/shard8/func_801832E0.c` | +| 88 | func_801808AC | None | | 67 | near | 60 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=41 target=67 | `.run/wave_ec/shard8/func_801808AC.c` | +| 89 | func_8017D610 | None | | None | near | 64 | residual: 64 mismatch | `.run/backlog_drafts/func_8017D610.c` | +| 90 | func_801808AC | None | | 41 | near | 65 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=67 target=41 | `.run/wave_fa/shard6/func_801808AC.c` | +| 91 | func_800D0C50 | None | | 71 | near | 68 | resolver DIFF (real-TU rtu_match, 20260826-044601): mine=46 target=71 | `.run/backlog_drafts/func_800D0C50.c` | +| 92 | func_800D0B1C | None | | 77 | near | 69 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=49 target=77 | `.run/backlog_drafts/func_800D0B1C.c` | +| 93 | func_801835B0 | None | | 73 | near | 71 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=36 target=73 | `.run/wave_ed/shard3/func_801835B0.c` | +| 94 | func_8017FED8 | None | | 62 | near | 72 | resolver DIFF (real-TU rtu_match, 20260826-004023): mine=78 target=62 | `.run/wave_fb/shard11/func_8017FED8.c` | +| 95 | func_801874E4 | None | | None | near | 73 | residual: 73 mismatch | `.run/backlog_drafts/func_801874E4.c` | +| 96 | func_801457A4 | None | | 79 | near | 74 | resolver DIFF (real-TU rtu_match, 20260826-044601): mine=49 target=79 | `.run/backlog_drafts/func_801457A4.c` | +| 97 | func_8017FB04 | None | | 20 | near | 75 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=78 target=20 | `.run/backlog_drafts/func_8017FB04.c` | +| 98 | func_8017FED8 | None | | 78 | near | 75 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=62 target=78 | `.run/wave_ei/shard319/func_8017FED8.c` | +| 99 | func_8017DABC | None | | 78 | near | 75 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=39 target=78 | `.run/wave_dd/shard353/func_8017DABC.c` | +| 100 | func_80180610 | None | | 79 | near | 78 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=31 target=79 | `.run/wave_ck/shard182/func_80180610.c` | +| 101 | func_8017E37C | None | | None | near | 79 | residual: 79 mismatch | `.run/backlog_drafts/func_8017E37C.c` | +| 102 | func_8017FB04 | None | | 83 | near | 80 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=20 target=83 | `.run/wave_eq/shard509/func_8017FB04.c` | +| 103 | func_801805C0 | None | | 22 | near | 81 | resolver DIFF (real-TU rtu_match, 20260825-235252): mine=81 target=22 | `.run/wave_ey/shard163/func_801805C0.c` | +| 104 | func_8017D3F4 | None | | 85 | near | 81 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=34 target=85 | `.run/wave_ds/shard302/func_8017D3F4.c` | +| 105 | func_8017E160 | None | | 98 | near | 83 | resolver DIFF (real-TU rtu_match, 20260826-053145): mine=77 target=98 | `.run/wave_g0c/shard9/func_8017E160.c` | +| 106 | func_8017E4DC | None | | 92 | near | 85 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=75 target=92 | `.run/wave_dd/shard160/func_8017E4DC.c` | +| 107 | func_8018006C | None | | None | near | 86 | residual: 86 mismatch | `.run/backlog_drafts/func_8018006C.c` | +| 108 | func_80182288 | None | | 41 | near | 88 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=91 target=41 | `.run/backlog_drafts/func_80182288.c` | +| 109 | func_8017EDC0 | None | | None | near | 91 | residual: 91 mismatch | `.run/backlog_drafts/func_8017EDC0.c` | +| 110 | func_8017EB78 | None | | 10 | near | 94 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=95 target=10 | `.run/wave_df/shard365/func_8017EB78.c` | +| 111 | func_80183098 | None | | 104 | near | 98 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=53 target=104 | `.run/wave_cx/shard97/func_80183098.c` | +| 112 | func_8017DAEC | 1 | WAVE | 113 | near | 98 | WAVE: 98 mismatch | `.run/backlog_drafts/func_8017DAEC.c` | +| 113 | func_8017DF70 | None | | 108 | near | 105 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=30 target=108 | `.run/wave_dj/shard178/func_8017DF70.c` | +| 114 | func_80183940 | None | | 110 | near | 106 | resolver DIFF (real-TU rtu_match, 20260825-235252): mine=58 target=110 | `.run/backlog_drafts/func_80183940.c` | +| 115 | func_8017F69C | None | | None | near | 107 | residual: 107 mismatch | `.run/backlog_drafts/func_8017F69C.c` | +| 116 | func_8017D508 | None | | None | near | 113 | residual: 113 mismatch | `.run/backlog_drafts/func_8017D508.c` | +| 117 | func_8017F4DC | None | | 73 | near | 114 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=121 target=73 | `.run/wave_cx/shard91/func_8017F4DC.c` | +| 118 | func_8017DB98 | None | | None | near | 115 | residual: 115 mismatch | `.run/backlog_drafts/func_8017DB98.c` | +| 119 | func_80180B3C | None | | 297 | near | 125 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=296 target=297 | `.run/wave_eo/shard478/func_80180B3C.c` | +| 120 | func_80185E68 | 1 | STRUCT | 132 | near | 131 | STRUCT: 131 mismatch | `.run/backlog_drafts/func_80185E68.c` | +| 121 | func_80184F18 | None | | 153 | near | 145 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=123 target=153 | `.run/wave_df/shard362/func_80184F18.c` | +| 122 | func_801867D0 | None | | 198 | near | 166 | resolver DIFF (real-TU rtu_match, 20260826-062321): mine=100 target=198 | `.run/wave_g0d/shard11/func_801867D0.c` | +| 123 | func_800CB00C | None | | 123 | near | 168 | resolver DIFF (real-TU rtu_match, 20260826-053145): mine=174 target=123 | `.run/wave_g0c/shard30/func_800CB00C.c` | +| 124 | func_8018035C | None | | 196 | near | 188 | resolver DIFF (real-TU rtu_match, 20260825-235252): mine=94 target=196 | `.run/wave_en/shard401/func_8018035C.c` | +| 125 | func_8017E780 | None | | 200 | near | 194 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=27 target=200 | `.run/wave_de/shard553/func_8017E780.c` | +| 126 | func_801823B8 | None | | None | near | 204 | residual: 204 mismatch | `.run/backlog_drafts/func_801823B8.c` | +| 127 | func_8017E380 | None | | 191 | near | 210 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=235 target=191 | `.run/wave_fa/shard316/func_8017E380.c` | +| 128 | func_800CB56C | None | | 94 | near | 221 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=234 target=94 | `.run/wave_du/shard263/func_800CB56C.c` | +| 129 | func_801806F8 | None | | 241 | near | 235 | resolver DIFF (real-TU rtu_match, 20260826-062321): mine=72 target=241 | `.run/wave_g0d/shard20/func_801806F8.c` | +| 130 | func_80181164 | None | | None | near | 241 | residual: 241 mismatch | `.run/backlog_drafts/func_80181164.c` | +| 131 | func_80180C38 | None | | 34 | near | 246 | resolver DIFF (real-TU rtu_match, 20260826-145551): mine=248 target=34 | `.run/backlog_drafts/func_80180C38.c` | +| 132 | func_80180ABC | None | | 257 | near | 250 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=49 target=257 | `.run/wave_ci/shard141/func_80180ABC.c` | +| 133 | func_80182184 | None | | 272 | near | 261 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=202 target=272 | `.run/wave_de/shard232/func_80182184.c` | +| 134 | func_8017EC68 | None | | 279 | near | 274 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=341 target=279 | `.run/wave_fa/shard313/func_8017EC68.c` | +| 135 | func_80180B3C | None | | 21 | near | 287 | resolver DIFF (real-TU rtu_match, 20260826-022235): mine=287 target=21 | `.run/wave_eq/shard63/func_80180B3C.c` | +| 136 | func_800D0D6C | None | | 345 | near | 323 | resolver DIFF (real-TU rtu_match, 20260826-080111): mine=225 target=345 | `.run/wave_g0f/shard100/func_800D0D6C.c` | +| 137 | func_8017E594 | None | | 357 | near | 352 | resolver DIFF (real-TU rtu_match, 20260825-233820): mine=114 target=357 | `.run/wave_cw/shard204/func_8017E594.c` | +| 138 | func_800D12D0 | None | | 657 | near | 597 | resolver DIFF (real-TU rtu_match, 20260826-062321): mine=321 target=657 | `.run/wave_g0d/shard45/func_800D12D0.c` | +| 139 | func_8016AB6C | None | | 188 | near | 14831 | resolver DIFF (real-TU rtu_match, 20260826-004023): mine=14864 target=188 | `.run/wave_fc/shard132/func_8016AB6C.c` | +| 140 | func_800CB4EC | None | | 37 | failed | | resolver SYMBOL-MISMATCH (real-TU rtu_match, 20260825-233820): i=20 hi/lo draft D_80126B1A vs target 0x80126B1C =func_80126B1C (splat-derived); i=22 hi/lo draft D_80126B1C vs target 0x80126B1A =func_80126B1A (splat-derived) | `.run/wave_fa/shard370/func_800CB4EC.c` | +| 141 | func_80182564 | None | | 44 | failed | | resolver SYMBOL-MISMATCH (real-TU rtu_match, 20260825-233820): i=1 hi/lo draft D_80126942 vs target 0x80126940 =func_80126940 (splat-derived); i=3 hi/lo draft D_80126944 vs target 0x80126942 =func_80126942 (splat-derived); i=5 hi/lo draft D_80126940 vs target 0x80126944 =func_80126944 (splat-derived) | `.run/wave_fa/shard330/func_80182564.c` | +| 142 | func_80186A34 | None | | 70 | failed | | resolver SYMBOL-MISMATCH (real-TU rtu_match, 20260825-235252): i=50 hi/lo draft D_801C92CC vs target 0x801C92BC =func_801C92BC (splat-derived); i=54 hi/lo draft D_801C92BC vs target 0x801C92CC =func_801C92CC (splat-derived) | `.run/wave_dm/shard206/func_80186A34.c` | +| 143 | func_801EE0D4 | None | | 407 | failed | | resolver SYMBOL-MISMATCH (real-TU rtu_match, 20260825-233727): i=35 hi/lo draft D_801F801C vs target 0x801F8303 =func_801F8303 (splat-derived); i=45 hi/lo draft D_801F801C vs target 0x801F8303 =func_801F8303 (splat-derived) | `.run/wave_ek/shard112/func_801EE0D4.c` | +| 144 | func_8013DD68 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8013DD68.c` | +| 145 | func_8017D994 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017D994.c` | +| 146 | func_8017E558 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017E558.c` | +| 147 | func_8017DDE0 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017DDE0.c` | +| 148 | func_80183940 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80183940.c` | +| 149 | func_8018046C | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8018046C.c` | +| 150 | func_8017FAA8 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233727): .run/resolver/work/ov_SC03_013__func_8017FAA8/c0/rtu/func_8017FAA8/t.c:4276: conflicting types for `SV3' | `.run/backlog_drafts/func_8017FAA8.c` | +| 151 | func_800D30D0 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/md_MAIN_003__func_800D30D0/c0/rtu/func_800D30D0/t.c:1094: conflicting types for `func_8005C604' | `.run/backlog_drafts/func_800D30D0.c` | +| 152 | func_800CD2EC | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/md_MAIN_044__func_800CD2EC/c0/rtu/func_800CD2EC/t.c:424: conflicting types for `func_800CD7A8' | `.run/backlog_drafts/func_800CD2EC.c` | +| 153 | func_801A3D60 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/md_SC07_004__func_801A3D60/c0/rtu/func_801A3D60/t.c:1439: conflicting types for `Mtx32_801A90D8' | `.run/backlog_drafts/func_801A3D60.c` | +| 154 | func_8017F9F8 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC01_006__func_8017F9F8/c0/rtu/func_8017F9F8/t.c:3099: conflicting types for `D_800A5E88' | `.run/backlog_drafts/func_8017F9F8.c` | +| 155 | func_80189B30 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC02_005__func_80189B30/c0/rtu/func_80189B30/t.c:8557: conflicting types for `Blob8_8018B058' | `.run/backlog_drafts/func_80189B30.c` | +| 156 | func_8017FA74 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC03_092__func_8017FA74/c0/rtu/func_8017FA74/t.c:5483: conflicting types for `Tbl8_8017FC44' | `.run/backlog_drafts/func_8017FA74.c` | +| 157 | func_8017E880 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC03_121__func_8017E880/c0/rtu/func_8017E880/t.c:2950: conflicting types for `SVECTOR' | `.run/wave_dk/shard308/func_8017E880.c` | +| 158 | func_8017F62C | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC04_016__func_8017F62C/c0/rtu/func_8017F62C/t.c:4186: argument `param_1' doesn't match prototype | `.run/backlog_drafts/func_8017F62C.c` | +| 159 | func_801805C0 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC04_018__func_801805C0/c0/rtu/func_801805C0/t.c:4826: `D_801B9AA8' undeclared (first use this function) | `.run/wave_es/shard250/func_801805C0.c` | +| 160 | func_8017FAF4 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC05_010__func_8017FAF4/c0/rtu/func_8017FAF4/t.c:4241: conflicting types for `D_801C7E60' | `.run/backlog_drafts/func_8017FAF4.c` | +| 161 | func_8017E1BC | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/ov_SC07_000__func_8017E1BC/c0/rtu/func_8017E1BC/t.c:4304: conflicting types for `func_8012AD44' | `.run/backlog_drafts/func_8017E1BC.c` | +| 162 | func_800D06E8 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260825-233820): .run/resolver/work/resident__func_800D06E8/c0/rtu/func_800D06E8/t.c:1770: conflicting types for `Struct80078E78' | `.run/wave_ch/shard62/func_800D06E8.c` | +| 163 | func_80183FD0 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260826-044601): .run/resolver/work/ov_SC06_020__func_80183FD0/c0/rtu/func_80183FD0/t.c:4974: conflicting types for `func_80183FD0' | `.run/wave_g0b/shard43/func_80183FD0.c` | +| 164 | func_800D1254 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260826-062321): .run/resolver/work/md_MAIN_011__func_800D1254/c0/rtu/func_800D1254/t.c:963: conflicting types for `Gs_80078E78' | `.run/backlog_drafts/func_800D1254.c` | +| 165 | func_801A38E4 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260826-062321): .run/resolver/work/md_SC07_003__func_801A38E4/c0/rtu/func_801A38E4/t.c:1943: conflicting types for `func_801A38E4' | `.run/wave_g0d/shard6/func_801A38E4.c` | +| 166 | func_800CB4A4 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260826-080111): .run/resolver/work/md_MAIN_027__func_800CB4A4/c0/rtu/func_800CB4A4/t.c:436: conflicting types for `Blk8' | `.run/backlog_drafts/func_800CB4A4.c` | +| 167 | func_800D02D0 | None | | None | failed | | resolver CC1 (real-TU rtu_match, 20260826-080111): .run/resolver/work/resident__func_800D02D0/c0/rtu/func_800D02D0/t.c:1136: conflicting types for `CdFileLoc' | `.run/backlog_drafts/func_800D02D0.c` | +| 168 | func_8018FE20 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8018FE20.c` | +| 169 | func_80186AE4 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80186AE4.c` | +| 170 | func_8017EB58 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017EB58.c` | +| 171 | func_801A2EC8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801A2EC8.c` | +| 172 | func_80183748 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80183748.c` | +| 173 | func_8017FBCC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017FBCC.c` | +| 174 | func_8017ECAC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017ECAC.c` | +| 175 | func_8017FCFC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017FCFC.c` | +| 176 | func_8017F2B8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017F2B8.c` | +| 177 | func_801832F8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801832F8.c` | +| 178 | func_8018568C | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8018568C.c` | +| 179 | func_8017FB04 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017FB04.c` | +| 180 | func_801814F4 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801814F4.c` | +| 181 | func_8017F018 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017F018.c` | +| 182 | func_801829CC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801829CC.c` | +| 183 | func_80182BD8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80182BD8.c` | +| 184 | func_801870E8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801870E8.c` | +| 185 | func_8017EDE8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017EDE8.c` | +| 186 | func_8018095C | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8018095C.c` | +| 187 | func_8018489C | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8018489C.c` | +| 188 | func_80186020 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80186020.c` | +| 189 | func_80181720 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80181720.c` | +| 190 | func_8017E464 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017E464.c` | +| 191 | func_801808AC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801808AC.c` | +| 192 | func_80189E60 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80189E60.c` | +| 193 | func_8017E658 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017E658.c` | +| 194 | func_80185FB0 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80185FB0.c` | +| 195 | func_8018DFC4 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8018DFC4.c` | diff --git a/docs/cookbook-index.md b/docs/cookbook-index.md index 730cd30c1..332da951c 100644 --- a/docs/cookbook-index.md +++ b/docs/cookbook-index.md @@ -2,7 +2,7 @@ > **Generated by `tools/cookbook_index.py` — do not hand-edit** (R33). Regenerate after adding a cookbook section. > -> `docs/matching-cookbook.md` is ~716 KB / 987 sections. Grepping it blind is how three P30 wave-1 agents each "discovered" an idiom that was already written down. **Start here, then read the section.** A section appears under every symptom it addresses. +> `docs/matching-cookbook.md` is ~716 KB / 994 sections. Grepping it blind is how three P30 wave-1 agents each "discovered" an idiom that was already written down. **Start here, then read the section.** A section appears under every symptom it addresses. **How to use:** name what you SEE in the diff (a stolen delay slot, an extra `la`, a swapped register pair, a `conflicting types` error), find that symptom below, read those sections first. If nothing fits, THEN grind — and add a section when you win. @@ -34,7 +34,7 @@ ## By symptom -### delay slots & branches (61) +### delay slots & branches (62) - **§3-T4** — Branch polarity: invert the source condition to flip gcc's chosen branch L90 - **§5a** — Cross-jump tail-merge — gcc collapses two byte-identical blocks the original kept separate (FIX FOUND) L211 @@ -97,8 +97,9 @@ - **§331** — OPEN GAP: NO LEVER ELIMINATES AN *UNWANTED DUPLICATE* COPY AT A BRANCH-TARGET BLOCK HEAD (P31 S67; main/func_80013154, closeness 12, NOT solved) L31059 - **§332** — THE maspsx `la`-IN-A-DELAY-SLOT GAP: gcc EMITS A SYMBOLIC ADDRESS LOAD AS ONE ATOMIC length-2 INSN, SO IT CAN NEVER FILL A JUMP DELAY SLOT — 6 FUNCTIONS FLEET-WIDE, NONE BANKABLE FROM C (P31 S67; byte-traced main/func_80062144, func_8005DBD8) L31071 - **§336** — THE §5a CROSS-JUMP BARRIER GOES AT THE *BOTTOM* OF THE TWIN, NOT THE TOP: `find_cross_jump` WALKS BACKWARD FROM THE CONVERGING JUMP (P31 S67; byte-proven ov_SC05_001/func_80183C9C) L31149 +- **§339** — A 2-CASE SWITCH OMITS THE LOW-BOUND RANGE TEST, SO THE PRESENCE OF `slti/bnez` BETWEEN THE `beq`s IS A **COUNT TELL** FOR A THIRD CASE NODE (P31 S67; byte-proven ov_SC02_005/func_80190538, 197 ins) L31181 -### instruction scheduling (71) +### instruction scheduling (73) - **§3-T2** — Source statement order drives instruction scheduling L78 - **§3** — When a diff is pure scheduling → decomp-permuter (harness built, Phase 6) L107 @@ -171,8 +172,10 @@ - **Addendum** — Volatile zero-byte asm slider scrambles the prologue schedule (func_801814B0) L30747 - **Addendum** — §194-A addendum — the bare/colon-less fence measured NULL and only the "memory"-clobber fo (func_8017E464) L30761 - **§336** — THE §5a CROSS-JUMP BARRIER GOES AT THE *BOTTOM* OF THE TWIN, NOT THE TOP: `find_cross_jump` WALKS BACKWARD FROM THE CONVERGING JUMP (P31 S67; byte-proven ov_SC05_001/func_80183C9C) L31149 +- **§340** — §194-K COROLLARY: **FLIP THE FALSE EDGE YOU CANNOT DELETE.** A "scheduler" residual can be sched.c's ALIAS ORACLE emitting a FALSE true-dependence; source order chooses its DIRECTION (P31 S67; byte-proven ov_SC03_107/func_8017CF48, 10 -> 0 in one compile, zero bytes) L31209 +- **§341** — AN HImode STORE TEMP REWEIGHTS A sched2 TIE-BREAK THAT NO STATEMENT ORDER CAN REACH (P31 S67; byte-proven ov_SC03_006/func_801823B8, last 4 ins) L31243 -### register allocation & pins (118) +### register allocation & pins (120) - **§10** — Closing the regalloc/scheduling hard tail by hand (LZSS, Phase 7 session F — the full close) L854 - **Residual** — A — commutative `|`/`&`/`+` result lands in the wrong source-operand register L875 @@ -292,8 +295,10 @@ - **§325** — REGALLOC: A SHARED SMALL CONSTANT STORED TWICE IN THE PRE-LOOP BLOCK IS A *local-alloc* $s-OCCUPANT THAT STEALS THE ARGUMENT ALLOCNO'S REGISTER — PIN THE ARGUMENT-DERIVED LOCAL, NOT THE CONSTANT (P31 S67; byte-proven ov_SC03_119/func_80184F18, 153 ins) L30987 - **§329** — fold-const NARROWS `(int)s16_var & 0xFFF` ONTO THE *RAW HImode PSEUDO*, BREAKING THE SIGN-EXTEND/MASK REGISTER TIE — A ZERO-BYTE WIDENING TEMP RESTORES IT (P31 S67; byte-proven ov_SC01_084/func_80183244, 157 ins) L31034 - **§334** — A RELOAD SPILL SLOT IS ROUNDED TO `BIGGEST_ALIGNMENT` (8B), SO ONE SPILLED 4-BYTE PSEUDO CAN GROW THE FRAME BY 16 (P31 S67; byte-proven ov_SC05_008/func_8017DF68, 82 -> 53 residual) L31129 +- **§342** — A `void *` PARAMETER CAST TO ITS REAL TYPE IN A LOCAL IS **NOT** BYTE-NEUTRAL WHEN A LATER PARAMETER ALSO NEEDS A CALLEE-SAVED REGISTER (P31 S67; byte-proven ov_SC07_002/func_80181394, NEW LAW) L31257 +- **§344** — RAISE A BIV'S global_alloc PRIORITY WITH A ZERO-BYTE REFERENCE INSTEAD OF PINNING IT; PINNING THE COUNTER KILLS LSR ENTIRELY (P31 S67; byte-proven ov_SC03_121/func_80180E64, 222 ins) L31296 -### CSE / redundancy / rematerialization (36) +### CSE / redundancy / rematerialization (37) - **§46** — The `func_80178D40` crack (890 ins ×134, the heaviest core in the game): four LOOP-STRUCTURE levers cheap-Opus found by reading loop.c/jump.c/cse.c (Phase 26 session 8, 2026-07-13) L3347 - **§83d** — CSE's quantity budget is WHOLE-FUNCTION, so a local rewrite cannot fix a local symptom L6486 @@ -331,8 +336,9 @@ - **§326** — DEFEATING ADDRESS-CSE: SPELL TWO READS OF THE SAME HALFWORD DIFFERENTLY AND GCC CANNOT SHARE THE ADDRESS (P31 S67; byte-proven ov_SC01_077/func_8017FAAC, 154 ins) L31000 - **§327** — A RANGE TEST MUST BE HImode: WITH `s32` + A `(u16)` CAST GCC *PROVES* THE MASK REDUNDANT AND DROPS THE `andi` (P31 S67; byte-proven ov_SC02_039/func_8017EC34, 154 ins) L31009 - **§328** — THE VOLATILE ALIAS MUST BE AN *OBJECT*, NOT A CAST: `*(volatile s32*)&sym` UNFOLDS %lo INTO A SEPARATE `addiu` (P31 S67; byte-proven ov_SC07_007/func_80181B8C, 156 ins, NEW LAW) L31024 +- **§345** — A VOLATILE **STORE** EVICTS THE MEM FROM cse AND KEEPS `sh`; A VOLATILE **LOAD** BLOCKS combine AND DEGRADES `lh` INTO `lhu+sll+sra` (P31 S67; byte-proven ov_SC01_084/func_80181A7C) L31312 -### loops & induction variables (34) +### loops & induction variables (35) - **§3-T1** — Loop pointer: top-of-body for `addu` induction, not constant-folded `addiu` L71 - **§34** — The `func_80138ED0` giant crack: gcc-2.7.2's **3-qty sort bug** + the **zero-byte asm allocation toolkit** + the **giv-init fence** (Phase 24 T5; Opus→close=21, Fable5→MATCH ×134) L2473 @@ -368,6 +374,7 @@ - **§312** — A BARE RELATIONAL IN AN `if` GIVES THE `slt` NO TARGET: ASSIGN THE COMPARISON INTO THE ALREADY-ALLOCATED VARIABLE TO CHOOSE ITS DESTINATION REGISTER, AT ZERO INSTRUCTION COST (P31 S64 t5o-t5r; byte-proven func_80180DCC) L30159 - **Addendum** — Loop sentinel wrongly hoisted out of a call-containing loop (func_801835B0) L30493 - **§325** — REGALLOC: A SHARED SMALL CONSTANT STORED TWICE IN THE PRE-LOOP BLOCK IS A *local-alloc* $s-OCCUPANT THAT STEALS THE ARGUMENT ALLOCNO'S REGISTER — PIN THE ARGUMENT-DERIVED LOCAL, NOT THE CONSTANT (P31 S67; byte-proven ov_SC03_119/func_80184F18, 153 ins) L30987 +- **§344** — RAISE A BIV'S global_alloc PRIORITY WITH A ZERO-BYTE REFERENCE INSTEAD OF PINNING IT; PINNING THE COUNTER KILLS LSR ENTIRELY (P31 S67; byte-proven ov_SC03_121/func_80180E64, 222 ins) L31296 ### structs, block moves & memcpy (79) @@ -451,7 +458,7 @@ - **§321** — FILE-SCOPE DUPLICATE ANONYMOUS-STRUCT TYPEDEFS ARE A HARD ERROR; THE SAME TEXT AT BLOCK SCOPE IS A WARNING (P31 S66; byte-proven func_80180728, func_8017F9F8, func_8017E07C) L30845 - **§335** — AN `extern u16 A[]` READ AT A VARIABLE SUBSCRIPT ALLOCATES DEAD STACK TEMPS (~8B PER ACCESS) THAT INFLATE THE FRAME WHILE EMITTING ZERO EXTRA INSTRUCTIONS (P31 S67; byte-proven ov_SC06_025/func_8017EA74, closeness 141 -> 20) L31140 -### types, signedness & load/store width (87) +### types, signedness & load/store width (89) - **§3-I1** — Unsigned range check: `(x - lo) < (hi-lo)` → `addiu`+`sltiu` L41 - **§3-I2** — Byte mask forces `andi` even after `lbu` L47 @@ -540,8 +547,10 @@ - **§327** — A RANGE TEST MUST BE HImode: WITH `s32` + A `(u16)` CAST GCC *PROVES* THE MASK REDUNDANT AND DROPS THE `andi` (P31 S67; byte-proven ov_SC02_039/func_8017EC34, 154 ins) L31009 - **§328** — THE VOLATILE ALIAS MUST BE AN *OBJECT*, NOT A CAST: `*(volatile s32*)&sym` UNFOLDS %lo INTO A SEPARATE `addiu` (P31 S67; byte-proven ov_SC07_007/func_80181B8C, 156 ins, NEW LAW) L31024 - **§335** — AN `extern u16 A[]` READ AT A VARIABLE SUBSCRIPT ALLOCATES DEAD STACK TEMPS (~8B PER ACCESS) THAT INFLATE THE FRAME WHILE EMITTING ZERO EXTRA INSTRUCTIONS (P31 S67; byte-proven ov_SC06_025/func_8017EA74, closeness 141 -> 20) L31140 +- **§342** — A `void *` PARAMETER CAST TO ITS REAL TYPE IN A LOCAL IS **NOT** BYTE-NEUTRAL WHEN A LATER PARAMETER ALSO NEEDS A CALLEE-SAVED REGISTER (P31 S67; byte-proven ov_SC07_002/func_80181394, NEW LAW) L31257 +- **§345** — A VOLATILE **STORE** EVICTS THE MEM FROM cse AND KEEPS `sh`; A VOLATILE **LOAD** BLOCKS combine AND DEGRADES `lh` INTO `lhu+sll+sra` (P31 S67; byte-proven ov_SC01_084/func_80181A7C) L31312 -### declarations, prototypes & K&R (103) +### declarations, prototypes & K&R (105) - **§3-T4** — Branch polarity: invert the source condition to flip gcc's chosen branch L90 - **§8c** — Splitting a TU means rebuilding its DECLARATION ENVIRONMENT, not moving text (Phase 26 session 6) L456 @@ -646,8 +655,10 @@ - **§324** — THE ARITY-SELF WALL NEEDS *BOTH* HALVES: A K&R DEFINITION **AND** A NO-PROTO TU DECL; EITHER ALONE STILL FAILS (P31 S67; rtu-proven ov_SC01_005/func_8017FBCC, 14 instances measured) L30949 - **§333** — FRAME SIZE IS SET BY *DECLARED* AGGREGATES, NOT USED ONES: AN UNREFERENCED TRAILING LOCAL IS A REAL DIAL (P31 S67; three independent byte-proven instances in one wave) L31115 - **§335** — AN `extern u16 A[]` READ AT A VARIABLE SUBSCRIPT ALLOCATES DEAD STACK TEMPS (~8B PER ACCESS) THAT INFLATE THE FRAME WHILE EMITTING ZERO EXTRA INSTRUCTIONS (P31 S67; byte-proven ov_SC06_025/func_8017EA74, closeness 141 -> 20) L31140 +- **§342** — A `void *` PARAMETER CAST TO ITS REAL TYPE IN A LOCAL IS **NOT** BYTE-NEUTRAL WHEN A LATER PARAMETER ALSO NEEDS A CALLEE-SAVED REGISTER (P31 S67; byte-proven ov_SC07_002/func_80181394, NEW LAW) L31257 +- **§343** — `decl_prior`'s FLEET MAJORITY CAN BE WRONG ABOUT THE TRUE SIGNATURE — READ THE RIVALS, NOT JUST THE WINNER (P31 S67; measured on func_8012BD14 / func_8012D624 / func_80143C74) L31274 -### jump tables & switches (50) +### jump tables & switches (51) - **§8** — rodata island (compiler jump tables) — the `.data→.rodata→.data` sandwich (Phase 7) L339 - **§8a** — rodata island in a flat OVERLAY — the tail sandwich, per matched jr-function (Phase 26 — PoC PROVEN) L361 @@ -699,6 +710,7 @@ - **§NNN** — REFUTED: A CODE BLOCK SHARED BY TWO *DIFFERENT* SWITCH STATEMENTS IS ORDINARY FORWARD `cross_jump`, NOT A SHAPE C CANNOT REACH — §164-11 ALREADY BANKS IT FROM PLAIN NESTED SWITCHES (P31 S66 round3, `func_8001B0D4`; ⚠ **UNPROVEN** — gate-REFUSED draft, closeness 68→45, never MATCHed) L30640 - **§322** — A PROBE THAT ANSWERS A *NECESSARY BUT NOT SUFFICIENT* QUESTION WILL PRICE BLOCKED WORK AS FREE: RUN THE REAL PLANNER WHEN THE PLANNER IS PURE (P31 S67; measured, 96 of 159 open jtbl functions) L30866 - **§338** — `jtbl_carve._sltiu_bounds` MISREADS A NON-SWITCH `sltiu` AS A BOUNDS CHECK, OVER-SPANNING THE TABLE (P31 S67; ov_SC06_022/func_80185B80, byte-diagnosed) L31171 +- **§339** — A 2-CASE SWITCH OMITS THE LOW-BOUND RANGE TEST, SO THE PRESENCE OF `slti/bnez` BETWEEN THE `beq`s IS A **COUNT TELL** FOR A THIRD CASE NODE (P31 S67; byte-proven ov_SC02_005/func_80190538, 197 ins) L31181 ### optimisation level (-O0/-O2) (20) @@ -723,7 +735,7 @@ - **Addendum** — Addendum to §261a — the -O0 increment-operator copy also fires on the POINTER LOCAL itself (func_8001212C) L30473 - **Addendum** — Addendum to §164-XX/§165-06 — at -O0 a bare local IS a memory lvalue, so the increment ope (func_8001212C) L30477 -### family propagation & sweeps (112) +### family propagation & sweeps (113) - **§8d** — Templating a body INTO a TU must not CHANGE its declaration environment — demote the carried data externs (Phase 26 session 8, byte-proven on `func_8015AE2C` ×133) L502 - **§11** — Cross-binary dedup & code-sharing (Phase 11 — "one match unlocks many") L927 @@ -837,6 +849,7 @@ - **§314** — AN IF/ELSE-IF ABS-RANGE CHECK'S C SPELLING IS INERT: FOUR STRUCTURALLY DIFFERENT REWRITES ALL COMPILE BYTE-IDENTICAL, AND NONE REACHES A TARGET THAT SINKS THE NEGATIVE ARM INTO AN OUT-OF-LINE BLOCK (P31 S65; UNPROVEN, gate-refused draft func_80181720) L30241 - **§NNN** — REFUTED: A CODE BLOCK SHARED BY TWO *DIFFERENT* SWITCH STATEMENTS IS ORDINARY FORWARD `cross_jump`, NOT A SHAPE C CANNOT REACH — §164-11 ALREADY BANKS IT FROM PLAIN NESTED SWITCHES (P31 S66 round3, `func_8001B0D4`; ⚠ **UNPROVEN** — gate-REFUSED draft, closeness 68→45, never MATCHed) L30640 - **§323** — CARRYING FILE-SCOPE TYPES BETWEEN SPLIT TUs: DEDUPE BY NAME, SKIP HEADER-PROVIDED, AND THE GUARD TRAVELS WITH THE BLOCK (P31 S67; ov_SC02_000, two defects fixed, one open) L30896 +- **§341** — AN HImode STORE TEMP REWEIGHTS A sched2 TIE-BREAK THAT NO STATEMENT ORDER CAN REACH (P31 S67; byte-proven ov_SC03_006/func_801823B8, last 4 ins) L31243 ### integration / TU plumbing (66) @@ -907,7 +920,7 @@ - **§324** — THE ARITY-SELF WALL NEEDS *BOTH* HALVES: A K&R DEFINITION **AND** A NO-PROTO TU DECL; EITHER ALONE STILL FAILS (P31 S67; rtu-proven ov_SC01_005/func_8017FBCC, 14 instances measured) L30949 - **§337** — THE CC1-ONLY BLOCKER CLASS: `blocker_probe`'s STATIC ORACLE REPORTS "none" AND THE WHOLE-TU COMPILE STILL FAILS (P31 S67; ov_SC04_011/func_801827DC, md_MAIN_027/func_800CB4A4) L31157 -### build graph, splat & the harness (179) +### build graph, splat & the harness (180) - **§4** — Flag/toolchain gotchas L190 - **Build** — mechanism — per-file opt override (splat resegmentation) L307 @@ -1088,8 +1101,9 @@ - **§332a** — MAIN'S RESIDUAL FRONTIER IS CONTAMINATED WITH TOOLCHAIN WALLS: 4 OF 7 IN ONE WAVE (P31 S67, measured) L31096 - **§333** — FRAME SIZE IS SET BY *DECLARED* AGGREGATES, NOT USED ONES: AN UNREFERENCED TRAILING LOCAL IS A REAL DIAL (P31 S67; three independent byte-proven instances in one wave) L31115 - **§337** — THE CC1-ONLY BLOCKER CLASS: `blocker_probe`'s STATIC ORACLE REPORTS "none" AND THE WHOLE-TU COMPILE STILL FAILS (P31 S67; ov_SC04_011/func_801827DC, md_MAIN_027/func_800CB4A4) L31157 +- **§340** — §194-K COROLLARY: **FLIP THE FALSE EDGE YOU CANNOT DELETE.** A "scheduler" residual can be sched.c's ALIAS ORACLE emitting a FALSE true-dependence; source order chooses its DIRECTION (P31 S67; byte-proven ov_SC03_107/func_8017CF48, 10 -> 0 in one compile, zero bytes) L31209 -### process, measurement & doctrine (119) +### process, measurement & doctrine (121) - **§8e** — The jtbl ALIGNMENT LAW + the pad-spec filter — multi-table .rodata spans (Phase 29, byte-proven; `.run/probe_jtbl/verdict.md`) L549 - **§3-The** — mechanism: game-code dedup is SOURCE-LEVEL, not an object swap (R-D1, the key lesson) L945 @@ -1210,6 +1224,8 @@ - **§328** — THE VOLATILE ALIAS MUST BE AN *OBJECT*, NOT A CAST: `*(volatile s32*)&sym` UNFOLDS %lo INTO A SEPARATE `addiu` (P31 S67; byte-proven ov_SC07_007/func_80181B8C, 156 ins, NEW LAW) L31024 - **§332a** — MAIN'S RESIDUAL FRONTIER IS CONTAMINATED WITH TOOLCHAIN WALLS: 4 OF 7 IN ONE WAVE (P31 S67, measured) L31096 - **§337** — THE CC1-ONLY BLOCKER CLASS: `blocker_probe`'s STATIC ORACLE REPORTS "none" AND THE WHOLE-TU COMPILE STILL FAILS (P31 S67; ov_SC04_011/func_801827DC, md_MAIN_027/func_800CB4A4) L31157 +- **§342** — A `void *` PARAMETER CAST TO ITS REAL TYPE IN A LOCAL IS **NOT** BYTE-NEUTRAL WHEN A LATER PARAMETER ALSO NEEDS A CALLEE-SAVED REGISTER (P31 S67; byte-proven ov_SC07_002/func_80181394, NEW LAW) L31257 +- **§343** — `decl_prior`'s FLEET MAJORITY CAN BE WRONG ABOUT THE TRUE SIGNATURE — READ THE RIVALS, NOT JUST THE WINNER (P31 S67; measured on func_8012BD14 / func_8012D624 / func_80143C74) L31274 ### (unbucketed — title matched no symptom vocabulary) (297) @@ -2501,6 +2517,13 @@ - **§336** — THE §5a CROSS-JUMP BARRIER GOES AT THE *BOTTOM* OF THE TWIN, NOT THE TOP: `find_cross_jump` WALKS BACKWARD FROM THE CONVERGING JUMP (P31 S67; byte-proven ov_SC05_001/func_80183C9C) L31149 - **§337** — THE CC1-ONLY BLOCKER CLASS: `blocker_probe`'s STATIC ORACLE REPORTS "none" AND THE WHOLE-TU COMPILE STILL FAILS (P31 S67; ov_SC04_011/func_801827DC, md_MAIN_027/func_800CB4A4) L31157 - **§338** — `jtbl_carve._sltiu_bounds` MISREADS A NON-SWITCH `sltiu` AS A BOUNDS CHECK, OVER-SPANNING THE TABLE (P31 S67; ov_SC06_022/func_80185B80, byte-diagnosed) L31171 +- **§339** — A 2-CASE SWITCH OMITS THE LOW-BOUND RANGE TEST, SO THE PRESENCE OF `slti/bnez` BETWEEN THE `beq`s IS A **COUNT TELL** FOR A THIRD CASE NODE (P31 S67; byte-proven ov_SC02_005/func_80190538, 197 ins) L31181 +- **§340** — §194-K COROLLARY: **FLIP THE FALSE EDGE YOU CANNOT DELETE.** A "scheduler" residual can be sched.c's ALIAS ORACLE emitting a FALSE true-dependence; source order chooses its DIRECTION (P31 S67; byte-proven ov_SC03_107/func_8017CF48, 10 -> 0 in one compile, zero bytes) L31209 +- **§341** — AN HImode STORE TEMP REWEIGHTS A sched2 TIE-BREAK THAT NO STATEMENT ORDER CAN REACH (P31 S67; byte-proven ov_SC03_006/func_801823B8, last 4 ins) L31243 +- **§342** — A `void *` PARAMETER CAST TO ITS REAL TYPE IN A LOCAL IS **NOT** BYTE-NEUTRAL WHEN A LATER PARAMETER ALSO NEEDS A CALLEE-SAVED REGISTER (P31 S67; byte-proven ov_SC07_002/func_80181394, NEW LAW) L31257 +- **§343** — `decl_prior`'s FLEET MAJORITY CAN BE WRONG ABOUT THE TRUE SIGNATURE — READ THE RIVALS, NOT JUST THE WINNER (P31 S67; measured on func_8012BD14 / func_8012D624 / func_80143C74) L31274 +- **§344** — RAISE A BIV'S global_alloc PRIORITY WITH A ZERO-BYTE REFERENCE INSTEAD OF PINNING IT; PINNING THE COUNTER KILLS LSR ENTIRELY (P31 S67; byte-proven ov_SC03_121/func_80180E64, 222 ins) L31296 +- **§345** — A VOLATILE **STORE** EVICTS THE MEM FROM cse AND KEEPS `sh`; A VOLATILE **LOAD** BLOCKS combine AND DEGRADES `lh` INTO `lhu+sll+sra` (P31 S67; byte-proven ov_SC01_084/func_80181A7C) L31312 --- @@ -3500,3 +3523,10 @@ Notes routinely quote that as a section id. This table resolves it. Grep bait: ` | L31149 | §336 | THE §5a CROSS-JUMP BARRIER GOES AT THE *BOTTOM* OF THE TWIN, NOT THE TOP: `find_cross_jump | | L31157 | §337 | THE CC1-ONLY BLOCKER CLASS: `blocker_probe`'s STATIC ORACLE REPORTS "none" AND THE WHOLE-T | | L31171 | §338 | `jtbl_carve._sltiu_bounds` MISREADS A NON-SWITCH `sltiu` AS A BOUNDS CHECK, OVER-SPANNING | +| L31181 | §339 | A 2-CASE SWITCH OMITS THE LOW-BOUND RANGE TEST, SO THE PRESENCE OF `slti/bnez` BETWEEN THE | +| L31209 | §340 | §194-K COROLLARY: **FLIP THE FALSE EDGE YOU CANNOT DELETE.** A "scheduler" residual can be | +| L31243 | §341 | AN HImode STORE TEMP REWEIGHTS A sched2 TIE-BREAK THAT NO STATEMENT ORDER CAN REACH (P31 S | +| L31257 | §342 | A `void *` PARAMETER CAST TO ITS REAL TYPE IN A LOCAL IS **NOT** BYTE-NEUTRAL WHEN A LATER | +| L31274 | §343 | `decl_prior`'s FLEET MAJORITY CAN BE WRONG ABOUT THE TRUE SIGNATURE — READ THE RIVALS, NOT | +| L31296 | §344 | RAISE A BIV'S global_alloc PRIORITY WITH A ZERO-BYTE REFERENCE INSTEAD OF PINNING IT; PINN | +| L31312 | §345 | A VOLATILE **STORE** EVICTS THE MEM FROM cse AND KEEPS `sh`; A VOLATILE **LOAD** BLOCKS co | diff --git a/docs/matching-cookbook.md b/docs/matching-cookbook.md index d01395c3b..d3e6d007f 100644 --- a/docs/matching-cookbook.md +++ b/docs/matching-cookbook.md @@ -31177,3 +31177,144 @@ gate then refused to clamp, leaving `jtbl_801E0C3C` spanning 7 words against 6 e `.rodata` under-fill. Two stale card facts were corrected in passing (the table is in `tail19`, not `tail20`; the carve is a 2-table span needing `JTBL_PADS := 0,4`), and per §322 `build_carve` returns PLAN OK — so this is a distinct defect from the plan-refusal class. + +## §339 — A 2-CASE SWITCH OMITS THE LOW-BOUND RANGE TEST, SO THE PRESENCE OF `slti/bnez` BETWEEN THE `beq`s IS A **COUNT TELL** FOR A THIRD CASE NODE (P31 S67; byte-proven ov_SC02_005/func_80190538, 197 ins) + +`stmt.c`'s `emit_case_nodes` carries the rule in its own comment — *"omit the conditional branch to +default if we avoid only one right child"* — so a switch with TWO case nodes emits no low-bound +check, while THREE emits one. That makes the range test a **structural count you can read off the +target**, not a detail to reproduce by luck: + + beq $v1, 1, ... <- case 1 + slti $v0, $v1, 2 <- THIS PAIR ONLY EXISTS IF THERE ARE >=3 CASE NODES + bnez $v0, default + beq $v1, 2, ... <- case 2 + +Seeing `slti/bnez` sitting BETWEEN two `beq`s means a case node is missing from your draft. Adding +`case 0: return;` supplied exactly the missing 2 instructions here. **Read the case count off the +range test before you start rewriting arms.** + +Three more dials byte-proven on the same function, all reusable: +* **A frame's "holes" can be struct padding, not scalars.** Slots 0x20/0x24/0x28 + 0x30/0x38 with + gaps at 0x2C/0x34/0x3C are TWO 16-byte VECTOR-shaped structs whose `pad` members are the holes — + not five independent scalars. Cf. §333: frame arithmetic is evidence about DECLARATIONS. +* **`A - (B + C)` tree-folds to `(A - C) - B`**, which flips an `addiu` sign. An explicit temp for + `B + C` blocks the fold. +* **Declaring temps INSIDE each if-arm instead of at function scope is a REGISTER dial.** A + function-scope pseudo spans both arms (ptr=$a2 / dx=$a1 / dz=$a0); block-scope gives the target's + ptr=$a1, first-computed=$a0, second=$v1. Paired lever: putting `v.vy = 0;` at the END of each arm + rather than after the join keeps the join block's `lw $a2,0x24($sp)` a REAL load instead of letting + cse turn it into `move $a2,$zero`. + +## §340 — §194-K COROLLARY: **FLIP THE FALSE EDGE YOU CANNOT DELETE.** A "scheduler" residual can be sched.c's ALIAS ORACLE emitting a FALSE true-dependence; source order chooses its DIRECTION (P31 S67; byte-proven ov_SC03_107/func_8017CF48, 10 -> 0 in one compile, zero bytes) + +**THE MISDIAGNOSIS THIS FIXES.** A `SCHEDULE-REORDER/10` residual was not the scheduler's priority +heuristic at all — it was `memrefs_conflict_p` returning a dependence that does not exist. + +**THE MECHANISM, traced.** The §194-K re-tie `__asm__("" : "=r"(tp) : "0"(tp))` is MANDATORY here +(without it `reg_n_sets == 1` lets `update_equiv_regs` rematerialize the address and the function is +212 ins, not 206 — §194-K bound 3's coupling, measured at exactly ±6). But that second SET has a +side effect: `reg_known_value[tp]` falls back to `(reg tp)`, so `canon_rtx` becomes a no-op, and +`memrefs_conflict_p` (`sched.c:614`) walks PAST its frame-pointer arm (`:640-664`, where +`CONSTANT_P(y)` would have returned 0) to the terminal `return 1`. Result: a FALSE true-dependence +between `(plus (reg tp) -8)` and `(plus (reg sp) 0x12)`, pinning `sh $v0,-8($s0)` ahead of +`lh $a1,0x12($sp)`. + +**THE LEVER.** §194-K's own bound 7 says the edge's DIRECTION is whatever the source order wrote. So +do not fight the false edge — **reverse it into an anti-dependence** by hoisting the load above the +store: + + t0 = f(p[-4], buf[0], 4, 1); u1 = buf[1]; p[-4] = t0; + t1 = f(p[-3], u1, 4, 1); ... + +The store then sinks past all four argument setups and `reorg` steals it into the call's delay slot. +**Zero bytes added, 10 residual rows to 0 in one compile.** + +**REFUTED EN ROUTE (do not re-try these):** +* the symbol-base spelling — fixes the ORDER but costs +6 instructions of rematerialisation; +* the `MEM_IN_STRUCT_P` route — `true_dependence`'s `/s` escape is UNREACHABLE here, because a stack + `ARRAY_REF` is always `/s` (`expr.c:4888`); +* the pointer-local load spelling. + +**GENERALISE:** when a residual looks like scheduling, ask whether the dependence is REAL before +reaching for priority dials. If the alias oracle invented it, the cheapest fix is not to remove the +edge but to make the source write it in the direction you want. + +## §341 — AN HImode STORE TEMP REWEIGHTS A sched2 TIE-BREAK THAT NO STATEMENT ORDER CAN REACH (P31 S67; byte-proven ov_SC03_006/func_801823B8, last 4 ins) + +After §224 cross-jump duplication closed 29 instructions, the final 4-instruction residual was a +sched2 tie-break, and **no statement-order or `s32`-temp spelling moved it**. The lever was the MODE +of the temp: declaring the 0x34 increment's temp as `u16` produces a genuine HImode store (rather +than a `subreg:HI` of an SImode pseudo), which reweights that chain's ALU→store edge — the 0x34 load +then leads while the stores stay 0x100-first. + +**The general shape:** when statement order is exhausted on a schedule tie, the remaining dials are +the ones that change the RTL's *shape* rather than its order — operand mode (§341), a widening temp +that forces one named sign-extend (§329), or an in-place operator that reuses the hard register +(§327's §194-H). A tie that no ordering reaches is usually asking for a different mode, not a +different sequence. + +## §342 — A `void *` PARAMETER CAST TO ITS REAL TYPE IN A LOCAL IS **NOT** BYTE-NEUTRAL WHEN A LATER PARAMETER ALSO NEEDS A CALLEE-SAVED REGISTER (P31 S67; byte-proven ov_SC07_002/func_80181394, NEW LAW) + +The banked twin's house spelling — `void *a1` in the signature, then a local +`s16 *param_2 = (s16 *)a1;` — reads as a pure retype and is usually free. It is not free here: it +**sinks a1's entry copy below a2's**, inverting the prologue's copy/save order. Declaring the +parameter as `s16 *param_2` directly restores the target's a1-then-a2 order. + +**Copy a twin's spelling, but re-derive its PARAMETER TYPES against your own signature** — the twin's +`void *` may be load-bearing for ITS register pressure and actively wrong for yours (cf. §330: the +neighbour lever is about structure and idiom, not a blind transcription). + +Companion from the same function, worth its own line because it inverts §333: +**do NOT hand-add an apparent 8-byte `vars` gap** — gcc had already padded it, and adding a dead +local produced frame 0x70 against the target's 0x68. §333 says a frame LARGER than your live locals +explain means a missing declared aggregate; the converse does not hold. Compute what gcc pads before +you add anything. + +## §343 — `decl_prior`'s FLEET MAJORITY CAN BE WRONG ABOUT THE TRUE SIGNATURE — READ THE RIVALS, NOT JUST THE WINNER (P31 S67; measured on func_8012BD14 / func_8012D624 / func_80143C74) + +The card's `decl_prior` reports what the FLEET DECLARES, ranked, with rivals. That is not the same as +what the function IS. Measured this wave: + +| symbol | card's fleet winner | n | rival | truth per the asm | +|---|---|---|---|---| +| `func_8012BD14` | `void (s32)` | 1374 | `s32 (s32)` ×163 | returns **s32** | +| `func_8012D624` | `void (s32)` | 1322 | `s32 (void*,s32,s32)` ×74 | **3 args, returns s32** | +| `func_80143C74` | `void (s32,s32)` | 90 | `s32 (s32,s32)` ×42 | returns **s32** | + +Verified independently: `void func_8012BD14(s32 a0)` really does appear ~1427× in `src/`. **The tool +is honest; the CORPUS is wrong.** A loosely-typed engine propagated a `void` spelling into a thousand +call sites, and a majority vote over those call sites reproduces the error at high confidence. + +**HOW TO USE THE FIELD:** treat the winner as the *house spelling* (what the destination TU probably +writes), and the RIVALS as evidence about the true signature — a rival with a materially different +return type or arity, backed by dozens of sites, usually means the majority is a propagated mistake. +The `.s` decides: a `jal` whose result is consumed returns a value however many TUs say `void`. +Cf. §43/§99/§320 (adopt the TU's decl) — the TU's spelling is what must COMPILE; the asm is what must +MATCH, and when they disagree you need the alias/no-proto escapes, not a corrected majority. + +## §344 — RAISE A BIV'S global_alloc PRIORITY WITH A ZERO-BYTE REFERENCE INSTEAD OF PINNING IT; PINNING THE COUNTER KILLS LSR ENTIRELY (P31 S67; byte-proven ov_SC03_121/func_80180E64, 222 ins) + +Writing the loop in INDEX form makes the pointer an LSR giv, so `strength_reduce` emits its init +AFTER `move_movables`' hoisted constant — which is the order the target has. That leaves a +counter-vs-giv register swap ($a0/$a1), and the obvious fix is wrong: + +* **`register` pin on the counter → kills LSR entirely** (the biv stops being a biv). +* **Zero-byte `__asm__ __volatile__("" :: "r"(i))` in the loop body → correct.** It adds a FIFTH + reference to the biv, lifting its `global_alloc` priority (`floor_log2(n_refs)*n_refs/live_length`) + above the giv's, and costs no instructions. + +**The general move:** when two quantities are competing for a register and one is loop-structural, +change its REFERENCE COUNT rather than its assignment. A pin overrides the allocator; an extra +reference persuades it, and only the second leaves the loop optimizations intact. Cf. §334, where the +same priority formula was moved by changing which pseudo got spilled. + +## §345 — A VOLATILE **STORE** EVICTS THE MEM FROM cse AND KEEPS `sh`; A VOLATILE **LOAD** BLOCKS combine AND DEGRADES `lh` INTO `lhu+sll+sra` (P31 S67; byte-proven ov_SC01_084/func_80181A7C) + +For a store→reload pair at the same address, the volatile qualifier is not symmetric and the two +placements give different instruction streams: +* **volatile STORE** — keeps the `sh`, evicts the MEM from cse so the reload is real. Wanted. +* **volatile LOAD** — blocks `combine`, so the sign-extending `lh` degrades into `lhu + sll + sra` + (+2 instructions). Not wanted. +Then the ordinary ladder finished it: splitting reused C variables into distinct pseudos moved the +allocno priority (`refs*log/live_length` again) 59 → 4, and §219's in-place `h += 4` closed 4 → 0. diff --git a/docs/progress.fleet.md b/docs/progress.fleet.md index de3fbb3f0..a90024614 100644 --- a/docs/progress.fleet.md +++ b/docs/progress.fleet.md @@ -4,21 +4,21 @@ # cross-binary collapsible-byte leverage: docs/duplicates.cross.md. # THREE progress metrics (all matter — see the labels): -FLEET fn-count byte-ident: 362413 / 362936 = 99.86% (REAL+LINKED+empties; FUNCTION-count, ×134-inflated — one crack counts per overlay) -FLEET instr-weighted : 13411738 / 13523865 = 99.2% (shipped .text across main + resident + 211 overlays; the decomp.dev-DISPLAY number) -FLEET distinct-code(uniq): 5744258 / 5851972 = 98.2% (90525/90929 unique fns; the DISTINCT-RE number) -MAIN game-code weighted : 35059 / 79510 = 44.1% (INCLUDED in the fleet numbers above since 2026-07-22 — roadmap §1 metrics contract; LINKED-excluding Ghidra sig dated 2026-08-05; caveat is R34: no independent second oracle for a PS-X EXE, NOT drift) - (fleet EXCLUDING main, for continuity with pre-2026-07-22 readings: 13376679 / 13444355 = 99.5%) +FLEET fn-count byte-ident: 362466 / 362968 = 99.86% (REAL+LINKED+empties; FUNCTION-count, ×134-inflated — one crack counts per overlay) +FLEET instr-weighted : 13414741 / 13523865 = 99.2% (shipped .text across main + resident + 211 overlays; the decomp.dev-DISPLAY number) +FLEET distinct-code(uniq): 5747309 / 5851972 = 98.2% (90544/90929 unique fns; the DISTINCT-RE number) +MAIN game-code weighted : 35212 / 79510 = 44.3% (INCLUDED in the fleet numbers above since 2026-07-22 — roadmap §1 metrics contract; LINKED-excluding Ghidra sig dated 2026-08-05; caveat is R34: no independent second oracle for a PS-X EXE, NOT drift) + (fleet EXCLUDING main, for continuity with pre-2026-07-22 readings: 13379529 / 13444355 = 99.5%) -FLEET REAL substantive : 360241 (of which dedup-shared 255226 via 2193 groups / 255302 instances) +FLEET REAL substantive : 360296 (of which dedup-shared 255628 via 2218 groups / 255704 instances) FLEET LINKED PsyQ objs : 959 FLEET NON_MATCHING : 3 (0 in any default build — G4) -FLEET INCLUDE_ASM stubs : 520 -FLEET matchable : 362936 +FLEET INCLUDE_ASM stubs : 499 +FLEET matchable : 362968 | binary | REAL | shared | LINKED | byte-ident | matchable | byte-ident % | |---|---:|---:|---:|---:|---:|---:| -| main | 827 | 2 | 959 | 1829 | 1922 | 95.2% | +| main | 829 | 2 | 959 | 1831 | 1920 | 95.4% | | resident | 138 | 0 | 0 | 140 | 145 | 96.6% | | md_MAIN_001 | 11 | 0 | 0 | 11 | 11 | 100.0% | | md_MAIN_003 | 37 | 0 | 0 | 37 | 51 | 72.5% | @@ -26,7 +26,7 @@ FLEET matchable : 362936 | md_MAIN_011 | 17 | 0 | 0 | 18 | 21 | 85.7% | | md_MAIN_013 | 15 | 0 | 0 | 15 | 16 | 93.8% | | md_MAIN_014 | 12 | 0 | 0 | 13 | 13 | 100.0% | -| md_MAIN_015 | 20 | 0 | 0 | 20 | 20 | 100.0% | +| md_MAIN_015 | 20 | 1 | 0 | 20 | 20 | 100.0% | | md_MAIN_016 | 11 | 0 | 0 | 12 | 12 | 100.0% | | md_MAIN_017 | 10 | 0 | 0 | 10 | 10 | 100.0% | | md_MAIN_018 | 10 | 0 | 0 | 11 | 11 | 100.0% | @@ -34,7 +34,7 @@ FLEET matchable : 362936 | md_MAIN_020 | 12 | 0 | 0 | 13 | 13 | 100.0% | | md_MAIN_021 | 10 | 0 | 0 | 11 | 11 | 100.0% | | md_MAIN_022 | 31 | 0 | 0 | 33 | 33 | 100.0% | -| md_MAIN_023 | 5 | 0 | 0 | 6 | 6 | 100.0% | +| md_MAIN_023 | 5 | 1 | 0 | 6 | 6 | 100.0% | | md_MAIN_024 | 4 | 0 | 0 | 6 | 6 | 100.0% | | md_MAIN_025 | 29 | 0 | 0 | 29 | 30 | 96.7% | | md_MAIN_026 | 24 | 0 | 0 | 24 | 24 | 100.0% | @@ -42,8 +42,8 @@ FLEET matchable : 362936 | md_MAIN_028 | 21 | 0 | 0 | 21 | 22 | 95.5% | | md_MAIN_029 | 10 | 0 | 0 | 11 | 11 | 100.0% | | md_MAIN_030 | 10 | 0 | 0 | 10 | 10 | 100.0% | -| md_MAIN_031 | 17 | 0 | 0 | 17 | 18 | 94.4% | -| md_MAIN_032 | 10 | 0 | 0 | 10 | 10 | 100.0% | +| md_MAIN_031 | 18 | 0 | 0 | 18 | 18 | 100.0% | +| md_MAIN_032 | 10 | 1 | 0 | 10 | 10 | 100.0% | | md_MAIN_033 | 18 | 0 | 0 | 18 | 19 | 94.7% | | md_MAIN_034 | 25 | 0 | 0 | 26 | 28 | 92.9% | | md_MAIN_035 | 15 | 0 | 0 | 16 | 16 | 100.0% | @@ -52,7 +52,7 @@ FLEET matchable : 362936 | md_MAIN_038 | 20 | 0 | 0 | 20 | 20 | 100.0% | | md_MAIN_039 | 26 | 0 | 0 | 26 | 26 | 100.0% | | md_MAIN_040 | 19 | 0 | 0 | 19 | 19 | 100.0% | -| md_MAIN_041 | 14 | 0 | 0 | 14 | 15 | 93.3% | +| md_MAIN_041 | 15 | 1 | 0 | 15 | 15 | 100.0% | | md_MAIN_042 | 4 | 0 | 0 | 4 | 4 | 100.0% | | md_MAIN_043 | 22 | 0 | 0 | 23 | 23 | 100.0% | | md_MAIN_044 | 41 | 0 | 0 | 42 | 43 | 97.7% | @@ -90,144 +90,144 @@ FLEET matchable : 362936 | md_SC05_029 | 27 | 0 | 0 | 31 | 31 | 100.0% | | md_SC07_003 | 93 | 0 | 0 | 93 | 100 | 93.0% | | md_SC07_004 | 298 | 0 | 0 | 298 | 315 | 94.6% | -| ov_MAIN_012 | 2321 | 1691 | 0 | 2400 | 2402 | 99.9% | -| ov_SC01_000 | 2398 | 1812 | 0 | 2398 | 2403 | 99.8% | -| ov_SC01_001 | 2458 | 1814 | 0 | 2460 | 2465 | 99.8% | -| ov_SC01_004 | 2412 | 1805 | 0 | 2413 | 2414 | 100.0% | -| ov_SC01_005 | 2500 | 1836 | 0 | 2500 | 2503 | 99.9% | -| ov_SC01_006 | 2500 | 1836 | 0 | 2500 | 2503 | 99.9% | -| ov_SC01_008 | 2423 | 1806 | 0 | 2425 | 2426 | 100.0% | -| ov_SC01_009 | 2504 | 1806 | 0 | 2505 | 2507 | 99.9% | -| ov_SC01_074 | 2424 | 1806 | 0 | 2426 | 2426 | 100.0% | -| ov_SC01_077 | 2579 | 1767 | 0 | 2581 | 2586 | 99.8% | -| ov_SC01_080 | 2503 | 1811 | 0 | 2503 | 2512 | 99.6% | -| ov_SC01_084 | 2563 | 1814 | 0 | 2568 | 2579 | 99.6% | -| ov_SC02_000 | 2678 | 1892 | 0 | 2678 | 2683 | 99.8% | -| ov_SC02_003 | 2676 | 1892 | 0 | 2676 | 2683 | 99.7% | -| ov_SC02_004 | 2401 | 1811 | 0 | 2401 | 2401 | 100.0% | -| ov_SC02_005 | 2905 | 1805 | 0 | 2915 | 2926 | 99.6% | -| ov_SC02_011 | 2874 | 1813 | 0 | 2884 | 2893 | 99.7% | -| ov_SC02_015 | 2414 | 1811 | 0 | 2414 | 2414 | 100.0% | -| ov_SC02_016 | 2540 | 1813 | 0 | 2543 | 2545 | 99.9% | -| ov_SC02_017 | 2720 | 1813 | 0 | 2728 | 2732 | 99.9% | -| ov_SC02_021 | 2436 | 1811 | 0 | 2436 | 2437 | 100.0% | -| ov_SC02_026 | 2565 | 1810 | 0 | 2571 | 2572 | 100.0% | -| ov_SC02_027 | 2681 | 1831 | 0 | 2690 | 2692 | 99.9% | -| ov_SC02_028 | 2690 | 1830 | 0 | 2700 | 2701 | 100.0% | -| ov_SC02_031 | 2555 | 1812 | 0 | 2560 | 2562 | 99.9% | -| ov_SC02_035 | 2516 | 1809 | 0 | 2519 | 2520 | 100.0% | -| ov_SC02_037 | 2431 | 1706 | 0 | 2513 | 2516 | 99.9% | -| ov_SC02_039 | 2415 | 1810 | 0 | 2415 | 2416 | 100.0% | -| ov_SC02_041 | 2557 | 1809 | 0 | 2560 | 2561 | 100.0% | -| ov_SC03_001 | 2851 | 1810 | 0 | 2868 | 2869 | 100.0% | -| ov_SC03_002 | 2616 | 1818 | 0 | 2631 | 2631 | 100.0% | -| ov_SC03_003 | 2422 | 1809 | 0 | 2423 | 2423 | 100.0% | -| ov_SC03_006 | 2757 | 1817 | 0 | 2766 | 2767 | 100.0% | -| ov_SC03_007 | 2614 | 1811 | 0 | 2618 | 2623 | 99.8% | -| ov_SC03_010 | 2469 | 1810 | 0 | 2469 | 2471 | 99.9% | -| ov_SC03_011 | 2520 | 1810 | 0 | 2526 | 2527 | 100.0% | -| ov_SC03_012 | 2405 | 1811 | 0 | 2406 | 2406 | 100.0% | -| ov_SC03_013 | 2490 | 1810 | 0 | 2490 | 2493 | 99.9% | -| ov_SC03_014 | 2685 | 1877 | 0 | 2685 | 2685 | 100.0% | -| ov_SC03_015 | 2468 | 1877 | 0 | 2468 | 2468 | 100.0% | -| ov_SC03_023 | 2434 | 1811 | 0 | 2435 | 2435 | 100.0% | -| ov_SC03_024 | 2633 | 1835 | 0 | 2640 | 2641 | 100.0% | -| ov_SC03_028 | 2652 | 1814 | 0 | 2656 | 2664 | 99.7% | -| ov_SC03_029 | 2631 | 1813 | 0 | 2641 | 2644 | 99.9% | -| ov_SC03_030 | 2490 | 1814 | 0 | 2492 | 2495 | 99.9% | -| ov_SC03_031 | 2509 | 1811 | 0 | 2512 | 2514 | 99.9% | -| ov_SC03_089 | 2573 | 1814 | 0 | 2580 | 2581 | 100.0% | -| ov_SC03_090 | 2617 | 1814 | 0 | 2625 | 2625 | 100.0% | -| ov_SC03_091 | 2632 | 1831 | 0 | 2640 | 2640 | 100.0% | -| ov_SC03_092 | 2572 | 1814 | 0 | 2584 | 2588 | 99.8% | -| ov_SC03_093 | 2559 | 1831 | 0 | 2563 | 2563 | 100.0% | -| ov_SC03_094 | 2569 | 1809 | 0 | 2575 | 2577 | 99.9% | -| ov_SC03_095 | 2471 | 1809 | 0 | 2474 | 2474 | 100.0% | -| ov_SC03_096 | 2462 | 1809 | 0 | 2465 | 2465 | 100.0% | -| ov_SC03_097 | 2596 | 1830 | 0 | 2603 | 2603 | 100.0% | -| ov_SC03_098 | 2538 | 1831 | 0 | 2541 | 2541 | 100.0% | -| ov_SC03_099 | 2500 | 1809 | 0 | 2503 | 2504 | 100.0% | -| ov_SC03_100 | 2535 | 1831 | 0 | 2539 | 2539 | 100.0% | -| ov_SC03_101 | 2524 | 1814 | 0 | 2528 | 2528 | 100.0% | -| ov_SC03_102 | 2486 | 1809 | 0 | 2489 | 2492 | 99.9% | -| ov_SC03_103 | 2507 | 1811 | 0 | 2510 | 2510 | 100.0% | -| ov_SC03_104 | 2609 | 1814 | 0 | 2616 | 2616 | 100.0% | -| ov_SC03_105 | 2564 | 1814 | 0 | 2571 | 2596 | 99.0% | -| ov_SC03_107 | 2408 | 1691 | 0 | 2491 | 2496 | 99.8% | -| ov_SC03_108 | 2441 | 1810 | 0 | 2441 | 2443 | 99.9% | -| ov_SC03_109 | 2422 | 1810 | 0 | 2424 | 2424 | 100.0% | -| ov_SC03_110 | 2467 | 1833 | 0 | 2467 | 2468 | 100.0% | -| ov_SC03_111 | 2505 | 1809 | 0 | 2508 | 2510 | 99.9% | -| ov_SC03_112 | 2521 | 1811 | 0 | 2523 | 2526 | 99.9% | -| ov_SC03_113 | 2465 | 1811 | 0 | 2468 | 2468 | 100.0% | -| ov_SC03_114 | 2413 | 1809 | 0 | 2415 | 2415 | 100.0% | -| ov_SC03_115 | 2470 | 1809 | 0 | 2472 | 2472 | 100.0% | -| ov_SC03_116 | 2435 | 1809 | 0 | 2438 | 2438 | 100.0% | -| ov_SC03_117 | 2549 | 1809 | 0 | 2555 | 2557 | 99.9% | -| ov_SC03_118 | 2679 | 1867 | 0 | 2680 | 2684 | 99.9% | -| ov_SC03_119 | 2681 | 1867 | 0 | 2682 | 2685 | 99.9% | -| ov_SC03_121 | 2454 | 1810 | 0 | 2456 | 2459 | 99.9% | -| ov_SC03_124 | 2716 | 1805 | 0 | 2736 | 2741 | 99.8% | -| ov_SC03_125 | 2576 | 1818 | 0 | 2588 | 2588 | 100.0% | -| ov_SC03_126 | 2423 | 1813 | 0 | 2423 | 2423 | 100.0% | -| ov_SC04_000 | 2535 | 1814 | 0 | 2544 | 2546 | 99.9% | -| ov_SC04_002 | 2629 | 1809 | 0 | 2633 | 2636 | 99.9% | -| ov_SC04_003 | 2498 | 1816 | 0 | 2501 | 2502 | 100.0% | -| ov_SC04_004 | 2555 | 1810 | 0 | 2557 | 2558 | 100.0% | -| ov_SC04_005 | 2604 | 1809 | 0 | 2610 | 2612 | 99.9% | -| ov_SC04_006 | 2452 | 1815 | 0 | 2454 | 2454 | 100.0% | -| ov_SC04_007 | 2564 | 1810 | 0 | 2568 | 2569 | 100.0% | -| ov_SC04_008 | 2414 | 1809 | 0 | 2414 | 2415 | 100.0% | -| ov_SC04_009 | 2438 | 1809 | 0 | 2441 | 2441 | 100.0% | -| ov_SC04_010 | 2417 | 1809 | 0 | 2418 | 2419 | 100.0% | -| ov_SC04_011 | 2787 | 1814 | 0 | 2793 | 2804 | 99.6% | -| ov_SC04_012 | 2418 | 1809 | 0 | 2419 | 2420 | 100.0% | -| ov_SC04_015 | 2597 | 1810 | 0 | 2608 | 2611 | 99.9% | -| ov_SC04_016 | 2435 | 1809 | 0 | 2437 | 2440 | 99.9% | -| ov_SC04_018 | 2820 | 1892 | 0 | 2820 | 2823 | 99.9% | -| ov_SC04_019 | 2855 | 1895 | 0 | 2855 | 2857 | 99.9% | -| ov_SC04_020 | 2554 | 1818 | 0 | 2566 | 2567 | 100.0% | -| ov_SC04_021 | 2423 | 1813 | 0 | 2423 | 2423 | 100.0% | -| ov_SC05_000 | 2418 | 1813 | 0 | 2421 | 2422 | 100.0% | -| ov_SC05_001 | 2566 | 1811 | 0 | 2571 | 2574 | 99.9% | -| ov_SC05_002 | 2438 | 1809 | 0 | 2441 | 2442 | 100.0% | -| ov_SC05_003 | 2478 | 1809 | 0 | 2479 | 2481 | 99.9% | -| ov_SC05_004 | 2462 | 1809 | 0 | 2464 | 2464 | 100.0% | -| ov_SC05_005 | 2488 | 1815 | 0 | 2489 | 2491 | 99.9% | -| ov_SC05_006 | 2430 | 1811 | 0 | 2430 | 2430 | 100.0% | -| ov_SC05_007 | 2477 | 1809 | 0 | 2482 | 2482 | 100.0% | -| ov_SC05_008 | 2534 | 1809 | 0 | 2536 | 2543 | 99.7% | -| ov_SC05_009 | 2434 | 1809 | 0 | 2438 | 2438 | 100.0% | -| ov_SC05_010 | 2573 | 1814 | 0 | 2577 | 2588 | 99.6% | -| ov_SC05_011 | 2406 | 1809 | 0 | 2407 | 2409 | 99.9% | -| ov_SC05_017 | 2829 | 1809 | 0 | 2840 | 2842 | 99.9% | -| ov_SC05_018 | 2655 | 1817 | 0 | 2668 | 2673 | 99.8% | -| ov_SC05_019 | 2423 | 1813 | 0 | 2423 | 2423 | 100.0% | -| ov_SC06_000 | 2687 | 1839 | 0 | 2690 | 2691 | 100.0% | -| ov_SC06_006 | 2509 | 1810 | 0 | 2510 | 2511 | 100.0% | -| ov_SC06_008 | 2535 | 1811 | 0 | 2541 | 2542 | 100.0% | -| ov_SC06_010 | 2508 | 1809 | 0 | 2513 | 2516 | 99.9% | -| ov_SC06_011 | 2463 | 1809 | 0 | 2467 | 2468 | 100.0% | -| ov_SC06_013 | 2424 | 1809 | 0 | 2425 | 2425 | 100.0% | -| ov_SC06_014 | 2451 | 1809 | 0 | 2453 | 2453 | 100.0% | -| ov_SC06_015 | 2421 | 1809 | 0 | 2421 | 2421 | 100.0% | -| ov_SC06_016 | 2547 | 1814 | 0 | 2549 | 2549 | 100.0% | -| ov_SC06_018 | 2654 | 1810 | 0 | 2661 | 2665 | 99.8% | -| ov_SC06_020 | 2514 | 1811 | 0 | 2515 | 2518 | 99.9% | -| ov_SC06_022 | 2627 | 1809 | 0 | 2635 | 2642 | 99.7% | -| ov_SC06_024 | 2655 | 1809 | 0 | 2661 | 2667 | 99.8% | -| ov_SC06_025 | 2562 | 1809 | 0 | 2567 | 2572 | 99.8% | -| ov_SC06_027 | 2407 | 1809 | 0 | 2408 | 2408 | 100.0% | -| ov_SC06_029 | 2632 | 1814 | 0 | 2644 | 2662 | 99.3% | -| ov_SC06_030 | 2453 | 1814 | 0 | 2453 | 2456 | 99.9% | -| ov_SC06_032 | 2643 | 1810 | 0 | 2650 | 2657 | 99.7% | -| ov_SC06_033 | 2619 | 1810 | 0 | 2626 | 2630 | 99.8% | -| ov_SC07_000 | 2510 | 1814 | 0 | 2512 | 2521 | 99.6% | -| ov_SC07_001 | 2448 | 1810 | 0 | 2450 | 2454 | 99.8% | -| ov_SC07_002 | 2567 | 1814 | 0 | 2571 | 2578 | 99.7% | -| ov_SC07_006 | 2371 | 1628 | 0 | 2451 | 2457 | 99.8% | -| ov_SC07_007 | 2522 | 1663 | 0 | 2606 | 2612 | 99.8% | -| ov_SC07_008 | 2386 | 1809 | 0 | 2386 | 2386 | 100.0% | -| ov_SC07_009 | 2428 | 1809 | 0 | 2430 | 2430 | 100.0% | -| ov_SC07_010 | 2435 | 1687 | 0 | 2517 | 2523 | 99.8% | -| ov_SC07_011 | 2366 | 1662 | 0 | 2446 | 2448 | 99.9% | +| ov_MAIN_012 | 2321 | 1693 | 0 | 2400 | 2402 | 99.9% | +| ov_SC01_000 | 2398 | 1814 | 0 | 2398 | 2403 | 99.8% | +| ov_SC01_001 | 2459 | 1816 | 0 | 2461 | 2465 | 99.8% | +| ov_SC01_004 | 2412 | 1807 | 0 | 2413 | 2414 | 100.0% | +| ov_SC01_005 | 2500 | 1838 | 0 | 2500 | 2503 | 99.9% | +| ov_SC01_006 | 2500 | 1838 | 0 | 2500 | 2503 | 99.9% | +| ov_SC01_008 | 2423 | 1808 | 0 | 2425 | 2426 | 100.0% | +| ov_SC01_009 | 2504 | 1808 | 0 | 2505 | 2507 | 99.9% | +| ov_SC01_074 | 2424 | 1808 | 0 | 2426 | 2426 | 100.0% | +| ov_SC01_077 | 2581 | 1769 | 0 | 2583 | 2586 | 99.9% | +| ov_SC01_080 | 2503 | 1813 | 0 | 2503 | 2512 | 99.6% | +| ov_SC01_084 | 2565 | 1824 | 0 | 2570 | 2579 | 99.7% | +| ov_SC02_000 | 2679 | 1902 | 0 | 2679 | 2683 | 99.9% | +| ov_SC02_003 | 2676 | 1902 | 0 | 2676 | 2683 | 99.7% | +| ov_SC02_004 | 2401 | 1813 | 0 | 2401 | 2401 | 100.0% | +| ov_SC02_005 | 2907 | 1807 | 0 | 2917 | 2926 | 99.7% | +| ov_SC02_011 | 2874 | 1815 | 0 | 2884 | 2893 | 99.7% | +| ov_SC02_015 | 2414 | 1819 | 0 | 2414 | 2414 | 100.0% | +| ov_SC02_016 | 2540 | 1815 | 0 | 2543 | 2545 | 99.9% | +| ov_SC02_017 | 2720 | 1815 | 0 | 2728 | 2732 | 99.9% | +| ov_SC02_021 | 2437 | 1819 | 0 | 2437 | 2437 | 100.0% | +| ov_SC02_026 | 2565 | 1812 | 0 | 2571 | 2572 | 100.0% | +| ov_SC02_027 | 2681 | 1833 | 0 | 2690 | 2692 | 99.9% | +| ov_SC02_028 | 2690 | 1832 | 0 | 2700 | 2701 | 100.0% | +| ov_SC02_031 | 2555 | 1814 | 0 | 2560 | 2562 | 99.9% | +| ov_SC02_035 | 2516 | 1811 | 0 | 2519 | 2520 | 100.0% | +| ov_SC02_037 | 2431 | 1708 | 0 | 2513 | 2516 | 99.9% | +| ov_SC02_039 | 2416 | 1819 | 0 | 2416 | 2416 | 100.0% | +| ov_SC02_041 | 2557 | 1811 | 0 | 2560 | 2561 | 100.0% | +| ov_SC03_001 | 2851 | 1812 | 0 | 2868 | 2869 | 100.0% | +| ov_SC03_002 | 2616 | 1820 | 0 | 2631 | 2631 | 100.0% | +| ov_SC03_003 | 2422 | 1811 | 0 | 2423 | 2423 | 100.0% | +| ov_SC03_006 | 2757 | 1819 | 0 | 2766 | 2767 | 100.0% | +| ov_SC03_007 | 2615 | 1813 | 0 | 2619 | 2623 | 99.8% | +| ov_SC03_010 | 2469 | 1812 | 0 | 2469 | 2471 | 99.9% | +| ov_SC03_011 | 2520 | 1812 | 0 | 2526 | 2527 | 100.0% | +| ov_SC03_012 | 2405 | 1813 | 0 | 2406 | 2406 | 100.0% | +| ov_SC03_013 | 2490 | 1812 | 0 | 2490 | 2493 | 99.9% | +| ov_SC03_014 | 2685 | 1879 | 0 | 2685 | 2685 | 100.0% | +| ov_SC03_015 | 2468 | 1879 | 0 | 2468 | 2468 | 100.0% | +| ov_SC03_023 | 2434 | 1813 | 0 | 2435 | 2435 | 100.0% | +| ov_SC03_024 | 2633 | 1837 | 0 | 2640 | 2641 | 100.0% | +| ov_SC03_028 | 2653 | 1816 | 0 | 2657 | 2664 | 99.7% | +| ov_SC03_029 | 2631 | 1815 | 0 | 2641 | 2644 | 99.9% | +| ov_SC03_030 | 2490 | 1816 | 0 | 2492 | 2495 | 99.9% | +| ov_SC03_031 | 2510 | 1813 | 0 | 2513 | 2514 | 100.0% | +| ov_SC03_089 | 2573 | 1824 | 0 | 2580 | 2581 | 100.0% | +| ov_SC03_090 | 2617 | 1824 | 0 | 2625 | 2625 | 100.0% | +| ov_SC03_091 | 2632 | 1833 | 0 | 2640 | 2640 | 100.0% | +| ov_SC03_092 | 2572 | 1824 | 0 | 2584 | 2588 | 99.8% | +| ov_SC03_093 | 2560 | 1834 | 0 | 2563 | 2563 | 100.0% | +| ov_SC03_094 | 2569 | 1811 | 0 | 2575 | 2577 | 99.9% | +| ov_SC03_095 | 2471 | 1811 | 0 | 2474 | 2474 | 100.0% | +| ov_SC03_096 | 2462 | 1811 | 0 | 2465 | 2465 | 100.0% | +| ov_SC03_097 | 2596 | 1832 | 0 | 2603 | 2603 | 100.0% | +| ov_SC03_098 | 2538 | 1833 | 0 | 2541 | 2541 | 100.0% | +| ov_SC03_099 | 2500 | 1811 | 0 | 2503 | 2504 | 100.0% | +| ov_SC03_100 | 2535 | 1833 | 0 | 2539 | 2539 | 100.0% | +| ov_SC03_101 | 2524 | 1824 | 0 | 2528 | 2528 | 100.0% | +| ov_SC03_102 | 2486 | 1811 | 0 | 2489 | 2492 | 99.9% | +| ov_SC03_103 | 2507 | 1813 | 0 | 2510 | 2510 | 100.0% | +| ov_SC03_104 | 2609 | 1824 | 0 | 2616 | 2616 | 100.0% | +| ov_SC03_105 | 2564 | 1816 | 0 | 2571 | 2596 | 99.0% | +| ov_SC03_107 | 2408 | 1693 | 0 | 2491 | 2496 | 99.8% | +| ov_SC03_108 | 2441 | 1819 | 0 | 2441 | 2443 | 99.9% | +| ov_SC03_109 | 2422 | 1812 | 0 | 2424 | 2424 | 100.0% | +| ov_SC03_110 | 2467 | 1835 | 0 | 2467 | 2468 | 100.0% | +| ov_SC03_111 | 2505 | 1811 | 0 | 2508 | 2510 | 99.9% | +| ov_SC03_112 | 2521 | 1813 | 0 | 2523 | 2526 | 99.9% | +| ov_SC03_113 | 2465 | 1813 | 0 | 2468 | 2468 | 100.0% | +| ov_SC03_114 | 2413 | 1812 | 0 | 2415 | 2415 | 100.0% | +| ov_SC03_115 | 2470 | 1812 | 0 | 2472 | 2472 | 100.0% | +| ov_SC03_116 | 2435 | 1811 | 0 | 2438 | 2438 | 100.0% | +| ov_SC03_117 | 2549 | 1811 | 0 | 2555 | 2557 | 99.9% | +| ov_SC03_118 | 2679 | 1869 | 0 | 2680 | 2684 | 99.9% | +| ov_SC03_119 | 2682 | 1869 | 0 | 2683 | 2685 | 99.9% | +| ov_SC03_121 | 2454 | 1812 | 0 | 2456 | 2459 | 99.9% | +| ov_SC03_124 | 2716 | 1807 | 0 | 2736 | 2741 | 99.8% | +| ov_SC03_125 | 2576 | 1820 | 0 | 2588 | 2588 | 100.0% | +| ov_SC03_126 | 2423 | 1815 | 0 | 2423 | 2423 | 100.0% | +| ov_SC04_000 | 2535 | 1816 | 0 | 2544 | 2546 | 99.9% | +| ov_SC04_002 | 2629 | 1811 | 0 | 2633 | 2636 | 99.9% | +| ov_SC04_003 | 2498 | 1818 | 0 | 2501 | 2502 | 100.0% | +| ov_SC04_004 | 2555 | 1812 | 0 | 2557 | 2558 | 100.0% | +| ov_SC04_005 | 2604 | 1811 | 0 | 2610 | 2612 | 99.9% | +| ov_SC04_006 | 2452 | 1817 | 0 | 2454 | 2454 | 100.0% | +| ov_SC04_007 | 2564 | 1812 | 0 | 2568 | 2569 | 100.0% | +| ov_SC04_008 | 2414 | 1811 | 0 | 2414 | 2415 | 100.0% | +| ov_SC04_009 | 2438 | 1811 | 0 | 2441 | 2441 | 100.0% | +| ov_SC04_010 | 2417 | 1811 | 0 | 2418 | 2419 | 100.0% | +| ov_SC04_011 | 2787 | 1824 | 0 | 2793 | 2804 | 99.6% | +| ov_SC04_012 | 2418 | 1811 | 0 | 2419 | 2420 | 100.0% | +| ov_SC04_015 | 2597 | 1812 | 0 | 2608 | 2611 | 99.9% | +| ov_SC04_016 | 2436 | 1812 | 0 | 2438 | 2440 | 99.9% | +| ov_SC04_018 | 2852 | 1894 | 0 | 2852 | 2857 | 99.8% | +| ov_SC04_019 | 2855 | 1897 | 0 | 2855 | 2857 | 99.9% | +| ov_SC04_020 | 2554 | 1820 | 0 | 2566 | 2567 | 100.0% | +| ov_SC04_021 | 2423 | 1815 | 0 | 2423 | 2423 | 100.0% | +| ov_SC05_000 | 2418 | 1815 | 0 | 2421 | 2422 | 100.0% | +| ov_SC05_001 | 2566 | 1813 | 0 | 2571 | 2574 | 99.9% | +| ov_SC05_002 | 2438 | 1811 | 0 | 2441 | 2442 | 100.0% | +| ov_SC05_003 | 2478 | 1811 | 0 | 2479 | 2481 | 99.9% | +| ov_SC05_004 | 2462 | 1811 | 0 | 2464 | 2464 | 100.0% | +| ov_SC05_005 | 2488 | 1825 | 0 | 2489 | 2491 | 99.9% | +| ov_SC05_006 | 2430 | 1813 | 0 | 2430 | 2430 | 100.0% | +| ov_SC05_007 | 2477 | 1812 | 0 | 2482 | 2482 | 100.0% | +| ov_SC05_008 | 2534 | 1812 | 0 | 2536 | 2543 | 99.7% | +| ov_SC05_009 | 2434 | 1811 | 0 | 2438 | 2438 | 100.0% | +| ov_SC05_010 | 2573 | 1816 | 0 | 2577 | 2588 | 99.6% | +| ov_SC05_011 | 2406 | 1812 | 0 | 2407 | 2409 | 99.9% | +| ov_SC05_017 | 2829 | 1811 | 0 | 2840 | 2842 | 99.9% | +| ov_SC05_018 | 2655 | 1819 | 0 | 2668 | 2673 | 99.8% | +| ov_SC05_019 | 2423 | 1815 | 0 | 2423 | 2423 | 100.0% | +| ov_SC06_000 | 2687 | 1841 | 0 | 2690 | 2691 | 100.0% | +| ov_SC06_006 | 2509 | 1813 | 0 | 2510 | 2511 | 100.0% | +| ov_SC06_008 | 2535 | 1813 | 0 | 2541 | 2542 | 100.0% | +| ov_SC06_010 | 2508 | 1811 | 0 | 2513 | 2516 | 99.9% | +| ov_SC06_011 | 2463 | 1811 | 0 | 2467 | 2468 | 100.0% | +| ov_SC06_013 | 2424 | 1811 | 0 | 2425 | 2425 | 100.0% | +| ov_SC06_014 | 2451 | 1811 | 0 | 2453 | 2453 | 100.0% | +| ov_SC06_015 | 2421 | 1811 | 0 | 2421 | 2421 | 100.0% | +| ov_SC06_016 | 2547 | 1816 | 0 | 2549 | 2549 | 100.0% | +| ov_SC06_018 | 2654 | 1812 | 0 | 2661 | 2665 | 99.8% | +| ov_SC06_020 | 2514 | 1813 | 0 | 2515 | 2518 | 99.9% | +| ov_SC06_022 | 2627 | 1811 | 0 | 2635 | 2642 | 99.7% | +| ov_SC06_024 | 2655 | 1811 | 0 | 2661 | 2667 | 99.8% | +| ov_SC06_025 | 2562 | 1811 | 0 | 2567 | 2572 | 99.8% | +| ov_SC06_027 | 2407 | 1811 | 0 | 2408 | 2408 | 100.0% | +| ov_SC06_029 | 2632 | 1816 | 0 | 2644 | 2662 | 99.3% | +| ov_SC06_030 | 2453 | 1816 | 0 | 2453 | 2456 | 99.9% | +| ov_SC06_032 | 2643 | 1812 | 0 | 2650 | 2657 | 99.7% | +| ov_SC06_033 | 2619 | 1812 | 0 | 2626 | 2630 | 99.8% | +| ov_SC07_000 | 2510 | 1816 | 0 | 2512 | 2521 | 99.6% | +| ov_SC07_001 | 2448 | 1812 | 0 | 2450 | 2454 | 99.8% | +| ov_SC07_002 | 2567 | 1816 | 0 | 2571 | 2578 | 99.7% | +| ov_SC07_006 | 2372 | 1630 | 0 | 2452 | 2457 | 99.8% | +| ov_SC07_007 | 2524 | 1666 | 0 | 2607 | 2612 | 99.8% | +| ov_SC07_008 | 2386 | 1812 | 0 | 2386 | 2386 | 100.0% | +| ov_SC07_009 | 2428 | 1811 | 0 | 2430 | 2430 | 100.0% | +| ov_SC07_010 | 2435 | 1689 | 0 | 2517 | 2523 | 99.8% | +| ov_SC07_011 | 2366 | 1664 | 0 | 2446 | 2448 | 99.9% |