[PATCH 2/6] wined3d: Allow swizzle on vThreadIDInGroupFlattened register.
Józef Kucia
jkucia at codeweavers.com
Sun Feb 26 11:48:00 CST 2017
Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
The following instruction is valid:
ult r[0].xy, cb[0][0].xyxx, vThreadIDInGroupFlattened.xxxx
---
dlls/wined3d/glsl_shader.c | 2 +-
dlls/wined3d/wined3d_private.h | 1 -
2 files changed, 1 insertion(+), 2 deletions(-)
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index 28d1c15..26a6a06 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -2860,7 +2860,7 @@ static void shader_glsl_get_register_name(const struct wined3d_shader_register *
break;
case WINED3DSPR_LOCALTHREADINDEX:
- sprintf(register_name, "int(gl_LocalInvocationIndex)");
+ sprintf(register_name, "ivec2(gl_LocalInvocationIndex, 0)");
break;
case WINED3DSPR_THREADID:
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index 7950011..97550fa 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -3672,7 +3672,6 @@ static inline BOOL shader_is_scalar(const struct wined3d_shader_register *reg)
case WINED3DSPR_LOOP: /* aL */
case WINED3DSPR_PREDICATE: /* p0 */
case WINED3DSPR_PRIMID: /* primID */
- case WINED3DSPR_LOCALTHREADINDEX: /* vThreadIDInGroupFlattened */
return TRUE;
case WINED3DSPR_MISCTYPE:
--
2.10.2
More information about the wine-patches
mailing list