wined3d: Implement SM4 ult instruction.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Józef Kucia 2016-04-04 11:26:36 +02:00 committed by Alexandre Julliard
parent 992f3add3a
commit e8e27b1a25
5 changed files with 8 additions and 0 deletions

View File

@ -5375,6 +5375,7 @@ static const SHADER_HANDLER shader_arb_instruction_handler_table[WINED3DSIH_TABL
/* WINED3DSIH_TEXREG2RGB */ pshader_hw_texreg2rgb,
/* WINED3DSIH_UDIV */ NULL,
/* WINED3DSIH_UGE */ NULL,
/* WINED3DSIH_ULT */ NULL,
/* WINED3DSIH_USHR */ NULL,
/* WINED3DSIH_UTOF */ NULL,
/* WINED3DSIH_XOR */ NULL,

View File

@ -3048,6 +3048,7 @@ static void shader_glsl_relop(const struct wined3d_shader_instruction *ins)
case WINED3DSIH_UGE: op = "greaterThanEqual"; break;
case WINED3DSIH_LT: op = "lessThan"; break;
case WINED3DSIH_ILT: op = "lessThan"; break;
case WINED3DSIH_ULT: op = "lessThan"; break;
case WINED3DSIH_NE: op = "notEqual"; break;
case WINED3DSIH_INE: op = "notEqual"; break;
default:
@ -3070,6 +3071,7 @@ static void shader_glsl_relop(const struct wined3d_shader_instruction *ins)
case WINED3DSIH_UGE: op = ">="; break;
case WINED3DSIH_LT: op = "<"; break;
case WINED3DSIH_ILT: op = "<"; break;
case WINED3DSIH_ULT: op = "<"; break;
case WINED3DSIH_NE: op = "!="; break;
case WINED3DSIH_INE: op = "!="; break;
default:
@ -8293,6 +8295,7 @@ static const SHADER_HANDLER shader_glsl_instruction_handler_table[WINED3DSIH_TAB
/* WINED3DSIH_TEXREG2RGB */ shader_glsl_texreg2rgb,
/* WINED3DSIH_UDIV */ shader_glsl_udiv,
/* WINED3DSIH_UGE */ shader_glsl_relop,
/* WINED3DSIH_ULT */ shader_glsl_relop,
/* WINED3DSIH_USHR */ shader_glsl_binop,
/* WINED3DSIH_UTOF */ shader_glsl_to_float,
/* WINED3DSIH_XOR */ shader_glsl_binop,

View File

@ -199,6 +199,7 @@ static const char * const shader_opcode_names[] =
/* WINED3DSIH_TEXREG2RGB */ "texreg2rgb",
/* WINED3DSIH_UDIV */ "udiv",
/* WINED3DSIH_UGE */ "uge",
/* WINED3DSIH_ULT */ "ult",
/* WINED3DSIH_USHR */ "ushr",
/* WINED3DSIH_UTOF */ "utof",
/* WINED3DSIH_XOR */ "xor",

View File

@ -170,6 +170,7 @@ enum wined3d_sm4_opcode
WINED3D_SM4_OP_SQRT = 0x4b,
WINED3D_SM4_OP_SINCOS = 0x4d,
WINED3D_SM4_OP_UDIV = 0x4e,
WINED3D_SM4_OP_ULT = 0x4f,
WINED3D_SM4_OP_UGE = 0x50,
WINED3D_SM4_OP_USHR = 0x55,
WINED3D_SM4_OP_UTOF = 0x56,
@ -668,6 +669,7 @@ static const struct wined3d_sm4_opcode_info opcode_table[] =
{WINED3D_SM4_OP_SQRT, WINED3DSIH_SQRT, "f", "f"},
{WINED3D_SM4_OP_SINCOS, WINED3DSIH_SINCOS, "ff", "f"},
{WINED3D_SM4_OP_UDIV, WINED3DSIH_UDIV, "uu", "uu"},
{WINED3D_SM4_OP_ULT, WINED3DSIH_ULT, "u", "uu"},
{WINED3D_SM4_OP_UGE, WINED3DSIH_UGE, "u", "uu"},
{WINED3D_SM4_OP_USHR, WINED3DSIH_USHR, "u", "uu"},
{WINED3D_SM4_OP_UTOF, WINED3DSIH_UTOF, "f", "u"},

View File

@ -685,6 +685,7 @@ enum WINED3D_SHADER_INSTRUCTION_HANDLER
WINED3DSIH_TEXREG2RGB,
WINED3DSIH_UDIV,
WINED3DSIH_UGE,
WINED3DSIH_ULT,
WINED3DSIH_USHR,
WINED3DSIH_UTOF,
WINED3DSIH_XOR,