This is a bit fragile. The algorithm is essentially: - Let the driver track state for non-dual-bound resources. - For resources that are dual-bound as SSBO/image and a second bind point, assume they're being used as UAVs. - When a MemoryBarrier is issued, dirty all destination bind points so they re-assert their state, and if the destination is not UAV, temporarily suppress UAV state re-assertion. Reviewed-by: Sil Vilerino <sivileri@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14342>