[PATCH vkd3d 5/6] vkd3d-shader: Introduce VKD3D_SHADER_VISIBILITY_COMPUTE.

Józef Kucia joseph.kucia at gmail.com
Mon Oct 29 05:12:17 CDT 2018


From: Józef Kucia <jkucia at codeweavers.com>

Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---

It should be useful when vkd3d-shader is used outside D3D12.

---
 include/private/vkd3d_shader.h | 2 ++
 libs/vkd3d-shader/spirv.c      | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/include/private/vkd3d_shader.h b/include/private/vkd3d_shader.h
index d55ed9f89825..bb137baba95b 100644
--- a/include/private/vkd3d_shader.h
+++ b/include/private/vkd3d_shader.h
@@ -55,6 +55,8 @@ enum vkd3d_shader_visibility
     VKD3D_SHADER_VISIBILITY_GEOMETRY = 4,
     VKD3D_SHADER_VISIBILITY_PIXEL = 5,
 
+    VKD3D_SHADER_VISIBILITY_COMPUTE = 1000000000,
+
     VKD3D_FORCE_32_BIT_ENUM(VKD3D_SHADER_VISIBILITY),
 };
 
diff --git a/libs/vkd3d-shader/spirv.c b/libs/vkd3d-shader/spirv.c
index 79af890a2353..09c6f9f799e4 100644
--- a/libs/vkd3d-shader/spirv.c
+++ b/libs/vkd3d-shader/spirv.c
@@ -2000,6 +2000,8 @@ static bool vkd3d_dxbc_compiler_check_shader_visibility(const struct vkd3d_dxbc_
             return compiler->shader_type == VKD3D_SHADER_TYPE_GEOMETRY;
         case VKD3D_SHADER_VISIBILITY_PIXEL:
             return compiler->shader_type == VKD3D_SHADER_TYPE_PIXEL;
+        case VKD3D_SHADER_VISIBILITY_COMPUTE:
+            return compiler->shader_type == VKD3D_SHADER_TYPE_COMPUTE;
         default:
             ERR("Invalid shader visibility %#x.\n", visibility);
             return false;
-- 
2.18.1




More information about the wine-devel mailing list