From 64ea033c8166187d2e16f7d08ab48f1a9aa2b56e Mon Sep 17 00:00:00 2001 From: Feifan He Date: Tue, 3 Dec 2024 00:41:31 +0800 Subject: [PATCH] vkd3d-shader/msl: Implement VKD3DSIH_LOG. --- libs/vkd3d-shader/msl.c | 3 +++ tests/hlsl/log.shader_test | 6 +++--- tests/hlsl/pow.shader_test | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/libs/vkd3d-shader/msl.c b/libs/vkd3d-shader/msl.c index ede35e98..658aa7a6 100644 --- a/libs/vkd3d-shader/msl.c +++ b/libs/vkd3d-shader/msl.c @@ -609,6 +609,9 @@ static void msl_handle_instruction(struct msl_generator *gen, const struct vkd3d case VKD3DSIH_UTOF: msl_cast(gen, ins, "float"); break; + case VKD3DSIH_LOG: + msl_intrinsic(gen, ins, "log2"); + break; case VKD3DSIH_MOV: msl_mov(gen, ins); break; diff --git a/tests/hlsl/log.shader_test b/tests/hlsl/log.shader_test index 2d0ea412..eaec15e6 100644 --- a/tests/hlsl/log.shader_test +++ b/tests/hlsl/log.shader_test @@ -8,7 +8,7 @@ float4 main() : sv_target [test] uniform 0 float4 2.0 4.0 5.0 0.4 -todo(msl) draw quad +draw quad probe (0, 0) rgba (1.0, 2.0, 2.32192802, -1.32192802) 1 [pixel shader] @@ -21,7 +21,7 @@ float4 main() : sv_target [test] uniform 0 float4 10.0 100.0 1.0 0.1 -todo(msl) draw quad +draw quad probe (0, 0) rgba (1.0, 2.0, 0.0, -1.0) 1 [pixel shader] @@ -34,5 +34,5 @@ float4 main() : sv_target [test] uniform 0 float4 3.0 10.0 1.0 0.1 -todo(msl) draw quad +draw quad probe (0, 0) rgba (1.0986123, 2.302585, 0.0, -2.302585) 2 diff --git a/tests/hlsl/pow.shader_test b/tests/hlsl/pow.shader_test index 726afb6a..41ae0d4f 100644 --- a/tests/hlsl/pow.shader_test +++ b/tests/hlsl/pow.shader_test @@ -8,7 +8,7 @@ float4 main() : sv_target [test] uniform 0 float4 0.4 0.8 2.5 2.0 -todo(msl) draw quad +draw quad probe (0, 0) rgba (0.512, 0.101192884, 0.64, 0.25) 4