aboutsummaryrefslogtreecommitdiff
path: root/src/core/launch_timestamp_cache.cpp
diff options
context:
space:
mode:
authorSssnowyyy <78863999+Sssnowyyy@users.noreply.github.com>2026-11-02 11:29:42 -0500
committerSssnowyyy <78863999+Sssnowyyy@users.noreply.github.com>2026-11-02 14:53:47 -0500
commit0ed4a3a9e795896a4751d0330c78958a309d1aa0 (patch)
tree0bbec5130c05f6cde7b6b1ab7b21c7b38aa4a9f9 /src/core/launch_timestamp_cache.cpp
parent8b0666b74868da8221d9e3ef3995f3a862ee24b6 (diff)
shader: drop the slots of a failed handle subtree with its code
When BuildHandleProgram failed on a subtree it truncated the code back to where the subtree started, which removed the Tee ops of the values the subtree had kept, but their entries stayed in g_handle_slots. A Phi tries its other inputs after the first one fails; if one of them reused a value from the dropped subtree, it emitted a Load of a slot that nothing wrote, so the handle read 0. Number slots with a counter instead of counting map entries, and on failure erase the entries numbered from the subtree's first slot on and rewind the counter, so such a value is built again. Follow-up to 561f87abec. Assisted-by: Claude Sonnet 5.5 (implementation and commit message)
Diffstat (limited to 'src/core/launch_timestamp_cache.cpp')
0 files changed, 0 insertions, 0 deletions