diff --git a/libs/vkd3d-shader/msl.c b/libs/vkd3d-shader/msl.c index f7d703e1b..aa8abeefb 100644 --- a/libs/vkd3d-shader/msl.c +++ b/libs/vkd3d-shader/msl.c @@ -1562,6 +1562,9 @@ static void msl_handle_instruction(struct msl_generator *gen, const struct vkd3d case VSIR_OP_HSIN: msl_intrinsic(gen, ins, "sinh"); break; + case VSIR_OP_HTAN: + msl_intrinsic(gen, ins, "tanh"); + break; case VSIR_OP_IF: msl_if(gen, ins); break; diff --git a/tests/hlsl/trigonometry.shader_test b/tests/hlsl/trigonometry.shader_test index 7aad2e4d6..2710ed88d 100644 --- a/tests/hlsl/trigonometry.shader_test +++ b/tests/hlsl/trigonometry.shader_test @@ -114,12 +114,11 @@ float4 main() : sv_target [test] uniform 0 float4 -1.57079633 -0.54930614 0.54930614 1.57079633 -todo(msl & sm>=6) draw quad +draw quad probe (0, 0) f32(-0.91715234, -0.5, 0.5, 0.91715234) 64 uniform 0 float4 -10.0 -0.0 0.0 10.0 -todo(msl & sm>=6) draw quad -probe (0, 0) rgba (-1.0, 0.0, 0.0, 1.0) 1 - +draw quad +probe (0, 0) f32(-1.0, 0.0, 0.0, 1.0) 1 [pixel shader] uniform float4 a;