Conor McCarthy : vkd3d-shader: Exclude descriptor arrays from combined sampler searches.

Alexandre Julliard julliard at winehq.org
Wed Jul 28 15:35:08 CDT 2021


Module: vkd3d
Branch: master
Commit: 5bebfe264d4e90c3f8fd73dddee49843b207a039
URL:    https://source.winehq.org/git/vkd3d.git/?a=commit;h=5bebfe264d4e90c3f8fd73dddee49843b207a039

Author: Conor McCarthy <cmccarthy at codeweavers.com>
Date:   Tue Jul 27 23:39:58 2021 +1000

vkd3d-shader: Exclude descriptor arrays from combined sampler searches.

Signed-off-by: Conor McCarthy <cmccarthy at codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 libs/vkd3d-shader/spirv.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/libs/vkd3d-shader/spirv.c b/libs/vkd3d-shader/spirv.c
index 23d1fcc..584f7c1 100644
--- a/libs/vkd3d-shader/spirv.c
+++ b/libs/vkd3d-shader/spirv.c
@@ -2457,7 +2457,10 @@ static bool vkd3d_dxbc_compiler_has_combined_sampler(const struct vkd3d_dxbc_com
     if (!shader_interface->combined_sampler_count)
         return false;
 
-    if (resource && resource->reg.reg.type == VKD3DSPR_UAV)
+    if (resource && (resource->reg.reg.type == VKD3DSPR_UAV || resource->range.last != resource->range.first))
+        return false;
+
+    if (sampler && sampler->range.first != sampler->range.last)
         return false;
 
     for (i = 0; i < shader_interface->combined_sampler_count; ++i)




More information about the wine-cvs mailing list