Module: wine Branch: master Commit: a9e3058426696fb4372f1f6314b9fbf1299610d9 URL: http://source.winehq.org/git/wine.git/?a=commit;h=a9e3058426696fb4372f1f6314...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Wed Oct 13 12:26:30 2010 +0200
wined3d: Recognize the SM4 ftoi opcode.
---
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(+), 0 deletions(-)
diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c index e1f4be5..a36a1e4 100644 --- a/dlls/wined3d/arb_program_shader.c +++ b/dlls/wined3d/arb_program_shader.c @@ -4963,6 +4963,7 @@ static const SHADER_HANDLER shader_arb_instruction_handler_table[WINED3DSIH_TABL /* WINED3DSIH_EXP */ shader_hw_scalar_op, /* WINED3DSIH_EXPP */ shader_hw_scalar_op, /* WINED3DSIH_FRC */ shader_hw_map2gl, + /* WINED3DSIH_FTOI */ NULL, /* WINED3DSIH_IADD */ NULL, /* WINED3DSIH_IF */ NULL /* Hardcoded into the shader */, /* WINED3DSIH_IFC */ shader_hw_ifc, diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c index 62a4f7b..305f251 100644 --- a/dlls/wined3d/glsl_shader.c +++ b/dlls/wined3d/glsl_shader.c @@ -5021,6 +5021,7 @@ static const SHADER_HANDLER shader_glsl_instruction_handler_table[WINED3DSIH_TAB /* WINED3DSIH_EXP */ shader_glsl_map2gl, /* WINED3DSIH_EXPP */ shader_glsl_expp, /* WINED3DSIH_FRC */ shader_glsl_map2gl, + /* WINED3DSIH_FTOI */ NULL, /* WINED3DSIH_IADD */ NULL, /* WINED3DSIH_IF */ shader_glsl_if, /* WINED3DSIH_IFC */ shader_glsl_ifc, diff --git a/dlls/wined3d/shader.c b/dlls/wined3d/shader.c index 096fc13..c671920 100644 --- a/dlls/wined3d/shader.c +++ b/dlls/wined3d/shader.c @@ -67,6 +67,7 @@ static const char * const shader_opcode_names[] = /* WINED3DSIH_EXP */ "exp", /* WINED3DSIH_EXPP */ "expp", /* WINED3DSIH_FRC */ "frc", + /* WINED3DSIH_FTOI */ "ftoi", /* WINED3DSIH_IADD */ "iadd", /* WINED3DSIH_IF */ "if", /* WINED3DSIH_IFC */ "ifc", diff --git a/dlls/wined3d/shader_sm4.c b/dlls/wined3d/shader_sm4.c index c0a8292..d3fb74f 100644 --- a/dlls/wined3d/shader_sm4.c +++ b/dlls/wined3d/shader_sm4.c @@ -65,6 +65,7 @@ enum wined3d_sm4_opcode WINED3D_SM4_OP_ENDLOOP = 0x16, WINED3D_SM4_OP_EXP = 0x19, WINED3D_SM4_OP_FRC = 0x1a, + WINED3D_SM4_OP_FTOI = 0x1b, WINED3D_SM4_OP_IADD = 0x1e, WINED3D_SM4_OP_IF = 0x1f, WINED3D_SM4_OP_IGE = 0x21, @@ -141,6 +142,7 @@ static const struct wined3d_sm4_opcode_info opcode_table[] = {WINED3D_SM4_OP_ENDLOOP, WINED3DSIH_ENDLOOP, 0, 0}, {WINED3D_SM4_OP_EXP, WINED3DSIH_EXP, 1, 1}, {WINED3D_SM4_OP_FRC, WINED3DSIH_FRC, 1, 1}, + {WINED3D_SM4_OP_FTOI, WINED3DSIH_FTOI, 1, 1}, {WINED3D_SM4_OP_IADD, WINED3DSIH_IADD, 1, 2}, {WINED3D_SM4_OP_IF, WINED3DSIH_IF, 0, 1}, {WINED3D_SM4_OP_IGE, WINED3DSIH_IGE, 1, 2}, diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h index 13526f8..1a3841b 100644 --- a/dlls/wined3d/wined3d_private.h +++ b/dlls/wined3d/wined3d_private.h @@ -436,6 +436,7 @@ enum WINED3D_SHADER_INSTRUCTION_HANDLER WINED3DSIH_EXP, WINED3DSIH_EXPP, WINED3DSIH_FRC, + WINED3DSIH_FTOI, WINED3DSIH_IADD, WINED3DSIH_IF, WINED3DSIH_IFC,