From 463980431f4ddb9616261be94afd1b31bc4af8bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B3zef=20Kucia?= Date: Fri, 25 Mar 2016 19:53:35 +0100 Subject: [PATCH] wined3d: Recognize SM 4.1 ld2dms opcode. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Józef Kucia Signed-off-by: Henri Verbeet Signed-off-by: Alexandre Julliard --- dlls/wined3d/arb_program_shader.c | 1 + dlls/wined3d/glsl_shader.c | 1 + dlls/wined3d/shader.c | 1 + dlls/wined3d/shader_sm4.c | 2 ++ dlls/wined3d/wined3d_private.h | 1 + 5 files changed, 6 insertions(+) diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c index 99c21dbfbec..23219db369e 100644 --- a/dlls/wined3d/arb_program_shader.c +++ b/dlls/wined3d/arb_program_shader.c @@ -5285,6 +5285,7 @@ static const SHADER_HANDLER shader_arb_instruction_handler_table[WINED3DSIH_TABL /* WINED3DSIH_ITOF */ NULL, /* WINED3DSIH_LABEL */ shader_hw_label, /* WINED3DSIH_LD */ NULL, + /* WINED3DSIH_LD2DMS */ NULL, /* WINED3DSIH_LD_STRUCTURED */ NULL, /* WINED3DSIH_LIT */ shader_hw_map2gl, /* WINED3DSIH_LOG */ shader_hw_scalar_op, diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c index e6ef82a61e7..79eec10fc54 100644 --- a/dlls/wined3d/glsl_shader.c +++ b/dlls/wined3d/glsl_shader.c @@ -8171,6 +8171,7 @@ static const SHADER_HANDLER shader_glsl_instruction_handler_table[WINED3DSIH_TAB /* WINED3DSIH_ITOF */ shader_glsl_to_float, /* WINED3DSIH_LABEL */ shader_glsl_label, /* WINED3DSIH_LD */ shader_glsl_ld, + /* WINED3DSIH_LD2DMS */ NULL, /* WINED3DSIH_LD_STRUCTURED */ NULL, /* WINED3DSIH_LIT */ shader_glsl_lit, /* WINED3DSIH_LOG */ shader_glsl_scalar_op, diff --git a/dlls/wined3d/shader.c b/dlls/wined3d/shader.c index db30868d97d..f45fbb8b13d 100644 --- a/dlls/wined3d/shader.c +++ b/dlls/wined3d/shader.c @@ -113,6 +113,7 @@ static const char * const shader_opcode_names[] = /* WINED3DSIH_ITOF */ "itof", /* WINED3DSIH_LABEL */ "label", /* WINED3DSIH_LD */ "ld", + /* WINED3DSIH_LD2DMS */ "ld2dms", /* WINED3DSIH_LD_STRUCTURED */ "ld_structured", /* WINED3DSIH_LIT */ "lit", /* WINED3DSIH_LOG */ "log", diff --git a/dlls/wined3d/shader_sm4.c b/dlls/wined3d/shader_sm4.c index 86c5b1b1b5f..6e1fe5d9e8a 100644 --- a/dlls/wined3d/shader_sm4.c +++ b/dlls/wined3d/shader_sm4.c @@ -135,6 +135,7 @@ enum wined3d_sm4_opcode WINED3D_SM4_OP_ISHL = 0x29, WINED3D_SM4_OP_ITOF = 0x2b, WINED3D_SM4_OP_LD = 0x2d, + WINED3D_SM4_OP_LD2DMS = 0x2e, WINED3D_SM4_OP_LOG = 0x2f, WINED3D_SM4_OP_LOOP = 0x30, WINED3D_SM4_OP_LT = 0x31, @@ -341,6 +342,7 @@ static const struct wined3d_sm4_opcode_info opcode_table[] = {WINED3D_SM4_OP_ISHL, WINED3DSIH_ISHL, "I", "II"}, {WINED3D_SM4_OP_ITOF, WINED3DSIH_ITOF, "F", "I"}, {WINED3D_SM4_OP_LD, WINED3DSIH_LD, "U", "IR"}, + {WINED3D_SM4_OP_LD2DMS, WINED3DSIH_LD2DMS, "U", "IRI"}, {WINED3D_SM4_OP_LOG, WINED3DSIH_LOG, "F", "F"}, {WINED3D_SM4_OP_LOOP, WINED3DSIH_LOOP, "", ""}, {WINED3D_SM4_OP_LT, WINED3DSIH_LT, "U", "FF"}, diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h index 242268d5862..bc301b7d0e7 100644 --- a/dlls/wined3d/wined3d_private.h +++ b/dlls/wined3d/wined3d_private.h @@ -565,6 +565,7 @@ enum WINED3D_SHADER_INSTRUCTION_HANDLER WINED3DSIH_ITOF, WINED3DSIH_LABEL, WINED3DSIH_LD, + WINED3DSIH_LD2DMS, WINED3DSIH_LD_STRUCTURED, WINED3DSIH_LIT, WINED3DSIH_LOG,