test(shader): hold the table caller before decoding it

RdnaProgram::code is a span, so decoding the temporary TableCaller() left it dangling when LinkCalls copied the caller.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
LexroidandClaude Opus 5.5 committed 2026-10-25 02:59:40 +03:00
1 parent 66b0e20eeb
commit aa656b2ee5
1 file changed
+2 -1
+2 -1
View File
@@ -399,7 +399,8 @@ static std::vector<std::uint32_t> HoistedTableCaller(HoistedShape shape) {
static void CheckTableCalleeProgramCounter() {
const SwappcInfo swappc{false, 0u, 16u};
const auto program = RdnaInstructionDecoder{}.Decode(TableCaller());
const auto caller = TableCaller();
const auto program = RdnaInstructionDecoder{}.Decode(caller);
const auto calls = FindTableCalls(program, swappc);
Require(calls.size() == 1u);
const std::vector<std::uint32_t> callee{0xbf820001u, 0xbe901f00u, 0xbe80200eu};