wined3d: Implement SM5 countbits instruction.
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:
parent
9dbfe8b5af
commit
8aed050396
|
@ -5040,6 +5040,7 @@ static const SHADER_HANDLER shader_arb_instruction_handler_table[WINED3DSIH_TABL
|
|||
/* WINED3DSIH_CMP */ pshader_hw_cmp,
|
||||
/* WINED3DSIH_CND */ pshader_hw_cnd,
|
||||
/* WINED3DSIH_CONTINUE */ NULL,
|
||||
/* WINED3DSIH_COUNTBITS */ NULL,
|
||||
/* WINED3DSIH_CRS */ shader_hw_map2gl,
|
||||
/* WINED3DSIH_CUT */ NULL,
|
||||
/* WINED3DSIH_CUT_STREAM */ NULL,
|
||||
|
|
|
@ -3724,6 +3724,7 @@ static void shader_glsl_map2gl(const struct wined3d_shader_instruction *ins)
|
|||
{
|
||||
case WINED3DSIH_ABS: instruction = "abs"; break;
|
||||
case WINED3DSIH_BFREV: instruction = "bitfieldReverse"; break;
|
||||
case WINED3DSIH_COUNTBITS: instruction = "bitCount"; break;
|
||||
case WINED3DSIH_DSX: instruction = "dFdx"; break;
|
||||
case WINED3DSIH_DSX_COARSE: instruction = "dFdxCoarse"; break;
|
||||
case WINED3DSIH_DSX_FINE: instruction = "dFdxFine"; break;
|
||||
|
@ -8893,6 +8894,7 @@ static const SHADER_HANDLER shader_glsl_instruction_handler_table[WINED3DSIH_TAB
|
|||
/* WINED3DSIH_CMP */ shader_glsl_conditional_move,
|
||||
/* WINED3DSIH_CND */ shader_glsl_cnd,
|
||||
/* WINED3DSIH_CONTINUE */ shader_glsl_continue,
|
||||
/* WINED3DSIH_COUNTBITS */ shader_glsl_map2gl,
|
||||
/* WINED3DSIH_CRS */ shader_glsl_cross,
|
||||
/* WINED3DSIH_CUT */ shader_glsl_cut,
|
||||
/* WINED3DSIH_CUT_STREAM */ shader_glsl_cut,
|
||||
|
|
|
@ -65,6 +65,7 @@ static const char * const shader_opcode_names[] =
|
|||
/* WINED3DSIH_CMP */ "cmp",
|
||||
/* WINED3DSIH_CND */ "cnd",
|
||||
/* WINED3DSIH_CONTINUE */ "continue",
|
||||
/* WINED3DSIH_COUNTBITS */ "countbits",
|
||||
/* WINED3DSIH_CRS */ "crs",
|
||||
/* WINED3DSIH_CUT */ "cut",
|
||||
/* WINED3DSIH_CUT_STREAM */ "cut_stream",
|
||||
|
|
|
@ -233,6 +233,7 @@ enum wined3d_sm4_opcode
|
|||
WINED3D_SM5_OP_RCP = 0x81,
|
||||
WINED3D_SM5_OP_F32TOF16 = 0x82,
|
||||
WINED3D_SM5_OP_F16TOF32 = 0x83,
|
||||
WINED3D_SM5_OP_COUNTBITS = 0x86,
|
||||
WINED3D_SM5_OP_UBFE = 0x8a,
|
||||
WINED3D_SM5_OP_BFI = 0x8c,
|
||||
WINED3D_SM5_OP_BFREV = 0x8d,
|
||||
|
@ -926,6 +927,7 @@ static const struct wined3d_sm4_opcode_info opcode_table[] =
|
|||
{WINED3D_SM5_OP_RCP, WINED3DSIH_RCP, "f", "f"},
|
||||
{WINED3D_SM5_OP_F32TOF16, WINED3DSIH_F32TOF16, "u", "f"},
|
||||
{WINED3D_SM5_OP_F16TOF32, WINED3DSIH_F16TOF32, "f", "u"},
|
||||
{WINED3D_SM5_OP_COUNTBITS, WINED3DSIH_COUNTBITS, "u", "u"},
|
||||
{WINED3D_SM5_OP_UBFE, WINED3DSIH_UBFE, "u", "iiu"},
|
||||
{WINED3D_SM5_OP_BFI, WINED3DSIH_BFI, "u", "iiuu"},
|
||||
{WINED3D_SM5_OP_BFREV, WINED3DSIH_BFREV, "u", "u"},
|
||||
|
|
|
@ -595,6 +595,7 @@ enum WINED3D_SHADER_INSTRUCTION_HANDLER
|
|||
WINED3DSIH_CMP,
|
||||
WINED3DSIH_CND,
|
||||
WINED3DSIH_CONTINUE,
|
||||
WINED3DSIH_COUNTBITS,
|
||||
WINED3DSIH_CRS,
|
||||
WINED3DSIH_CUT,
|
||||
WINED3DSIH_CUT_STREAM,
|
||||
|
|
Loading…
Reference in New Issue