[clang] [HLSL] Implement the `lit` intrinsic (PR #134171)

Farzon Lotfi via cfe-commits cfe-commits at lists.llvm.org
Wed Apr 2 16:44:47 PDT 2025


================
@@ -280,6 +280,22 @@ constexpr bool4 isinf(double4 V) { return isinf((float4)V); }
 _DXC_COMPAT_TERNARY_DOUBLE_OVERLOADS(lerp)
 _DXC_COMPAT_TERNARY_INTEGER_OVERLOADS(lerp)
 
+//===----------------------------------------------------------------------===//
+// lit builtins overloads
+//===----------------------------------------------------------------------===//
+
+template <typename T>
+constexpr __detail::enable_if_t<__detail::is_arithmetic<T>::Value &&
+                                    (__detail::is_same<double, T>::value ||
----------------
farzonl wrote:

I'm curious do we have to check all these types or can we just check `__detail::is_arithmetic<T>` and not half or float so as to not impact the other templates?

https://github.com/llvm/llvm-project/pull/134171


More information about the cfe-commits mailing list