The local data share, and an operand that was never in any sample

ds_read_b32 and ds_write_b32 translate. The census went from 104 to 105 of 126 and from 4 to 5 of 10 fixtures complete - half the corpus. Sixty-nine execution tests.

The instruction was the easy part; its offset was not. The byte offset lives in the first word, and every earlier probe used the offset-free form - so the field appeared in no sample, and the solved layout had no slot for it. A translator built on that ignores every offset a compiler emits and reads the wrong word, with a perfectly valid address register and nothing to complain about.

Probing with offsets then made the opcode unsolvable, which was the good failure: the reference appends offset:16 to the last operand with no comma, so splitting on commas left v2 offset:16 as one piece that matches no register pattern. The solver now treats a named immediate as the operand it is.

This is the flat accesses' no-base trap again, in a new costume: a probe set that omits a case teaches the solver the case does not exist. Third occurrence. The generalisation already written down after the second one was correct and did not prevent the third, because the shape it takes changes each time - a hidden base, then a hidden width, now a hidden field appended without punctuation.

Surprises.

Instruction breadth is now exhausted. Every remaining blocker needs either the published instruction set (the three division helpers) or the resource model (exp, MTBUF, MUBUF, MIMG, VINTRP - sixteen of the twenty-one). There is no further unblocked translation work in this thread until a capture arrives.