wined3d: Recognize SM4.1 samplepos opcode.

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-07-15 11:16:21 +02:00 committed by Alexandre Julliard
parent 16076752a6
commit f31994459e
5 changed files with 6 additions and 0 deletions

View File

@ -5360,6 +5360,7 @@ static const SHADER_HANDLER shader_arb_instruction_handler_table[WINED3DSIH_TABL
/* WINED3DSIH_SAMPLE_C_LZ */ NULL, /* WINED3DSIH_SAMPLE_C_LZ */ NULL,
/* WINED3DSIH_SAMPLE_GRAD */ NULL, /* WINED3DSIH_SAMPLE_GRAD */ NULL,
/* WINED3DSIH_SAMPLE_LOD */ NULL, /* WINED3DSIH_SAMPLE_LOD */ NULL,
/* WINED3DSIH_SAMPLE_POS */ NULL,
/* WINED3DSIH_SETP */ NULL, /* WINED3DSIH_SETP */ NULL,
/* WINED3DSIH_SGE */ shader_hw_map2gl, /* WINED3DSIH_SGE */ shader_hw_map2gl,
/* WINED3DSIH_SGN */ shader_hw_sgn, /* WINED3DSIH_SGN */ shader_hw_sgn,

View File

@ -8778,6 +8778,7 @@ static const SHADER_HANDLER shader_glsl_instruction_handler_table[WINED3DSIH_TAB
/* WINED3DSIH_SAMPLE_C_LZ */ shader_glsl_sample_c, /* WINED3DSIH_SAMPLE_C_LZ */ shader_glsl_sample_c,
/* WINED3DSIH_SAMPLE_GRAD */ shader_glsl_sample, /* WINED3DSIH_SAMPLE_GRAD */ shader_glsl_sample,
/* WINED3DSIH_SAMPLE_LOD */ shader_glsl_sample, /* WINED3DSIH_SAMPLE_LOD */ shader_glsl_sample,
/* WINED3DSIH_SAMPLE_POS */ NULL,
/* WINED3DSIH_SETP */ NULL, /* WINED3DSIH_SETP */ NULL,
/* WINED3DSIH_SGE */ shader_glsl_compare, /* WINED3DSIH_SGE */ shader_glsl_compare,
/* WINED3DSIH_SGN */ shader_glsl_sgn, /* WINED3DSIH_SGN */ shader_glsl_sgn,

View File

@ -190,6 +190,7 @@ static const char * const shader_opcode_names[] =
/* WINED3DSIH_SAMPLE_C_LZ */ "sample_c_lz", /* WINED3DSIH_SAMPLE_C_LZ */ "sample_c_lz",
/* WINED3DSIH_SAMPLE_GRAD */ "sample_d", /* WINED3DSIH_SAMPLE_GRAD */ "sample_d",
/* WINED3DSIH_SAMPLE_LOD */ "sample_l", /* WINED3DSIH_SAMPLE_LOD */ "sample_l",
/* WINED3DSIH_SAMPLE_POS */ "sample_pos",
/* WINED3DSIH_SETP */ "setp", /* WINED3DSIH_SETP */ "setp",
/* WINED3DSIH_SGE */ "sge", /* WINED3DSIH_SGE */ "sge",
/* WINED3DSIH_SGN */ "sgn", /* WINED3DSIH_SGN */ "sgn",

View File

@ -205,6 +205,7 @@ enum wined3d_sm4_opcode
WINED3D_SM4_OP_DCL_GLOBAL_FLAGS = 0x6a, WINED3D_SM4_OP_DCL_GLOBAL_FLAGS = 0x6a,
WINED3D_SM4_OP_LOD = 0x6c, WINED3D_SM4_OP_LOD = 0x6c,
WINED3D_SM4_OP_GATHER4 = 0x6d, WINED3D_SM4_OP_GATHER4 = 0x6d,
WINED3D_SM4_OP_SAMPLE_POS = 0x6e,
WINED3D_SM5_OP_HS_DECLS = 0x71, WINED3D_SM5_OP_HS_DECLS = 0x71,
WINED3D_SM5_OP_HS_CONTROL_POINT_PHASE = 0x72, WINED3D_SM5_OP_HS_CONTROL_POINT_PHASE = 0x72,
WINED3D_SM5_OP_HS_FORK_PHASE = 0x73, WINED3D_SM5_OP_HS_FORK_PHASE = 0x73,
@ -804,6 +805,7 @@ static const struct wined3d_sm4_opcode_info opcode_table[] =
shader_sm4_read_dcl_global_flags}, shader_sm4_read_dcl_global_flags},
{WINED3D_SM4_OP_LOD, WINED3DSIH_LOD, "f", "fRS"}, {WINED3D_SM4_OP_LOD, WINED3DSIH_LOD, "f", "fRS"},
{WINED3D_SM4_OP_GATHER4, WINED3DSIH_GATHER4, "u", "fRS"}, {WINED3D_SM4_OP_GATHER4, WINED3DSIH_GATHER4, "u", "fRS"},
{WINED3D_SM4_OP_SAMPLE_POS, WINED3DSIH_SAMPLE_POS, "f", "Ru"},
{WINED3D_SM5_OP_HS_DECLS, WINED3DSIH_HS_DECLS, "", ""}, {WINED3D_SM5_OP_HS_DECLS, WINED3DSIH_HS_DECLS, "", ""},
{WINED3D_SM5_OP_HS_CONTROL_POINT_PHASE, WINED3DSIH_HS_CONTROL_POINT_PHASE, "", ""}, {WINED3D_SM5_OP_HS_CONTROL_POINT_PHASE, WINED3DSIH_HS_CONTROL_POINT_PHASE, "", ""},
{WINED3D_SM5_OP_HS_FORK_PHASE, WINED3DSIH_HS_FORK_PHASE, "", ""}, {WINED3D_SM5_OP_HS_FORK_PHASE, WINED3DSIH_HS_FORK_PHASE, "", ""},

View File

@ -706,6 +706,7 @@ enum WINED3D_SHADER_INSTRUCTION_HANDLER
WINED3DSIH_SAMPLE_C_LZ, WINED3DSIH_SAMPLE_C_LZ,
WINED3DSIH_SAMPLE_GRAD, WINED3DSIH_SAMPLE_GRAD,
WINED3DSIH_SAMPLE_LOD, WINED3DSIH_SAMPLE_LOD,
WINED3DSIH_SAMPLE_POS,
WINED3DSIH_SETP, WINED3DSIH_SETP,
WINED3DSIH_SGE, WINED3DSIH_SGE,
WINED3DSIH_SGN, WINED3DSIH_SGN,