summaryrefslogtreecommitdiff
path: root/source/slang
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2024-10-31 21:41:12 -0700
committerGitHub <noreply@github.com>2024-10-31 21:41:12 -0700
commit07e45addf4151844f3f43b989024c69f8082b492 (patch)
treed9c19ed38ab9bd0700fc526f86164f8cd7d9e978 /source/slang
parent582d10d5e160afeac11b2ba5a5ba1698e4935cef (diff)
Add `lerp` for wgsl. (#5472)
Diffstat (limited to 'source/slang')
-rw-r--r--source/slang/hlsl.meta.slang5
1 files changed, 2 insertions, 3 deletions
diff --git a/source/slang/hlsl.meta.slang b/source/slang/hlsl.meta.slang
index 747446bbd..525b666ab 100644
--- a/source/slang/hlsl.meta.slang
+++ b/source/slang/hlsl.meta.slang
@@ -9616,12 +9616,12 @@ T length(T x)
/// @category math
__generic<T : __BuiltinFloatingPointType>
[__readNone]
-[require(cpp_cuda_glsl_hlsl_metal_spirv, sm_4_0_version)]
T lerp(T x, T y, T s)
{
__target_switch
{
case glsl: __intrinsic_asm "mix";
+ case wgsl: __intrinsic_asm "mix";
case metal: __intrinsic_asm "mix";
case hlsl: __intrinsic_asm "lerp";
case spirv: return spirv_asm {
@@ -9634,12 +9634,12 @@ T lerp(T x, T y, T s)
__generic<T : __BuiltinFloatingPointType, let N : int>
[__readNone]
-[require(cpp_cuda_glsl_hlsl_metal_spirv, sm_4_0_version)]
vector<T, N> lerp(vector<T, N> x, vector<T, N> y, vector<T, N> s)
{
__target_switch
{
case glsl: __intrinsic_asm "mix";
+ case wgsl: __intrinsic_asm "mix";
case metal: __intrinsic_asm "mix";
case hlsl: __intrinsic_asm "lerp";
case spirv: return spirv_asm {
@@ -9652,7 +9652,6 @@ vector<T, N> lerp(vector<T, N> x, vector<T, N> y, vector<T, N> s)
__generic<T : __BuiltinFloatingPointType, let N : int, let M : int>
[__readNone]
-[require(cpp_cuda_glsl_hlsl_metal_spirv, sm_4_0_version)]
matrix<T,N,M> lerp(matrix<T,N,M> x, matrix<T,N,M> y, matrix<T,N,M> s)
{
__target_switch