Commit 0677a67c authored by Henri Verbeet's avatar Henri Verbeet Committed by Alexandre Julliard

wined3d: Recognize the SM4 NULL register type.

parent 7c7205d9
...@@ -1018,6 +1018,10 @@ static void shader_dump_register(const struct wined3d_shader_register *reg, ...@@ -1018,6 +1018,10 @@ static void shader_dump_register(const struct wined3d_shader_register *reg,
TRACE("cb"); TRACE("cb");
break; break;
case WINED3DSPR_NULL:
TRACE("null");
break;
default: default:
TRACE("unhandled_rtype(%#x)", reg->type); TRACE("unhandled_rtype(%#x)", reg->type);
break; break;
...@@ -1044,7 +1048,9 @@ static void shader_dump_register(const struct wined3d_shader_register *reg, ...@@ -1044,7 +1048,9 @@ static void shader_dump_register(const struct wined3d_shader_register *reg,
} }
TRACE(")"); TRACE(")");
} }
else if (reg->type != WINED3DSPR_RASTOUT && reg->type != WINED3DSPR_MISCTYPE) else if (reg->type != WINED3DSPR_RASTOUT
&& reg->type != WINED3DSPR_MISCTYPE
&& reg->type != WINED3DSPR_NULL)
{ {
if (reg->array_idx != ~0U) if (reg->array_idx != ~0U)
{ {
...@@ -1077,7 +1083,7 @@ void shader_dump_dst_param(const struct wined3d_shader_dst_param *param, ...@@ -1077,7 +1083,7 @@ void shader_dump_dst_param(const struct wined3d_shader_dst_param *param,
shader_dump_register(&param->reg, shader_version); shader_dump_register(&param->reg, shader_version);
if (write_mask != WINED3DSP_WRITEMASK_ALL) if (write_mask && write_mask != WINED3DSP_WRITEMASK_ALL)
{ {
static const char *write_mask_chars = "xyzw"; static const char *write_mask_chars = "xyzw";
......
...@@ -84,6 +84,7 @@ enum wined3d_sm4_register_type ...@@ -84,6 +84,7 @@ enum wined3d_sm4_register_type
WINED3D_SM4_RT_OUTPUT = 0x2, WINED3D_SM4_RT_OUTPUT = 0x2,
WINED3D_SM4_RT_IMMCONST = 0x4, WINED3D_SM4_RT_IMMCONST = 0x4,
WINED3D_SM4_RT_CONSTBUFFER = 0x8, WINED3D_SM4_RT_CONSTBUFFER = 0x8,
WINED3D_SM4_RT_NULL = 0xd,
}; };
enum wined3d_sm4_immconst_type enum wined3d_sm4_immconst_type
...@@ -156,6 +157,11 @@ static const WINED3DSHADER_PARAM_REGISTER_TYPE register_type_table[] = ...@@ -156,6 +157,11 @@ static const WINED3DSHADER_PARAM_REGISTER_TYPE register_type_table[] =
/* UNKNOWN */ 0, /* UNKNOWN */ 0,
/* UNKNOWN */ 0, /* UNKNOWN */ 0,
/* WINED3D_SM4_RT_CONSTBUFFER */ WINED3DSPR_CONSTBUFFER, /* WINED3D_SM4_RT_CONSTBUFFER */ WINED3DSPR_CONSTBUFFER,
/* UNKNOWN */ 0,
/* UNKNOWN */ 0,
/* UNKNOWN */ 0,
/* UNKNOWN */ 0,
/* WINED3D_SM4_RT_NULL */ WINED3DSPR_NULL,
}; };
static const struct sysval_map sysval_map[] = static const struct sysval_map sysval_map[] =
......
...@@ -308,6 +308,7 @@ typedef enum _WINED3DSHADER_PARAM_REGISTER_TYPE ...@@ -308,6 +308,7 @@ typedef enum _WINED3DSHADER_PARAM_REGISTER_TYPE
WINED3DSPR_PREDICATE = 19, WINED3DSPR_PREDICATE = 19,
WINED3DSPR_IMMCONST, WINED3DSPR_IMMCONST,
WINED3DSPR_CONSTBUFFER, WINED3DSPR_CONSTBUFFER,
WINED3DSPR_NULL,
} WINED3DSHADER_PARAM_REGISTER_TYPE; } WINED3DSHADER_PARAM_REGISTER_TYPE;
enum wined3d_immconst_type enum wined3d_immconst_type
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment