[PATCH 04/10] wined3d: Implement SM5 dcl_thread_group instruction.

Guillaume Charifi guillaume.charifi at sfr.fr
Sun Jan 29 07:43:35 CST 2017


Signed-off-by: Guillaume Charifi <guillaume.charifi at sfr.fr>
---
 dlls/wined3d/shader.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/dlls/wined3d/shader.c b/dlls/wined3d/shader.c
index 4c8fe16..bc51bad 100644
--- a/dlls/wined3d/shader.c
+++ b/dlls/wined3d/shader.c
@@ -1026,6 +1026,18 @@ static HRESULT shader_get_registers_used(struct wined3d_shader *shader, const st
         {
             reg_maps->temporary_count = ins.declaration.count;
         }
+        else if (ins.handler_idx == WINED3DSIH_DCL_THREAD_GROUP)
+        {
+            if (shader_version.type == WINED3D_SHADER_TYPE_COMPUTE)
+            {
+                shader->u.cs.local_size_x = ins.declaration.thread_group_size.x;
+                shader->u.cs.local_size_y = ins.declaration.thread_group_size.y;
+                shader->u.cs.local_size_z = ins.declaration.thread_group_size.z;
+            }
+            else
+                FIXME("Invalid instruction %#x for shader type %#x.\n",
+                        ins.handler_idx, shader_version.type);
+        }
         else if (ins.handler_idx == WINED3DSIH_DCL_VERTICES_OUT)
         {
             if (shader_version.type == WINED3D_SHADER_TYPE_GEOMETRY)
-- 
Guillaume Charifi <guillaume.charifi at sfr.fr>




More information about the wine-patches mailing list