Module: wine Branch: master Commit: eab16f13109ec2ac4566705773b45185559212fa URL: http://source.winehq.org/git/wine.git/?a=commit;h=eab16f13109ec2ac4566705773...
Author: Józef Kucia jkucia@codeweavers.com Date: Tue Jul 5 11:46:52 2016 +0200
wined3d: Recognize SM5 swapc 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
---
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 cd016e3..6b53eba 100644 --- a/dlls/wined3d/arb_program_shader.c +++ b/dlls/wined3d/arb_program_shader.c @@ -5367,6 +5367,7 @@ static const SHADER_HANDLER shader_arb_instruction_handler_table[WINED3DSIH_TABL /* WINED3DSIH_STORE_STRUCTURED */ NULL, /* WINED3DSIH_STORE_UAV_TYPED */ NULL, /* WINED3DSIH_SUB */ shader_hw_map2gl, + /* WINED3DSIH_SWAPC */ NULL, /* WINED3DSIH_SWITCH */ NULL, /* WINED3DSIH_TEX */ pshader_hw_tex, /* WINED3DSIH_TEXBEM */ pshader_hw_texbem, diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c index e0aeed8..ced7561 100644 --- a/dlls/wined3d/glsl_shader.c +++ b/dlls/wined3d/glsl_shader.c @@ -8719,6 +8719,7 @@ static const SHADER_HANDLER shader_glsl_instruction_handler_table[WINED3DSIH_TAB /* WINED3DSIH_STORE_STRUCTURED */ NULL, /* WINED3DSIH_STORE_UAV_TYPED */ NULL, /* WINED3DSIH_SUB */ shader_glsl_binop, + /* WINED3DSIH_SWAPC */ NULL, /* WINED3DSIH_SWITCH */ shader_glsl_switch, /* WINED3DSIH_TEX */ shader_glsl_tex, /* WINED3DSIH_TEXBEM */ shader_glsl_texbem, diff --git a/dlls/wined3d/shader.c b/dlls/wined3d/shader.c index a520744..cd52ad6 100644 --- a/dlls/wined3d/shader.c +++ b/dlls/wined3d/shader.c @@ -197,6 +197,7 @@ static const char * const shader_opcode_names[] = /* WINED3DSIH_STORE_STRUCTURED */ "store_structured", /* WINED3DSIH_STORE_UAV_TYPED */ "store_uav_typed", /* WINED3DSIH_SUB */ "sub", + /* WINED3DSIH_SWAPC */ "swapc", /* WINED3DSIH_SWITCH */ "switch", /* WINED3DSIH_TEX */ "texld", /* WINED3DSIH_TEXBEM */ "texbem", diff --git a/dlls/wined3d/shader_sm4.c b/dlls/wined3d/shader_sm4.c index 22012c7..7f15a82 100644 --- a/dlls/wined3d/shader_sm4.c +++ b/dlls/wined3d/shader_sm4.c @@ -215,6 +215,7 @@ enum wined3d_sm4_opcode WINED3D_SM5_OP_DERIV_RTY_FINE = 0x7d, WINED3D_SM5_OP_GATHER4_C = 0x7e, WINED3D_SM5_OP_BFI = 0x8c, + WINED3D_SM5_OP_SWAPC = 0x8e, WINED3D_SM5_OP_DCL_STREAM = 0x8f, WINED3D_SM5_OP_DCL_INPUT_CONTROL_POINT_COUNT = 0x93, WINED3D_SM5_OP_DCL_OUTPUT_CONTROL_POINT_COUNT = 0x94, @@ -808,6 +809,7 @@ static const struct wined3d_sm4_opcode_info opcode_table[] = {WINED3D_SM5_OP_DERIV_RTY_FINE, WINED3DSIH_DSY_FINE, "f", "f"}, {WINED3D_SM5_OP_GATHER4_C, WINED3DSIH_GATHER4_C, "f", "fRSf"}, {WINED3D_SM5_OP_BFI, WINED3DSIH_BFI, "u", "uuuu"}, + {WINED3D_SM5_OP_SWAPC, WINED3DSIH_SWAPC, "ff", "uff"}, {WINED3D_SM5_OP_DCL_STREAM, WINED3DSIH_DCL_STREAM, "", "f"}, {WINED3D_SM5_OP_DCL_INPUT_CONTROL_POINT_COUNT, WINED3DSIH_DCL_INPUT_CONTROL_POINT_COUNT, "", "", shader_sm5_read_control_point_count}, diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h index 6a3df61..1e0bb2f 100644 --- a/dlls/wined3d/wined3d_private.h +++ b/dlls/wined3d/wined3d_private.h @@ -713,6 +713,7 @@ enum WINED3D_SHADER_INSTRUCTION_HANDLER WINED3DSIH_STORE_STRUCTURED, WINED3DSIH_STORE_UAV_TYPED, WINED3DSIH_SUB, + WINED3DSIH_SWAPC, WINED3DSIH_SWITCH, WINED3DSIH_TEX, WINED3DSIH_TEXBEM,