[clang] [llvm] [HLSL] Implement ddx/ddy_coarse intrinsics (PR #164831)

Alexander Johnston via llvm-commits llvm-commits at lists.llvm.org
Thu Oct 23 11:30:04 PDT 2025


================
@@ -148,6 +148,22 @@ template <typename T> constexpr T ldexp_impl(T X, T Exp) {
   return exp2(Exp) * X;
 }
 
+template <typename T> constexpr T ddx_coarse_impl(T value) {
+#if (__has_builtin(__builtin_spirv_ddx_coarse))
+  return __builtin_spirv_ddx_coarse(value);
+#else
+  return __builtin_hlsl_elementwise_ddx_coarse(value);
+#endif
+}
+
+template <typename T> constexpr T ddy_coarse_impl(T value) {
+#if (__has_builtin(__builtin_spirv_ddy_coarse))
+  return __builtin_spirv_ddy_coarse(value);
+#else
+  return __builtin_hlsl_elementwise_ddy_coarse(value);
+#endif
+}
+
----------------
Alexander-Johnston wrote:

Reverted and implemented as an alias instead

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


More information about the llvm-commits mailing list