wined3d: Recognize the SM4 constant buffer register type.

This commit is contained in:
Henri Verbeet 2009-07-16 13:08:22 +02:00 committed by Alexandre Julliard
parent c4f8845bc9
commit d6ffe00cd2
3 changed files with 19 additions and 9 deletions

View File

@ -928,6 +928,10 @@ static void shader_dump_register(const struct wined3d_shader_register *reg,
TRACE("l");
break;
case WINED3DSPR_CONSTBUFFER:
TRACE("cb");
break;
default:
TRACE("unhandled_rtype(%#x)", reg->type);
break;

View File

@ -58,10 +58,11 @@ enum wined3d_sm4_opcode
enum wined3d_sm4_register_type
{
WINED3D_SM4_RT_TEMP = 0x0,
WINED3D_SM4_RT_INPUT = 0x1,
WINED3D_SM4_RT_OUTPUT = 0x2,
WINED3D_SM4_RT_IMMCONST = 0x4,
WINED3D_SM4_RT_TEMP = 0x0,
WINED3D_SM4_RT_INPUT = 0x1,
WINED3D_SM4_RT_OUTPUT = 0x2,
WINED3D_SM4_RT_IMMCONST = 0x4,
WINED3D_SM4_RT_CONSTBUFFER = 0x8,
};
enum wined3d_sm4_immconst_type
@ -104,11 +105,15 @@ static const struct wined3d_sm4_opcode_info opcode_table[] =
static const WINED3DSHADER_PARAM_REGISTER_TYPE register_type_table[] =
{
/* WINED3D_SM4_RT_TEMP */ WINED3DSPR_TEMP,
/* WINED3D_SM4_RT_INPUT */ WINED3DSPR_INPUT,
/* WINED3D_SM4_RT_OUTPUT */ WINED3DSPR_OUTPUT,
/* UNKNOWN */ 0,
/* WINED3D_SM4_RT_IMMCONST */ WINED3DSPR_IMMCONST,
/* WINED3D_SM4_RT_TEMP */ WINED3DSPR_TEMP,
/* WINED3D_SM4_RT_INPUT */ WINED3DSPR_INPUT,
/* WINED3D_SM4_RT_OUTPUT */ WINED3DSPR_OUTPUT,
/* UNKNOWN */ 0,
/* WINED3D_SM4_RT_IMMCONST */ WINED3DSPR_IMMCONST,
/* UNKNOWN */ 0,
/* UNKNOWN */ 0,
/* UNKNOWN */ 0,
/* WINED3D_SM4_RT_CONSTBUFFER */ WINED3DSPR_CONSTBUFFER,
};
static const struct sysval_map sysval_map[] =

View File

@ -325,6 +325,7 @@ typedef enum _WINED3DSHADER_PARAM_REGISTER_TYPE
WINED3DSPR_LABEL = 18,
WINED3DSPR_PREDICATE = 19,
WINED3DSPR_IMMCONST,
WINED3DSPR_CONSTBUFFER,
} WINED3DSHADER_PARAM_REGISTER_TYPE;
enum wined3d_immconst_type