@@ -3749,67 +3749,67 @@ __bool8 __builtin_spirv_OpSignBitSet_v8f64(double8 x);
37493749__bool16 __builtin_spirv_OpSignBitSet_v16f64(double16 x);
37503750#endif // defined(cl_khr_fp64)
37513751
3752- bool __builtin_spirv_OpLessOrGreater_f16_f16 (half x, half y);
3753- bool __builtin_spirv_OpLessOrGreater_f32_f32 (float x, float y);
3754- __bool2 __builtin_spirv_OpLessOrGreater_v2f16_v2f16 (half2 x, half2 y);
3755- __bool2 __builtin_spirv_OpLessOrGreater_v2f32_v2f32 (float2 x, float2 y);
3756- __bool3 __builtin_spirv_OpLessOrGreater_v3f16_v3f16 (half3 x, half3 y);
3757- __bool3 __builtin_spirv_OpLessOrGreater_v3f32_v3f32 (float3 x, float3 y);
3758- __bool4 __builtin_spirv_OpLessOrGreater_v4f16_v4f16 (half4 x, half4 y);
3759- __bool4 __builtin_spirv_OpLessOrGreater_v4f32_v4f32 (float4 x, float4 y);
3760- __bool8 __builtin_spirv_OpLessOrGreater_v8f16_v8f16 (half8 x, half8 y);
3761- __bool8 __builtin_spirv_OpLessOrGreater_v8f32_v8f32 (float8 x, float8 y);
3762- __bool16 __builtin_spirv_OpLessOrGreater_v16f16_v16f16 (half16 x, half16 y);
3763- __bool16 __builtin_spirv_OpLessOrGreater_v16f32_v16f32 (float16 x, float16 y);
3764- #if defined(cl_khr_fp64)
3765- bool __builtin_spirv_OpLessOrGreater_f64_f64 (double x, double y);
3766- __bool2 __builtin_spirv_OpLessOrGreater_v2f64_v2f64 (double2 x, double2 y);
3767- __bool3 __builtin_spirv_OpLessOrGreater_v3f64_v3f64 (double3 x, double3 y);
3768- __bool4 __builtin_spirv_OpLessOrGreater_v4f64_v4f64 (double4 x, double4 y);
3769- __bool8 __builtin_spirv_OpLessOrGreater_v8f64_v8f64 (double8 x, double8 y);
3770- __bool16 __builtin_spirv_OpLessOrGreater_v16f64_v16f64 (double16 x, double16 y);
3771- #endif // defined(cl_khr_fp64)
3772-
3773- bool __builtin_spirv_OpOrdered_f16_f16 (half x, half y);
3774- bool __builtin_spirv_OpOrdered_f32_f32 (float x, float y);
3775- __bool2 __builtin_spirv_OpOrdered_v2f16_v2f16 (half2 x, half2 y);
3776- __bool2 __builtin_spirv_OpOrdered_v2f32_v2f32 (float2 x, float2 y);
3777- __bool3 __builtin_spirv_OpOrdered_v3f16_v3f16 (half3 x, half3 y);
3778- __bool3 __builtin_spirv_OpOrdered_v3f32_v3f32 (float3 x, float3 y);
3779- __bool4 __builtin_spirv_OpOrdered_v4f16_v4f16 (half4 x, half4 y);
3780- __bool4 __builtin_spirv_OpOrdered_v4f32_v4f32 (float4 x, float4 y);
3781- __bool8 __builtin_spirv_OpOrdered_v8f16_v8f16 (half8 x, half8 y);
3782- __bool8 __builtin_spirv_OpOrdered_v8f32_v8f32 (float8 x, float8 y);
3783- __bool16 __builtin_spirv_OpOrdered_v16f16_v16f16 (half16 x, half16 y);
3784- __bool16 __builtin_spirv_OpOrdered_v16f32_v16f32 (float16 x, float16 y);
3785- #if defined(cl_khr_fp64)
3786- bool __builtin_spirv_OpOrdered_f64_f64 (double x, double y);
3787- __bool2 __builtin_spirv_OpOrdered_v2f64_v2f64 (double2 x, double2 y);
3788- __bool3 __builtin_spirv_OpOrdered_v3f64_v3f64 (double3 x, double3 y);
3789- __bool4 __builtin_spirv_OpOrdered_v4f64_v4f64 (double4 x, double4 y);
3790- __bool8 __builtin_spirv_OpOrdered_v8f64_v8f64 (double8 x, double8 y);
3791- __bool16 __builtin_spirv_OpOrdered_v16f64_v16f64 (double16 x, double16 y);
3792- #endif // defined(cl_khr_fp64)
3793-
3794- bool __builtin_spirv_OpUnordered_f16_f16 (half x, half y);
3795- bool __builtin_spirv_OpUnordered_f32_f32 (float x, float y);
3796- __bool2 __builtin_spirv_OpUnordered_v2f16_v2f16 (half2 x, half2 y);
3797- __bool2 __builtin_spirv_OpUnordered_v2f32_v2f32 (float2 x, float2 y);
3798- __bool3 __builtin_spirv_OpUnordered_v3f16_v3f16 (half3 x, half3 y);
3799- __bool3 __builtin_spirv_OpUnordered_v3f32_v3f32 (float3 x, float3 y);
3800- __bool4 __builtin_spirv_OpUnordered_v4f16_v4f16 (half4 x, half4 y);
3801- __bool4 __builtin_spirv_OpUnordered_v4f32_v4f32 (float4 x, float4 y);
3802- __bool8 __builtin_spirv_OpUnordered_v8f16_v8f16 (half8 x, half8 y);
3803- __bool8 __builtin_spirv_OpUnordered_v8f32_v8f32 (float8 x, float8 y);
3804- __bool16 __builtin_spirv_OpUnordered_v16f16_v16f16 (half16 x, half16 y);
3805- __bool16 __builtin_spirv_OpUnordered_v16f32_v16f32 (float16 x, float16 y);
3806- #if defined(cl_khr_fp64)
3807- bool __builtin_spirv_OpUnordered_f64_f64 (double x, double y);
3808- __bool2 __builtin_spirv_OpUnordered_v2f64_v2f64 (double2 x, double2 y);
3809- __bool3 __builtin_spirv_OpUnordered_v3f64_v3f64 (double3 x, double3 y);
3810- __bool4 __builtin_spirv_OpUnordered_v4f64_v4f64 (double4 x, double4 y);
3811- __bool8 __builtin_spirv_OpUnordered_v8f64_v8f64 (double8 x, double8 y);
3812- __bool16 __builtin_spirv_OpUnordered_v16f64_v16f64 (double16 x, double16 y);
3752+ bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _f16_f16, ) (half x, half y);
3753+ bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _f32_f32, ) (float x, float y);
3754+ __bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _v2f16_v2f16, ) (half2 x, half2 y);
3755+ __bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _v2f32_v2f32, ) (float2 x, float2 y);
3756+ __bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _v3f16_v3f16, ) (half3 x, half3 y);
3757+ __bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _v3f32_v3f32, ) (float3 x, float3 y);
3758+ __bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _v4f16_v4f16, ) (half4 x, half4 y);
3759+ __bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _v4f32_v4f32, ) (float4 x, float4 y);
3760+ __bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _v8f16_v8f16, ) (half8 x, half8 y);
3761+ __bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _v8f32_v8f32, ) (float8 x, float8 y);
3762+ __bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _v16f16_v16f16, ) (half16 x, half16 y);
3763+ __bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _v16f32_v16f32, ) (float16 x, float16 y);
3764+ #if defined(cl_khr_fp64)
3765+ bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _f64_f64, ) (double x, double y);
3766+ __bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _v2f64_v2f64, ) (double2 x, double2 y);
3767+ __bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _v3f64_v3f64, ) (double3 x, double3 y);
3768+ __bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _v4f64_v4f64, ) (double4 x, double4 y);
3769+ __bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _v8f64_v8f64, ) (double8 x, double8 y);
3770+ __bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(LessOrGreater, _v16f64_v16f64, ) (double16 x, double16 y);
3771+ #endif // defined(cl_khr_fp64)
3772+
3773+ bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _f16_f16, ) (half x, half y);
3774+ bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _f32_f32, ) (float x, float y);
3775+ __bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _v2f16_v2f16, ) (half2 x, half2 y);
3776+ __bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _v2f32_v2f32, ) (float2 x, float2 y);
3777+ __bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _v3f16_v3f16, ) (half3 x, half3 y);
3778+ __bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _v3f32_v3f32, ) (float3 x, float3 y);
3779+ __bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _v4f16_v4f16, ) (half4 x, half4 y);
3780+ __bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _v4f32_v4f32, ) (float4 x, float4 y);
3781+ __bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _v8f16_v8f16, ) (half8 x, half8 y);
3782+ __bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _v8f32_v8f32, ) (float8 x, float8 y);
3783+ __bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _v16f16_v16f16, ) (half16 x, half16 y);
3784+ __bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _v16f32_v16f32, ) (float16 x, float16 y);
3785+ #if defined(cl_khr_fp64)
3786+ bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _f64_f64, ) (double x, double y);
3787+ __bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _v2f64_v2f64, ) (double2 x, double2 y);
3788+ __bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _v3f64_v3f64, ) (double3 x, double3 y);
3789+ __bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _v4f64_v4f64, ) (double4 x, double4 y);
3790+ __bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _v8f64_v8f64, ) (double8 x, double8 y);
3791+ __bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Ordered, _v16f64_v16f64, ) (double16 x, double16 y);
3792+ #endif // defined(cl_khr_fp64)
3793+
3794+ bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _f16_f16, ) (half x, half y);
3795+ bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _f32_f32, ) (float x, float y);
3796+ __bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _v2f16_v2f16, ) (half2 x, half2 y);
3797+ __bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _v2f32_v2f32, ) (float2 x, float2 y);
3798+ __bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _v3f16_v3f16, ) (half3 x, half3 y);
3799+ __bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _v3f32_v3f32, ) (float3 x, float3 y);
3800+ __bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _v4f16_v4f16, ) (half4 x, half4 y);
3801+ __bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _v4f32_v4f32, ) (float4 x, float4 y);
3802+ __bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _v8f16_v8f16, ) (half8 x, half8 y);
3803+ __bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _v8f32_v8f32, ) (float8 x, float8 y);
3804+ __bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _v16f16_v16f16, ) (half16 x, half16 y);
3805+ __bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _v16f32_v16f32, ) (float16 x, float16 y);
3806+ #if defined(cl_khr_fp64)
3807+ bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _f64_f64, ) (double x, double y);
3808+ __bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _v2f64_v2f64, ) (double2 x, double2 y);
3809+ __bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _v3f64_v3f64, ) (double3 x, double3 y);
3810+ __bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _v4f64_v4f64, ) (double4 x, double4 y);
3811+ __bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _v8f64_v8f64, ) (double8 x, double8 y);
3812+ __bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(Unordered, _v16f64_v16f64, ) (double16 x, double16 y);
38133813#endif // defined(cl_khr_fp64)
38143814
38153815// Atomic Instructions
0 commit comments