https://github.com/bob80905 updated https://github.com/llvm/llvm-project/pull/186218
>From 5cf44b907bb7b0954cbfb542eeb91b11b2022478 Mon Sep 17 00:00:00 2001 From: Joshua Batista <[email protected]> Date: Thu, 12 Mar 2026 12:09:27 -0700 Subject: [PATCH 1/3] update other 16_t availabilities to 6.2 --- .../lib/Headers/hlsl/hlsl_alias_intrinsics.h | 138 +++++++++--------- 1 file changed, 70 insertions(+), 68 deletions(-) diff --git a/clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h b/clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h index 440bb5533c278..26dcc9f0158b3 100644 --- a/clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h +++ b/clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h @@ -35,6 +35,8 @@ namespace hlsl { #define _HLSL_16BIT_AVAILABILITY_STAGE(environment, version, stage) #endif +#define _HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_AVAILABILITY(shadermodel, 6.2) + //===----------------------------------------------------------------------===// // abs builtins //===----------------------------------------------------------------------===// @@ -2482,43 +2484,43 @@ float4 trunc(float4); /// group. Otherwise, the result is false. /// \param Value The value to compare with /// \return True if all values across all lanes are equal, false otherwise -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool WaveActiveAllEqual(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool2 WaveActiveAllEqual(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool3 WaveActiveAllEqual(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool4 WaveActiveAllEqual(half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool WaveActiveAllEqual(int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool2 WaveActiveAllEqual(int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool3 WaveActiveAllEqual(int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool4 WaveActiveAllEqual(int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool WaveActiveAllEqual(uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool2 WaveActiveAllEqual(uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool3 WaveActiveAllEqual(uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool4 WaveActiveAllEqual(uint16_t4); #endif @@ -2681,29 +2683,29 @@ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) bool4 WaveReadLaneAt(bool4, uint32_t); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) int16_t WaveReadLaneAt(int16_t, uint32_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) int16_t2 WaveReadLaneAt(int16_t2, uint32_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) int16_t3 WaveReadLaneAt(int16_t3, uint32_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) int16_t4 WaveReadLaneAt(int16_t4, uint32_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) uint16_t WaveReadLaneAt(uint16_t, uint32_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) uint16_t2 WaveReadLaneAt(uint16_t2, uint32_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) uint16_t3 WaveReadLaneAt(uint16_t3, uint32_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) uint16_t4 WaveReadLaneAt(uint16_t4, uint32_t); #endif @@ -2827,29 +2829,29 @@ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) half4 WaveActiveMax(half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) int16_t WaveActiveMax(int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) int16_t2 WaveActiveMax(int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) int16_t3 WaveActiveMax(int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) int16_t4 WaveActiveMax(int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) uint16_t WaveActiveMax(uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) uint16_t2 WaveActiveMax(uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) uint16_t3 WaveActiveMax(uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) uint16_t4 WaveActiveMax(uint16_t4); #endif @@ -2926,29 +2928,29 @@ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) half4 WaveActiveMin(half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) int16_t WaveActiveMin(int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) int16_t2 WaveActiveMin(int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) int16_t3 WaveActiveMin(int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) int16_t4 WaveActiveMin(int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) uint16_t WaveActiveMin(uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) uint16_t2 WaveActiveMin(uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) uint16_t3 WaveActiveMin(uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) uint16_t4 WaveActiveMin(uint16_t4); #endif @@ -3049,29 +3051,29 @@ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) half4 WaveActiveSum(half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) int16_t WaveActiveSum(int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) int16_t2 WaveActiveSum(int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) int16_t3 WaveActiveSum(int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) int16_t4 WaveActiveSum(int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) uint16_t WaveActiveSum(uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) uint16_t2 WaveActiveSum(uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) uint16_t3 WaveActiveSum(uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) uint16_t4 WaveActiveSum(uint16_t4); #endif @@ -3148,29 +3150,29 @@ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) half4 WaveActiveProduct(half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) int16_t WaveActiveProduct(int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) int16_t2 WaveActiveProduct(int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) int16_t3 WaveActiveProduct(int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) int16_t4 WaveActiveProduct(int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) uint16_t WaveActiveProduct(uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) uint16_t2 WaveActiveProduct(uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) uint16_t3 WaveActiveProduct(uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) uint16_t4 WaveActiveProduct(uint16_t4); #endif @@ -3271,29 +3273,29 @@ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) half4 WavePrefixSum(half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) int16_t WavePrefixSum(int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) int16_t2 WavePrefixSum(int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) int16_t3 WavePrefixSum(int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) int16_t4 WavePrefixSum(int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) uint16_t WavePrefixSum(uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) uint16_t2 WavePrefixSum(uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) uint16_t3 WavePrefixSum(uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) uint16_t4 WavePrefixSum(uint16_t4); #endif @@ -3370,29 +3372,29 @@ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) half4 WavePrefixProduct(half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) int16_t WavePrefixProduct(int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) int16_t2 WavePrefixProduct(int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) int16_t3 WavePrefixProduct(int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) int16_t4 WavePrefixProduct(int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) uint16_t WavePrefixProduct(uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) uint16_t2 WavePrefixProduct(uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) uint16_t3 WavePrefixProduct(uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.0) +_HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) uint16_t4 WavePrefixProduct(uint16_t4); #endif >From d0a1aa9ed9989e27aec5c027f3f3e480099b2534 Mon Sep 17 00:00:00 2001 From: Joshua Batista <[email protected]> Date: Thu, 12 Mar 2026 15:42:52 -0700 Subject: [PATCH 2/3] address tex --- .../lib/Headers/hlsl/hlsl_alias_intrinsics.h | 749 +++++++++--------- 1 file changed, 376 insertions(+), 373 deletions(-) diff --git a/clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h b/clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h index 26dcc9f0158b3..e643a3246fecc 100644 --- a/clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h +++ b/clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h @@ -30,12 +30,15 @@ namespace hlsl { #define _HLSL_16BIT_AVAILABILITY_STAGE(platform, version, stage) \ __attribute__(( \ availability(platform, introduced = version, environment = stage))) +#define _HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) \ + _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) #else #define _HLSL_16BIT_AVAILABILITY(environment, version) #define _HLSL_16BIT_AVAILABILITY_STAGE(environment, version, stage) +#define _HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) #endif -#define _HLSL_16BIT_AVAILABILITY_DEFAULT() _HLSL_AVAILABILITY(shadermodel, 6.2) +#define _HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_AVAILABILITY(shadermodel, 6.2) //===----------------------------------------------------------------------===// // abs builtins @@ -46,39 +49,39 @@ namespace hlsl { /// \param Val The input value. #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_abs) int16_t abs(int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_abs) int16_t2 abs(int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_abs) int16_t3 abs(int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_abs) int16_t4 abs(int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) constexpr uint16_t abs(uint16_t V) { return V; } -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) constexpr uint16_t2 abs(uint16_t2 V) { return V; } -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) constexpr uint16_t3 abs(uint16_t3 V) { return V; } -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) constexpr uint16_t4 abs(uint16_t4 V) { return V; } #endif -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_abs) half abs(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_abs) half2 abs(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_abs) half3 abs(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_abs) half4 abs(half4); @@ -136,16 +139,16 @@ double4 abs(double4); /// \brief Returns the arccosine of the input value, \a Val. /// \param Val The input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_acos) half acos(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_acos) half2 acos(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_acos) half3 acos(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_acos) half4 acos(half4); @@ -188,42 +191,42 @@ uint32_t4 AddUint64(uint32_t4, uint32_t4); /// otherwise, false. \param x The input value. #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_all) bool all(int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_all) bool all(int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_all) bool all(int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_all) bool all(int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_all) bool all(uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_all) bool all(uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_all) bool all(uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_all) bool all(uint16_t4); #endif -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_all) bool all(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_all) bool all(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_all) bool all(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_all) bool all(half4); @@ -354,42 +357,42 @@ bool4x4 and(bool4x4 x, bool4x4 y); /// otherwise, false. \param x The input value. #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_any) bool any(int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_any) bool any(int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_any) bool any(int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_any) bool any(int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_any) bool any(uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_any) bool any(uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_any) bool any(uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_any) bool any(uint16_t4); #endif -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_any) bool any(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_any) bool any(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_any) bool any(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_any) bool any(half4); @@ -483,16 +486,16 @@ double4 asdouble(uint4, uint4); /// \brief Returns the arcsine of the input value, \a Val. /// \param Val The input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin) half asin(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin) half2 asin(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin) half3 asin(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin) half4 asin(half4); @@ -513,16 +516,16 @@ float4 asin(float4); /// \brief Returns the arctangent of the input value, \a Val. /// \param Val The input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan) half atan(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan) half2 atan(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan) half3 atan(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan) half4 atan(half4); @@ -545,16 +548,16 @@ float4 atan(float4); /// \param y The y-coordinate. /// \param x The x-coordinate. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan2) half atan2(half y, half x); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan2) half2 atan2(half2 y, half2 x); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan2) half3 atan2(half3 y, half3 x); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan2) half4 atan2(half4 y, half4 x); @@ -576,16 +579,16 @@ float4 atan2(float4 y, float4 x); /// the input value, \a Val. /// \param Val The input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_ceil) half ceil(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_ceil) half2 ceil(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_ceil) half3 ceil(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_ceil) half4 ceil(half4); @@ -613,43 +616,43 @@ float4 ceil(float4); /// For values of -INF or INF, clamp will behave as expected. /// However for values of NaN, the results are undefined. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_clamp) half clamp(half, half, half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_clamp) half2 clamp(half2, half2, half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_clamp) half3 clamp(half3, half3, half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_clamp) half4 clamp(half4, half4, half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_clamp) int16_t clamp(int16_t, int16_t, int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_clamp) int16_t2 clamp(int16_t2, int16_t2, int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_clamp) int16_t3 clamp(int16_t3, int16_t3, int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_clamp) int16_t4 clamp(int16_t4, int16_t4, int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_clamp) uint16_t clamp(uint16_t, uint16_t, uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_clamp) uint16_t2 clamp(uint16_t2, uint16_t2, uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_clamp) uint16_t3 clamp(uint16_t3, uint16_t3, uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_clamp) uint16_t4 clamp(uint16_t4, uint16_t4, uint16_t4); #endif @@ -733,16 +736,16 @@ void clip(float4); /// \brief Returns the cosine of the input value, \a Val. /// \param Val The input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_cos) half cos(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_cos) half2 cos(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_cos) half3 cos(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_cos) half4 cos(half4); @@ -763,16 +766,16 @@ float4 cos(float4); /// \brief Returns the hyperbolic cosine of the input value, \a Val. /// \param Val The input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_cosh) half cosh(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_cosh) half2 cosh(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_cosh) half3 cosh(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_cosh) half4 cosh(half4); @@ -794,35 +797,35 @@ float4 cosh(float4); /// \param Val The input value. #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) const inline uint countbits(int16_t x) { return __builtin_elementwise_popcount(x); } -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) const inline uint2 countbits(int16_t2 x) { return __builtin_elementwise_popcount(x); } -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) const inline uint3 countbits(int16_t3 x) { return __builtin_elementwise_popcount(x); } -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) const inline uint4 countbits(int16_t4 x) { return __builtin_elementwise_popcount(x); } -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) const inline uint countbits(uint16_t x) { return __builtin_elementwise_popcount(x); } -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) const inline uint2 countbits(uint16_t2 x) { return __builtin_elementwise_popcount(x); } -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) const inline uint3 countbits(uint16_t3 x) { return __builtin_elementwise_popcount(x); } -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) const inline uint4 countbits(uint16_t4 x) { return __builtin_elementwise_popcount(x); } @@ -886,16 +889,16 @@ const inline uint4 countbits(uint64_t4 x) { /// \brief Converts the specified value from radians to degrees. /// \param x The specified input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_degrees) half degrees(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_degrees) half2 degrees(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_degrees) half3 degrees(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_degrees) half4 degrees(half4); @@ -917,43 +920,43 @@ float4 degrees(float4); /// \param X The X input value. /// \param Y The Y input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_dot) half dot(half, half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_dot) half dot(half2, half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_dot) half dot(half3, half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_dot) half dot(half4, half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_dot) int16_t dot(int16_t, int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_dot) int16_t dot(int16_t2, int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_dot) int16_t dot(int16_t3, int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_dot) int16_t dot(int16_t4, int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_dot) uint16_t dot(uint16_t, uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_dot) uint16_t dot(uint16_t2, uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_dot) uint16_t dot(uint16_t3, uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_dot) uint16_t dot(uint16_t4, uint16_t4); #endif @@ -1032,16 +1035,16 @@ uint dot4add_u8packed(uint, uint, uint); /// /// The return value is the base-e exponential of the \a x parameter. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_exp) half exp(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_exp) half2 exp(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_exp) half3 exp(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_exp) half4 exp(half4); @@ -1064,16 +1067,16 @@ float4 exp(float4); /// /// The base 2 exponential of the \a x parameter. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_exp2) half exp2(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_exp2) half2 exp2(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_exp2) half3 exp2(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_exp2) half4 exp2(half4); @@ -1138,28 +1141,28 @@ uint4 f32tof16(float4); /// \param Val the input value. #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbitlow) uint firstbitlow(int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbitlow) uint2 firstbitlow(int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbitlow) uint3 firstbitlow(int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbitlow) uint4 firstbitlow(int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbitlow) uint firstbitlow(uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbitlow) uint2 firstbitlow(uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbitlow) uint3 firstbitlow(uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbitlow) uint4 firstbitlow(uint16_t4); #endif @@ -1209,16 +1212,16 @@ uint4 firstbitlow(uint64_t4); /// value, \a Val. /// \param Val The input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_floor) half floor(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_floor) half2 floor(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_floor) half3 floor(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_floor) half4 floor(half4); @@ -1241,16 +1244,16 @@ float4 floor(float4); /// /// If \a the return value is greater than or equal to 0 and less than 1. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_frac) half frac(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_frac) half2 frac(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_frac) half3 frac(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_frac) half4 frac(half4); @@ -1274,16 +1277,16 @@ float4 frac(float4); /// Returns a value of the same size as the input, with a value set /// to True if the x parameter is +INF or -INF. Otherwise, False. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isinf) bool isinf(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isinf) bool2 isinf(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isinf) bool3 isinf(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isinf) bool4 isinf(half4); @@ -1307,16 +1310,16 @@ bool4 isinf(float4); /// Returns a value of the same size as the input, with a value set /// to True if the x parameter is NaN or QNaN. Otherwise, False. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isnan) bool isnan(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isnan) bool2 isnan(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isnan) bool3 isnan(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isnan) bool4 isnan(half4); @@ -1343,16 +1346,16 @@ bool4 isnan(float4); /// Linear interpolation is based on the following formula: x*(1-s) + y*s which /// can equivalently be written as x + s(y-x). -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_lerp) half lerp(half, half, half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_lerp) half2 lerp(half2, half2, half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_lerp) half3 lerp(half3, half3, half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_lerp) half4 lerp(half4, half4, half4); @@ -1376,16 +1379,16 @@ float4 lerp(float4, float4, float4); /// If \a Val is negative, this result is undefined. If \a Val is 0, this /// function returns negative infinity. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_log) half log(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_log) half2 log(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_log) half3 log(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_log) half4 log(half4); @@ -1409,16 +1412,16 @@ float4 log(float4); /// If \a Val is negative, this result is undefined. If \a Val is 0, this /// function returns negative infinity. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_log10) half log10(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_log10) half2 log10(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_log10) half3 log10(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_log10) half4 log10(half4); @@ -1442,16 +1445,16 @@ float4 log10(float4); /// If \a Val is negative, this result is undefined. If \a Val is 0, this /// function returns negative infinity. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_log2) half log2(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_log2) half2 log2(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_log2) half3 log2(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_log2) half4 log2(half4); @@ -1474,43 +1477,43 @@ float4 log2(float4); /// \param A The first addition value. /// \param B The second addition value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_mad) half mad(half, half, half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_mad) half2 mad(half2, half2, half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_mad) half3 mad(half3, half3, half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_mad) half4 mad(half4, half4, half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_mad) int16_t mad(int16_t, int16_t, int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_mad) int16_t2 mad(int16_t2, int16_t2, int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_mad) int16_t3 mad(int16_t3, int16_t3, int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_mad) int16_t4 mad(int16_t4, int16_t4, int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_mad) uint16_t mad(uint16_t, uint16_t, uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_mad) uint16_t2 mad(uint16_t2, uint16_t2, uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_mad) uint16_t3 mad(uint16_t3, uint16_t3, uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_mad) uint16_t4 mad(uint16_t4, uint16_t4, uint16_t4); #endif @@ -1578,43 +1581,43 @@ double4 mad(double4, double4, double4); /// \param X The X input value. /// \param Y The Y input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_max) half max(half, half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_max) half2 max(half2, half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_max) half3 max(half3, half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_max) half4 max(half4, half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_max) int16_t max(int16_t, int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_max) int16_t2 max(int16_t2, int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_max) int16_t3 max(int16_t3, int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_max) int16_t4 max(int16_t4, int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_max) uint16_t max(uint16_t, uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_max) uint16_t2 max(uint16_t2, uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_max) uint16_t3 max(uint16_t3, uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_max) uint16_t4 max(uint16_t4, uint16_t4); #endif @@ -1682,43 +1685,43 @@ double4 max(double4, double4); /// \param X The X input value. /// \param Y The Y input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_min) half min(half, half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_min) half2 min(half2, half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_min) half3 min(half3, half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_min) half4 min(half4, half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_min) int16_t min(int16_t, int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_min) int16_t2 min(int16_t2, int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_min) int16_t3 min(int16_t3, int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_min) int16_t4 min(int16_t4, int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_min) uint16_t min(uint16_t, uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_min) uint16_t2 min(uint16_t2, uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_min) uint16_t3 min(uint16_t3, uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_min) uint16_t4 min(uint16_t4, uint16_t4); #endif @@ -1813,7 +1816,7 @@ double4 min(double4, double4); // Case 6: vector * matrix -> vector template <int R, int C> -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_mul) vector<half, C> mul(vector<half, R>, matrix<half, R, C>); @@ -1823,7 +1826,7 @@ vector<T, C> mul(vector<T, R>, matrix<T, R, C>); // Case 8: matrix * vector -> vector template <int R, int C> -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_mul) vector<half, R> mul(matrix<half, R, C>, vector<half, C>); @@ -1833,7 +1836,7 @@ vector<T, R> mul(matrix<T, R, C>, vector<T, C>); // Case 9: matrix * matrix -> matrix template <int R, int K, int C> -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_mul) matrix<half, R, C> mul( matrix<half, R, K>, matrix<half, K, C>); @@ -1851,16 +1854,16 @@ matrix<T, R, C> mul(matrix<T, R, K>, matrix<T, K, C>); /// /// Normalize is based on the following formula: x / length(x). -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_normalize) half normalize(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_normalize) half2 normalize(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_normalize) half3 normalize(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_normalize) half4 normalize(half4); @@ -1935,16 +1938,16 @@ bool4x4 or(bool4x4 x, bool4x4 y); /// \param Val The input value. /// \param Pow The specified power. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_pow) half pow(half, half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_pow) half2 pow(half2, half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_pow) half3 pow(half3, half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_pow) half4 pow(half4, half4); @@ -1966,16 +1969,16 @@ float4 pow(float4, float4); /// \param Val The input value. #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_bitreverse) uint16_t reversebits(uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_bitreverse) uint16_t2 reversebits(uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_bitreverse) uint16_t3 reversebits(uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_bitreverse) uint16_t4 reversebits(uint16_t4); #endif @@ -2013,7 +2016,7 @@ uint64_t4 reversebits(uint64_t4); /// x[2] * y[0] - y[2] * x[0] /// x[0] * y[1] - y[0] * x[1] -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_crossf16) half3 cross(half3, half3); @@ -2030,16 +2033,16 @@ float3 cross(float3, float3); /// /// The return value is the reciprocal of the \a x parameter. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_rcp) half rcp(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_rcp) half2 rcp(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_rcp) half3 rcp(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_rcp) half4 rcp(half4); @@ -2072,16 +2075,16 @@ double4 rcp(double4); /// /// This function uses the following formula: 1 / sqrt(x). -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_rsqrt) half rsqrt(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_rsqrt) half2 rsqrt(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_rsqrt) half3 rsqrt(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_rsqrt) half4 rsqrt(half4); @@ -2106,16 +2109,16 @@ float4 rsqrt(float4); /// within a floating-point type. Halfway cases are /// rounded to the nearest even value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_roundeven) half round(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_roundeven) half2 round(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_roundeven) half3 round(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_roundeven) half4 round(half4); @@ -2136,16 +2139,16 @@ float4 round(float4); /// \brief Returns input value, \a Val, clamped within the range of 0.0f /// to 1.0f. \param Val The input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_saturate) half saturate(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_saturate) half2 saturate(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_saturate) half3 saturate(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_saturate) half4 saturate(half4); @@ -2270,16 +2273,16 @@ __detail::enable_if_t<__detail::is_arithmetic<T>::Value, vector<T, 4>> select( /// \brief Returns the sine of the input value, \a Val. /// \param Val The input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sin) half sin(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sin) half2 sin(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sin) half3 sin(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sin) half4 sin(half4); @@ -2300,16 +2303,16 @@ float4 sin(float4); /// \brief Returns the hyperbolic sine of the input value, \a Val. /// \param Val The input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sinh) half sinh(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sinh) half2 sinh(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sinh) half3 sinh(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sinh) half4 sinh(half4); @@ -2330,16 +2333,16 @@ float4 sinh(float4); /// \brief Returns the square root of the input value, \a Val. /// \param Val The input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sqrt) half sqrt(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sqrt) half2 sqrt(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sqrt) half3 sqrt(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sqrt) half4 sqrt(half4); @@ -2363,16 +2366,16 @@ float4 sqrt(float4); /// /// Step is based on the following formula: (x >= y) ? 1 : 0 -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_step) half step(half, half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_step) half2 step(half2, half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_step) half3 step(half3, half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_step) half4 step(half4, half4); @@ -2393,16 +2396,16 @@ float4 step(float4, float4); /// \brief Returns the tangent of the input value, \a Val. /// \param Val The input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tan) half tan(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tan) half2 tan(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tan) half3 tan(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tan) half4 tan(half4); @@ -2423,16 +2426,16 @@ float4 tan(float4); /// \brief Returns the hyperbolic tangent of the input value, \a Val. /// \param Val The input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tanh) half tanh(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tanh) half2 tanh(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tanh) half3 tanh(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tanh) half4 tanh(half4); @@ -2453,16 +2456,16 @@ float4 tanh(float4); /// \brief Returns the truncated integer value of the input value, \a Val. /// \param Val The input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_trunc) half trunc(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_trunc) half2 trunc(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_trunc) half3 trunc(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_elementwise_trunc) half4 trunc(half4); @@ -2484,43 +2487,43 @@ float4 trunc(float4); /// group. Otherwise, the result is false. /// \param Value The value to compare with /// \return True if all values across all lanes are equal, false otherwise -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool WaveActiveAllEqual(half); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool2 WaveActiveAllEqual(half2); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool3 WaveActiveAllEqual(half3); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool4 WaveActiveAllEqual(half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool WaveActiveAllEqual(int16_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool2 WaveActiveAllEqual(int16_t2); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool3 WaveActiveAllEqual(int16_t3); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool4 WaveActiveAllEqual(int16_t4); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool WaveActiveAllEqual(uint16_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool2 WaveActiveAllEqual(uint16_t2); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool3 WaveActiveAllEqual(uint16_t3); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_all_equal) __attribute__((convergent)) bool4 WaveActiveAllEqual(uint16_t4); #endif @@ -2683,43 +2686,43 @@ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) bool4 WaveReadLaneAt(bool4, uint32_t); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) int16_t WaveReadLaneAt(int16_t, uint32_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) int16_t2 WaveReadLaneAt(int16_t2, uint32_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) int16_t3 WaveReadLaneAt(int16_t3, uint32_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) int16_t4 WaveReadLaneAt(int16_t4, uint32_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) uint16_t WaveReadLaneAt(uint16_t, uint32_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) uint16_t2 WaveReadLaneAt(uint16_t2, uint32_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) uint16_t3 WaveReadLaneAt(uint16_t3, uint32_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) uint16_t4 WaveReadLaneAt(uint16_t4, uint32_t); #endif -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) half WaveReadLaneAt(half, uint32_t); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) half2 WaveReadLaneAt(half2, uint32_t); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) half3 WaveReadLaneAt(half3, uint32_t); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at) __attribute__((convergent)) half4 WaveReadLaneAt(half4, uint32_t); @@ -2815,43 +2818,43 @@ __attribute__((convergent)) uint64_t4 WaveActiveBitOr(uint64_t4); // WaveActiveMax builtins //===----------------------------------------------------------------------===// -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) half WaveActiveMax(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) half2 WaveActiveMax(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) half3 WaveActiveMax(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) half4 WaveActiveMax(half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) int16_t WaveActiveMax(int16_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) int16_t2 WaveActiveMax(int16_t2); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) int16_t3 WaveActiveMax(int16_t3); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) int16_t4 WaveActiveMax(int16_t4); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) uint16_t WaveActiveMax(uint16_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) uint16_t2 WaveActiveMax(uint16_t2); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) uint16_t3 WaveActiveMax(uint16_t3); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max) __attribute__((convergent)) uint16_t4 WaveActiveMax(uint16_t4); #endif @@ -2914,43 +2917,43 @@ __attribute__((convergent)) double4 WaveActiveMax(double4); // WaveActiveMin builtins //===----------------------------------------------------------------------===// -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) half WaveActiveMin(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) half2 WaveActiveMin(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) half3 WaveActiveMin(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) half4 WaveActiveMin(half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) int16_t WaveActiveMin(int16_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) int16_t2 WaveActiveMin(int16_t2); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) int16_t3 WaveActiveMin(int16_t3); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) int16_t4 WaveActiveMin(int16_t4); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) uint16_t WaveActiveMin(uint16_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) uint16_t2 WaveActiveMin(uint16_t2); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) uint16_t3 WaveActiveMin(uint16_t3); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min) __attribute__((convergent)) uint16_t4 WaveActiveMin(uint16_t4); #endif @@ -3037,43 +3040,43 @@ __attribute__((convergent)) double4 WaveActiveMin(double4); // WaveActiveSum builtins //===----------------------------------------------------------------------===// -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) half WaveActiveSum(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) half2 WaveActiveSum(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) half3 WaveActiveSum(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) half4 WaveActiveSum(half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) int16_t WaveActiveSum(int16_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) int16_t2 WaveActiveSum(int16_t2); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) int16_t3 WaveActiveSum(int16_t3); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) int16_t4 WaveActiveSum(int16_t4); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) uint16_t WaveActiveSum(uint16_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) uint16_t2 WaveActiveSum(uint16_t2); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) uint16_t3 WaveActiveSum(uint16_t3); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_sum) __attribute__((convergent)) uint16_t4 WaveActiveSum(uint16_t4); #endif @@ -3136,43 +3139,43 @@ __attribute__((convergent)) double4 WaveActiveSum(double4); // WaveActiveProduct builtins //===----------------------------------------------------------------------===// -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) half WaveActiveProduct(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) half2 WaveActiveProduct(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) half3 WaveActiveProduct(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) half4 WaveActiveProduct(half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) int16_t WaveActiveProduct(int16_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) int16_t2 WaveActiveProduct(int16_t2); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) int16_t3 WaveActiveProduct(int16_t3); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) int16_t4 WaveActiveProduct(int16_t4); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) uint16_t WaveActiveProduct(uint16_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) uint16_t2 WaveActiveProduct(uint16_t2); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) uint16_t3 WaveActiveProduct(uint16_t3); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_product) __attribute__((convergent)) uint16_t4 WaveActiveProduct(uint16_t4); #endif @@ -3259,43 +3262,43 @@ __attribute__((convergent)) double4 WaveActiveProduct(double4); // WavePrefixSum builtins //===----------------------------------------------------------------------===// -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) half WavePrefixSum(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) half2 WavePrefixSum(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) half3 WavePrefixSum(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) half4 WavePrefixSum(half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) int16_t WavePrefixSum(int16_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) int16_t2 WavePrefixSum(int16_t2); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) int16_t3 WavePrefixSum(int16_t3); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) int16_t4 WavePrefixSum(int16_t4); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) uint16_t WavePrefixSum(uint16_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) uint16_t2 WavePrefixSum(uint16_t2); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) uint16_t3 WavePrefixSum(uint16_t3); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_sum) __attribute__((convergent)) uint16_t4 WavePrefixSum(uint16_t4); #endif @@ -3358,43 +3361,43 @@ __attribute__((convergent)) double4 WavePrefixSum(double4); // WavePrefixProduct builtins //===----------------------------------------------------------------------===// -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) half WavePrefixProduct(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) half2 WavePrefixProduct(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) half3 WavePrefixProduct(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) half4 WavePrefixProduct(half4); #ifdef __HLSL_ENABLE_16_BIT -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) int16_t WavePrefixProduct(int16_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) int16_t2 WavePrefixProduct(int16_t2); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) int16_t3 WavePrefixProduct(int16_t3); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) int16_t4 WavePrefixProduct(int16_t4); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) uint16_t WavePrefixProduct(uint16_t); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) uint16_t2 WavePrefixProduct(uint16_t2); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) uint16_t3 WavePrefixProduct(uint16_t3); -_HLSL_16BIT_AVAILABILITY_DEFAULT() +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_prefix_product) __attribute__((convergent)) uint16_t4 WavePrefixProduct(uint16_t4); #endif @@ -3462,43 +3465,43 @@ __attribute__((convergent)) double4 WavePrefixProduct(double4); /// 1 if \a Val is greater than zero. \param Val The input value. #ifdef __HLSL_ENABLE_16_BIT -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_sign) int sign(int16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_sign) int2 sign(int16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_sign) int3 sign(int16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_sign) int4 sign(int16_t4); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_sign) int sign(uint16_t); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_sign) int2 sign(uint16_t2); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_sign) int3 sign(uint16_t3); -_HLSL_AVAILABILITY(shadermodel, 6.2) +_HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_sign) int4 sign(uint16_t4); #endif -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_sign) int sign(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_sign) int2 sign(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_sign) int3 sign(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_sign) int4 sign(half4); @@ -3563,16 +3566,16 @@ int4 sign(double4); /// \fn T radians(T Val) /// \brief Converts the specified value from degrees to radians. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_radians) half radians(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_radians) half2 radians(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_radians) half3 radians(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_radians) half4 radians(half4); @@ -3609,16 +3612,16 @@ __attribute__((convergent)) void GroupMemoryBarrierWithGroupSync(void); /// The return value is a floating point scalar or vector containing the low /// prevision partial derivative of the input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_coarse) half ddx_coarse(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_coarse) half2 ddx_coarse(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_coarse) half3 ddx_coarse(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_coarse) half4 ddx_coarse(half4); @@ -3643,16 +3646,16 @@ float4 ddx_coarse(float4); /// The return value is a floating point scalar or vector containing the low /// prevision partial derivative of the input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_coarse) half ddy_coarse(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_coarse) half2 ddy_coarse(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_coarse) half3 ddy_coarse(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_coarse) half4 ddy_coarse(half4); @@ -3677,16 +3680,16 @@ float4 ddy_coarse(float4); /// The return value is a floating point scalar or vector containing the high /// prevision partial derivative of the input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_fine) half ddx_fine(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_fine) half2 ddx_fine(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_fine) half3 ddx_fine(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_fine) half4 ddx_fine(half4); @@ -3711,16 +3714,16 @@ float4 ddx_fine(float4); /// The return value is a floating point scalar or vector containing the high /// prevision partial derivative of the input value. -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_fine) half ddy_fine(half); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_fine) half2 ddy_fine(half2); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_fine) half3 ddy_fine(half3); -_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) +_HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_fine) half4 ddy_fine(half4); >From a28ae78967d705e5a33f11d5d3e580e0586105e5 Mon Sep 17 00:00:00 2001 From: Joshua Batista <[email protected]> Date: Thu, 12 Mar 2026 15:50:02 -0700 Subject: [PATCH 3/3] clang format --- clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h b/clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h index e643a3246fecc..7715585c23dc2 100644 --- a/clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h +++ b/clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h @@ -30,15 +30,16 @@ namespace hlsl { #define _HLSL_16BIT_AVAILABILITY_STAGE(platform, version, stage) \ __attribute__(( \ availability(platform, introduced = version, environment = stage))) -#define _HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) \ +#define _HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) \ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2) #else #define _HLSL_16BIT_AVAILABILITY(environment, version) #define _HLSL_16BIT_AVAILABILITY_STAGE(environment, version, stage) -#define _HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) +#define _HLSL_16BIT_AVAILABILITY_DEFAULT(shadermodel) #endif -#define _HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) _HLSL_AVAILABILITY(shadermodel, 6.2) +#define _HLSL_AVAILABILITY_6_2_DEFAULT(shadermodel) \ + _HLSL_AVAILABILITY(shadermodel, 6.2) //===----------------------------------------------------------------------===// // abs builtins _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
