[PATCH 06/10] wined3d: Add FIXMEs for unhandled sysval semantics.

Józef Kucia jkucia at codeweavers.com
Wed Jul 27 16:33:44 CDT 2016


Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
 dlls/wined3d/glsl_shader.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index 498c41c..ece9b72 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -1784,6 +1784,8 @@ static void shader_glsl_declare_generic_vertex_attribute(struct wined3d_string_b
                 index);
         return;
     }
+    if (e->sysval_semantic)
+        FIXME("Unhandled sysval semantic %#x.\n", e->sysval_semantic);
 
     if (shader_glsl_use_explicit_attrib_location(gl_info))
         shader_addline(buffer, "layout(location = %u) ", index);
@@ -5306,18 +5308,28 @@ static void shader_glsl_input_pack(const struct wined3d_shader *shader, struct w
         if (args->vp_mode == vertexshader)
         {
             if (input->sysval_semantic == WINED3D_SV_POSITION && !semantic_idx)
+            {
                 shader_addline(buffer, "ps_in[%u]%s = vpos%s;\n",
                         shader->u.ps.input_reg_map[input->register_idx], reg_mask, reg_mask);
+            }
             else if (args->pointsprite && shader_match_semantic(semantic_name, WINED3D_DECL_USAGE_TEXCOORD))
+            {
                 shader_addline(buffer, "ps_in[%u] = vec4(gl_PointCoord.xy, 0.0, 0.0);\n", input->register_idx);
+            }
             else if (input->sysval_semantic == WINED3D_SV_IS_FRONT_FACE)
+            {
                 shader_addline(buffer, "ps_in[%u] = vec4("
                         "uintBitsToFloat(gl_FrontFacing ? 0xffffffffu : 0u), 0.0, 0.0, 0.0);\n",
                         input->register_idx);
+            }
             else
+            {
+                if (input->sysval_semantic)
+                    FIXME("Unhandled sysval semantic %#x.\n", input->sysval_semantic);
                 shader_addline(buffer, "ps_in[%u]%s = ps_link[%u]%s;\n",
                         shader->u.ps.input_reg_map[input->register_idx], reg_mask,
                         shader->u.ps.input_reg_map[input->register_idx], reg_mask);
+            }
         }
         else if (shader_match_semantic(semantic_name, WINED3D_DECL_USAGE_TEXCOORD))
         {
@@ -5595,6 +5607,10 @@ static void shader_glsl_setup_sm3_rasterizer_input(struct shader_glsl_priv *priv
             shader_addline(buffer, "gl_PointSize = clamp(shader_out[%u].%c, "
                     "ffp_point.size_min, ffp_point.size_max);\n", output->register_idx, reg_mask[1]);
         }
+        else if (output->sysval_semantic)
+        {
+            FIXME("Unhandled sysval semantic %#x.\n", output->sysval_semantic);
+        }
     }
 
     /* Then, setup the pixel shader input. */
-- 
2.7.3




More information about the wine-patches mailing list