From ba0041a938d8eaf697b28407ad5f471276547657 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B3zef=20Kucia?= Date: Tue, 29 Mar 2016 12:14:55 +0200 Subject: [PATCH] wined3d: Recognize SM5 hs_decls 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 c32d64da29d..1dcb23fb94d 100644 --- a/dlls/wined3d/arb_program_shader.c +++ b/dlls/wined3d/arb_program_shader.c @@ -5273,6 +5273,7 @@ static const SHADER_HANDLER shader_arb_instruction_handler_table[WINED3DSIH_TABL /* WINED3DSIH_FTOI */ NULL, /* WINED3DSIH_FTOU */ NULL, /* WINED3DSIH_GE */ NULL, + /* WINED3DSIH_HS_DECLS */ NULL, /* WINED3DSIH_IADD */ NULL, /* WINED3DSIH_IEQ */ NULL, /* WINED3DSIH_IF */ NULL /* Hardcoded into the shader */, diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c index 2fdcd9ec68c..6f5f70ba0cb 100644 --- a/dlls/wined3d/glsl_shader.c +++ b/dlls/wined3d/glsl_shader.c @@ -8167,6 +8167,7 @@ static const SHADER_HANDLER shader_glsl_instruction_handler_table[WINED3DSIH_TAB /* WINED3DSIH_FTOI */ shader_glsl_to_int, /* WINED3DSIH_FTOU */ shader_glsl_to_uint, /* WINED3DSIH_GE */ shader_glsl_relop, + /* WINED3DSIH_HS_DECLS */ shader_glsl_nop, /* WINED3DSIH_IADD */ shader_glsl_binop, /* WINED3DSIH_IEQ */ shader_glsl_relop, /* WINED3DSIH_IF */ shader_glsl_if, diff --git a/dlls/wined3d/shader.c b/dlls/wined3d/shader.c index 4baa72aa90b..f617bcd9c8a 100644 --- a/dlls/wined3d/shader.c +++ b/dlls/wined3d/shader.c @@ -99,6 +99,7 @@ static const char * const shader_opcode_names[] = /* WINED3DSIH_FTOI */ "ftoi", /* WINED3DSIH_FTOU */ "ftou", /* WINED3DSIH_GE */ "ge", + /* WINED3DSIH_HS_DECLS */ "hs_decls", /* WINED3DSIH_IADD */ "iadd", /* WINED3DSIH_IEQ */ "ieq", /* WINED3DSIH_IF */ "if", diff --git a/dlls/wined3d/shader_sm4.c b/dlls/wined3d/shader_sm4.c index 5c5a2a4b544..502de7c62ce 100644 --- a/dlls/wined3d/shader_sm4.c +++ b/dlls/wined3d/shader_sm4.c @@ -184,6 +184,7 @@ enum wined3d_sm4_opcode WINED3D_SM4_OP_DCL_OUTPUT_SIV = 0x67, WINED3D_SM4_OP_DCL_TEMPS = 0x68, WINED3D_SM4_OP_DCL_GLOBAL_FLAGS = 0x6a, + WINED3D_SM5_OP_HS_DECLS = 0x71, WINED3D_SM5_OP_DERIV_RTX_COARSE = 0x7a, WINED3D_SM5_OP_DERIV_RTX_FINE = 0x7b, WINED3D_SM5_OP_DERIV_RTY_COARSE = 0x7c, @@ -396,6 +397,7 @@ static const struct wined3d_sm4_opcode_info opcode_table[] = {WINED3D_SM4_OP_DCL_OUTPUT_SIV, WINED3DSIH_DCL_OUTPUT_SIV, "", ""}, {WINED3D_SM4_OP_DCL_TEMPS, WINED3DSIH_DCL_TEMPS, "", ""}, {WINED3D_SM4_OP_DCL_GLOBAL_FLAGS, WINED3DSIH_DCL_GLOBAL_FLAGS, "", ""}, + {WINED3D_SM5_OP_HS_DECLS, WINED3DSIH_HS_DECLS, "", ""}, {WINED3D_SM5_OP_DERIV_RTX_COARSE, WINED3DSIH_DSX_COARSE, "f", "f"}, {WINED3D_SM5_OP_DERIV_RTX_FINE, WINED3DSIH_DSX_FINE, "f", "f"}, {WINED3D_SM5_OP_DERIV_RTY_COARSE, WINED3DSIH_DSY_COARSE, "f", "f"}, diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h index 7bb4e094fe7..daa52ab1bc4 100644 --- a/dlls/wined3d/wined3d_private.h +++ b/dlls/wined3d/wined3d_private.h @@ -555,6 +555,7 @@ enum WINED3D_SHADER_INSTRUCTION_HANDLER WINED3DSIH_FTOI, WINED3DSIH_FTOU, WINED3DSIH_GE, + WINED3DSIH_HS_DECLS, WINED3DSIH_IADD, WINED3DSIH_IEQ, WINED3DSIH_IF,