================ @@ -71,6 +71,17 @@ constexpr vector<T, L> reflect_vec_impl(vector<T, L> I, vector<T, L> N) { #endif } +template <typename T, typename U> constexpr T refract_impl(T I, T N, U Eta) { +#if (__has_builtin(__builtin_spirv_refract)) + if (is_vector<T>::value) ---------------- farzonl wrote:
It looks like SPIRV refract does support scalars so you can remove this vector check if statement. https://godbolt.org/z/ssEh5Mneb Just please confirm that this still passes through `spirv-val` https://github.com/llvm/llvm-project/pull/147342 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits