From: Conor McCarthy cmccarthy@codeweavers.com
--- libs/vkd3d-shader/d3d_asm.c | 1 + libs/vkd3d-shader/dxil.c | 4 ++++ libs/vkd3d-shader/vkd3d_shader_private.h | 1 + 3 files changed, 6 insertions(+)
diff --git a/libs/vkd3d-shader/d3d_asm.c b/libs/vkd3d-shader/d3d_asm.c index 6ec7a9c99..caf0e20b4 100644 --- a/libs/vkd3d-shader/d3d_asm.c +++ b/libs/vkd3d-shader/d3d_asm.c @@ -285,6 +285,7 @@ static const char * const shader_opcode_names[] = [VKD3DSIH_SWITCH ] = "switch", [VKD3DSIH_SWITCH_MONOLITHIC ] = "switch", [VKD3DSIH_SYNC ] = "sync", + [VKD3DSIH_TAN ] = "tan", [VKD3DSIH_TEX ] = "texld", [VKD3DSIH_TEXBEM ] = "texbem", [VKD3DSIH_TEXBEML ] = "texbeml", diff --git a/libs/vkd3d-shader/dxil.c b/libs/vkd3d-shader/dxil.c index de311d08a..8a31d03c5 100644 --- a/libs/vkd3d-shader/dxil.c +++ b/libs/vkd3d-shader/dxil.c @@ -333,6 +333,7 @@ enum dx_intrinsic_opcode DX_ISFINITE = 10, DX_COS = 12, DX_SIN = 13, + DX_TAN = 14, DX_EXP = 21, DX_FRC = 22, DX_LOG = 23, @@ -3505,6 +3506,8 @@ static enum vkd3d_shader_opcode map_dx_unary_op(enum dx_intrinsic_opcode op) return VKD3DSIH_ISINF; case DX_ISFINITE: return VKD3DSIH_ISFINITE; + case DX_TAN: + return VKD3DSIH_TAN; case DX_EXP: return VKD3DSIH_EXP; case DX_FRC: @@ -3889,6 +3892,7 @@ static const struct sm6_dx_opcode_info sm6_dx_op_table[] = [DX_SIN ] = {"g", "R", sm6_parser_emit_dx_sincos}, [DX_SQRT ] = {"g", "R", sm6_parser_emit_dx_unary}, [DX_STORE_OUTPUT ] = {"v", "ii8o", sm6_parser_emit_dx_store_output}, + [DX_TAN ] = {"g", "R", sm6_parser_emit_dx_unary}, [DX_UMAX ] = {"m", "RR", sm6_parser_emit_dx_binary}, [DX_UMIN ] = {"m", "RR", sm6_parser_emit_dx_binary}, }; diff --git a/libs/vkd3d-shader/vkd3d_shader_private.h b/libs/vkd3d-shader/vkd3d_shader_private.h index 51daf2153..37095ecae 100644 --- a/libs/vkd3d-shader/vkd3d_shader_private.h +++ b/libs/vkd3d-shader/vkd3d_shader_private.h @@ -479,6 +479,7 @@ enum vkd3d_shader_opcode VKD3DSIH_SWITCH, VKD3DSIH_SWITCH_MONOLITHIC, VKD3DSIH_SYNC, + VKD3DSIH_TAN, VKD3DSIH_TEX, VKD3DSIH_TEXBEM, VKD3DSIH_TEXBEML,