diff options
| author | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-10-31 16:03:15 -0400 |
|---|---|---|
| committer | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-10-31 16:03:15 -0400 |
| commit | 77ea16e2f26edb443341a12e8169018fc1fa648e (patch) | |
| tree | e836c97c493643a0efb3e97ece75e46d65e2f30e /src/core/core_timing.cpp | |
| parent | 9dca3ab2e436e786ab53e862e4d515f620a11669 (diff) | |
nx2: drop R2UR's unreachable keep-old-value select when unpredicated
R2UR was lowered as "the value of the first lane in the ballot, else the
uniform register's old value". With no execution predicate the ballot always
holds the executing lane, so the fallback is never taken, but it stayed in the
program as a second source of the result. The texture handle search found it
first: in Switch Sports the uniform register had just held a storage buffer
pointer loaded from the constant buffer, so the scenery's texture handle was
traced to that pointer word instead of to the value the shader moved in.
Write the broadcast value directly when the instruction is unpredicated.
Diffstat (limited to 'src/core/core_timing.cpp')
0 files changed, 0 insertions, 0 deletions
