|
e72cc71b
|
2024-12-13T11:59:29
|
|
Vulkan: Remove framebuffer fetch from shader if unused
Some application shaders may use `inout` variables to simplify shader
generation (presumably), but in the end don't actually ever read from
those variables.
This change tries to detect some very simple but common cases where it's
clear that the shader completely overwrites the variable without reading
from it and turns `inout` into `out`. When coherent framebuffer fetch
emulation kicks in, these shaders would no longer cause unnecessary
barriers.
Bug: angleproject:377923479
Change-Id: I0970b72f551b24409337a375cf97aa63bb511fb5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6094425
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
|