journal 2026-05-06

P126: memory/control holding records

Forked P125 into P126 and added shadow holding records for memory-class and control-flow queued instructions. This is still instrumentation, not a behavior change.

The memory record counts loads, stores, and AMOs. It treats rs1 as the address source and rs2 as store/AMO data. The control record counts branches, JALs, and JALRs. It treats branch rs1/rs2 and JALR rs1 as source dependencies; JAL has no modeled source.

Verification:

checkresult
make check-toolsPASS
P126 Verilator buildPASS
P126 BusyBox shell profilePASS
P126-FILE-OK at cycle218,372,811

The useful numbers:

memory candidates  : 6,659,815
memory accepts     : 3,245,087
memory source busy : 3,414,728
memory full blocks : 0

control candidates : 9,328,049
control accepts    : 6,280,124
control source busy: 3,018,251
control full blocks: 29,878

P126 confirms that the next backend rung should be about scheduler wakeup/issue eligibility across multiple held classes, not merely a larger one-entry integer slot.