Skip to content

Commit 0879fa6

Browse files
aratajewigcbot
authored andcommitted
Revert a4e3f54
1 parent eabc56d commit 0879fa6

File tree

24 files changed

+428
-482
lines changed

24 files changed

+428
-482
lines changed

IGC/BiFModule/Headers/spirv.h

Lines changed: 103 additions & 103 deletions
Original file line numberDiff line numberDiff line change
@@ -3644,109 +3644,109 @@ bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(All, _v4i1, )(__bool4 Vector);
36443644
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(All, _v8i1, )(__bool8 Vector);
36453645
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(All, _v16i1, )(__bool16 Vector);
36463646

3647-
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _f16, )(half x);
3648-
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _f32, )(float x);
3649-
__bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _v2f16, )(half2 x);
3650-
__bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _v2f32, )(float2 x);
3651-
__bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _v3f16, )(half3 x);
3652-
__bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _v3f32, )(float3 x);
3653-
__bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _v4f16, )(half4 x);
3654-
__bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _v4f32, )(float4 x);
3655-
__bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _v8f16, )(half8 x);
3656-
__bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _v8f32, )(float8 x);
3657-
__bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _v16f16, )(half16 x);
3658-
__bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _v16f32, )(float16 x);
3659-
#if defined(cl_khr_fp64)
3660-
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _f64, )(double x);
3661-
__bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _v2f64, )(double2 x);
3662-
__bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _v3f64, )(double3 x);
3663-
__bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _v4f64, )(double4 x);
3664-
__bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _v8f64, )(double8 x);
3665-
__bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNan, _v16f64, )(double16 x);
3666-
#endif // defined(cl_khr_fp64)
3667-
3668-
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _f16, )(half x);
3669-
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _f32, )(float x);
3670-
__bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _v2f16, )(half2 x);
3671-
__bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _v2f32, )(float2 x);
3672-
__bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _v3f16, )(half3 x);
3673-
__bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _v3f32, )(float3 x);
3674-
__bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _v4f16, )(half4 x);
3675-
__bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _v4f32, )(float4 x);
3676-
__bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _v8f16, )(half8 x);
3677-
__bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _v8f32, )(float8 x);
3678-
__bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _v16f16, )(half16 x);
3679-
__bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _v16f32, )(float16 x);
3680-
#if defined(cl_khr_fp64)
3681-
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _f64, )(double x);
3682-
__bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _v2f64, )(double2 x);
3683-
__bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _v3f64, )(double3 x);
3684-
__bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _v4f64, )(double4 x);
3685-
__bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _v8f64, )(double8 x);
3686-
__bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsInf, _v16f64, )(double16 x);
3687-
#endif // defined(cl_khr_fp64)
3688-
3689-
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _f16, )(half x);
3690-
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _f32, )(float x);
3691-
__bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _v2f16, )(half2 x);
3692-
__bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _v2f32, )(float2 x);
3693-
__bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _v3f16, )(half3 x);
3694-
__bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _v3f32, )(float3 x);
3695-
__bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _v4f16, )(half4 x);
3696-
__bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _v4f32, )(float4 x);
3697-
__bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _v8f16, )(half8 x);
3698-
__bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _v8f32, )(float8 x);
3699-
__bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _v16f16, )(half16 x);
3700-
__bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _v16f32, )(float16 x);
3701-
#if defined(cl_khr_fp64)
3702-
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _f64, )(double x);
3703-
__bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _v2f64, )(double2 x);
3704-
__bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _v3f64, )(double3 x);
3705-
__bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _v4f64, )(double4 x);
3706-
__bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _v8f64, )(double8 x);
3707-
__bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsFinite, _v16f64, )(double16 x);
3708-
#endif // defined(cl_khr_fp64)
3709-
3710-
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _f16, )(half x);
3711-
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _f32, )(float x);
3712-
__bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _v2f16, )(half2 x);
3713-
__bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _v2f32, )(float2 x);
3714-
__bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _v3f16, )(half3 x);
3715-
__bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _v3f32, )(float3 x);
3716-
__bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _v4f16, )(half4 x);
3717-
__bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _v4f32, )(float4 x);
3718-
__bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _v8f16, )(half8 x);
3719-
__bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _v8f32, )(float8 x);
3720-
__bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _v16f16, )(half16 x);
3721-
__bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _v16f32, )(float16 x);
3722-
#if defined(cl_khr_fp64)
3723-
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _f64, )(double x);
3724-
__bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _v2f64, )(double2 x);
3725-
__bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _v3f64, )(double3 x);
3726-
__bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _v4f64, )(double4 x);
3727-
__bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _v8f64, )(double8 x);
3728-
__bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(IsNormal, _v16f64, )(double16 x);
3729-
#endif // defined(cl_khr_fp64)
3730-
3731-
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _f16, )(half x);
3732-
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _f32, )(float x);
3733-
__bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _v2f16, )(half2 x);
3734-
__bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _v2f32, )(float2 x);
3735-
__bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _v3f16, )(half3 x);
3736-
__bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _v3f32, )(float3 x);
3737-
__bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _v4f16, )(half4 x);
3738-
__bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _v4f32, )(float4 x);
3739-
__bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _v8f16, )(half8 x);
3740-
__bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _v8f32, )(float8 x);
3741-
__bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _v16f16, )(half16 x);
3742-
__bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _v16f32, )(float16 x);
3743-
#if defined(cl_khr_fp64)
3744-
bool SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _f64, )(double x);
3745-
__bool2 SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _v2f64, )(double2 x);
3746-
__bool3 SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _v3f64, )(double3 x);
3747-
__bool4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _v4f64, )(double4 x);
3748-
__bool8 SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _v8f64, )(double8 x);
3749-
__bool16 SPIRV_OVERLOADABLE SPIRV_BUILTIN(SignBitSet, _v16f64, )(double16 x);
3647+
bool __builtin_spirv_OpIsNan_f16(half x);
3648+
bool __builtin_spirv_OpIsNan_f32(float x);
3649+
__bool2 __builtin_spirv_OpIsNan_v2f16(half2 x);
3650+
__bool2 __builtin_spirv_OpIsNan_v2f32(float2 x);
3651+
__bool3 __builtin_spirv_OpIsNan_v3f16(half3 x);
3652+
__bool3 __builtin_spirv_OpIsNan_v3f32(float3 x);
3653+
__bool4 __builtin_spirv_OpIsNan_v4f16(half4 x);
3654+
__bool4 __builtin_spirv_OpIsNan_v4f32(float4 x);
3655+
__bool8 __builtin_spirv_OpIsNan_v8f16(half8 x);
3656+
__bool8 __builtin_spirv_OpIsNan_v8f32(float8 x);
3657+
__bool16 __builtin_spirv_OpIsNan_v16f16(half16 x);
3658+
__bool16 __builtin_spirv_OpIsNan_v16f32(float16 x);
3659+
#if defined(cl_khr_fp64)
3660+
bool __builtin_spirv_OpIsNan_f64(double x);
3661+
__bool2 __builtin_spirv_OpIsNan_v2f64(double2 x);
3662+
__bool3 __builtin_spirv_OpIsNan_v3f64(double3 x);
3663+
__bool4 __builtin_spirv_OpIsNan_v4f64(double4 x);
3664+
__bool8 __builtin_spirv_OpIsNan_v8f64(double8 x);
3665+
__bool16 __builtin_spirv_OpIsNan_v16f64(double16 x);
3666+
#endif // defined(cl_khr_fp64)
3667+
3668+
bool __builtin_spirv_OpIsInf_f16(half x);
3669+
bool __builtin_spirv_OpIsInf_f32(float x);
3670+
__bool2 __builtin_spirv_OpIsInf_v2f16(half2 x);
3671+
__bool2 __builtin_spirv_OpIsInf_v2f32(float2 x);
3672+
__bool3 __builtin_spirv_OpIsInf_v3f16(half3 x);
3673+
__bool3 __builtin_spirv_OpIsInf_v3f32(float3 x);
3674+
__bool4 __builtin_spirv_OpIsInf_v4f16(half4 x);
3675+
__bool4 __builtin_spirv_OpIsInf_v4f32(float4 x);
3676+
__bool8 __builtin_spirv_OpIsInf_v8f16(half8 x);
3677+
__bool8 __builtin_spirv_OpIsInf_v8f32(float8 x);
3678+
__bool16 __builtin_spirv_OpIsInf_v16f16(half16 x);
3679+
__bool16 __builtin_spirv_OpIsInf_v16f32(float16 x);
3680+
#if defined(cl_khr_fp64)
3681+
bool __builtin_spirv_OpIsInf_f64(double x);
3682+
__bool2 __builtin_spirv_OpIsInf_v2f64(double2 x);
3683+
__bool3 __builtin_spirv_OpIsInf_v3f64(double3 x);
3684+
__bool4 __builtin_spirv_OpIsInf_v4f64(double4 x);
3685+
__bool8 __builtin_spirv_OpIsInf_v8f64(double8 x);
3686+
__bool16 __builtin_spirv_OpIsInf_v16f64(double16 x);
3687+
#endif // defined(cl_khr_fp64)
3688+
3689+
bool __builtin_spirv_OpIsFinite_f16(half x);
3690+
bool __builtin_spirv_OpIsFinite_f32(float x);
3691+
__bool2 __builtin_spirv_OpIsFinite_v2f16(half2 x);
3692+
__bool2 __builtin_spirv_OpIsFinite_v2f32(float2 x);
3693+
__bool3 __builtin_spirv_OpIsFinite_v3f16(half3 x);
3694+
__bool3 __builtin_spirv_OpIsFinite_v3f32(float3 x);
3695+
__bool4 __builtin_spirv_OpIsFinite_v4f16(half4 x);
3696+
__bool4 __builtin_spirv_OpIsFinite_v4f32(float4 x);
3697+
__bool8 __builtin_spirv_OpIsFinite_v8f16(half8 x);
3698+
__bool8 __builtin_spirv_OpIsFinite_v8f32(float8 x);
3699+
__bool16 __builtin_spirv_OpIsFinite_v16f16(half16 x);
3700+
__bool16 __builtin_spirv_OpIsFinite_v16f32(float16 x);
3701+
#if defined(cl_khr_fp64)
3702+
bool __builtin_spirv_OpIsFinite_f64(double x);
3703+
__bool2 __builtin_spirv_OpIsFinite_v2f64(double2 x);
3704+
__bool3 __builtin_spirv_OpIsFinite_v3f64(double3 x);
3705+
__bool4 __builtin_spirv_OpIsFinite_v4f64(double4 x);
3706+
__bool8 __builtin_spirv_OpIsFinite_v8f64(double8 x);
3707+
__bool16 __builtin_spirv_OpIsFinite_v16f64(double16 x);
3708+
#endif // defined(cl_khr_fp64)
3709+
3710+
bool __builtin_spirv_OpIsNormal_f16(half x);
3711+
bool __builtin_spirv_OpIsNormal_f32(float x);
3712+
__bool2 __builtin_spirv_OpIsNormal_v2f16(half2 x);
3713+
__bool2 __builtin_spirv_OpIsNormal_v2f32(float2 x);
3714+
__bool3 __builtin_spirv_OpIsNormal_v3f16(half3 x);
3715+
__bool3 __builtin_spirv_OpIsNormal_v3f32(float3 x);
3716+
__bool4 __builtin_spirv_OpIsNormal_v4f16(half4 x);
3717+
__bool4 __builtin_spirv_OpIsNormal_v4f32(float4 x);
3718+
__bool8 __builtin_spirv_OpIsNormal_v8f16(half8 x);
3719+
__bool8 __builtin_spirv_OpIsNormal_v8f32(float8 x);
3720+
__bool16 __builtin_spirv_OpIsNormal_v16f16(half16 x);
3721+
__bool16 __builtin_spirv_OpIsNormal_v16f32(float16 x);
3722+
#if defined(cl_khr_fp64)
3723+
bool __builtin_spirv_OpIsNormal_f64(double x);
3724+
__bool2 __builtin_spirv_OpIsNormal_v2f64(double2 x);
3725+
__bool3 __builtin_spirv_OpIsNormal_v3f64(double3 x);
3726+
__bool4 __builtin_spirv_OpIsNormal_v4f64(double4 x);
3727+
__bool8 __builtin_spirv_OpIsNormal_v8f64(double8 x);
3728+
__bool16 __builtin_spirv_OpIsNormal_v16f64(double16 x);
3729+
#endif // defined(cl_khr_fp64)
3730+
3731+
bool __builtin_spirv_OpSignBitSet_f16(half x);
3732+
bool __builtin_spirv_OpSignBitSet_f32(float x);
3733+
__bool2 __builtin_spirv_OpSignBitSet_v2f16(half2 x);
3734+
__bool2 __builtin_spirv_OpSignBitSet_v2f32(float2 x);
3735+
__bool3 __builtin_spirv_OpSignBitSet_v3f16(half3 x);
3736+
__bool3 __builtin_spirv_OpSignBitSet_v3f32(float3 x);
3737+
__bool4 __builtin_spirv_OpSignBitSet_v4f16(half4 x);
3738+
__bool4 __builtin_spirv_OpSignBitSet_v4f32(float4 x);
3739+
__bool8 __builtin_spirv_OpSignBitSet_v8f16(half8 x);
3740+
__bool8 __builtin_spirv_OpSignBitSet_v8f32(float8 x);
3741+
__bool16 __builtin_spirv_OpSignBitSet_v16f16(half16 x);
3742+
__bool16 __builtin_spirv_OpSignBitSet_v16f32(float16 x);
3743+
#if defined(cl_khr_fp64)
3744+
bool __builtin_spirv_OpSignBitSet_f64(double x);
3745+
__bool2 __builtin_spirv_OpSignBitSet_v2f64(double2 x);
3746+
__bool3 __builtin_spirv_OpSignBitSet_v3f64(double3 x);
3747+
__bool4 __builtin_spirv_OpSignBitSet_v4f64(double4 x);
3748+
__bool8 __builtin_spirv_OpSignBitSet_v8f64(double8 x);
3749+
__bool16 __builtin_spirv_OpSignBitSet_v16f64(double16 x);
37503750
#endif // defined(cl_khr_fp64)
37513751

37523752
bool __builtin_spirv_OpLessOrGreater_f16_f16(half x, half y);

IGC/BiFModule/Implementation/ExternalLibraries/libclc/doubles.cl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1260,7 +1260,7 @@ INLINE double libclc_cos_f64(double x) {
12601260
int2 c = as_int2(regn & 1 ? sc.lo : sc.hi);
12611261
c.hi ^= (regn > 1) << 31;
12621262

1263-
return SPIRV_BUILTIN(IsNan, _f64, )(x) | SPIRV_BUILTIN(IsInf, _f64, )(x) ? as_double(QNANBITPATT_DP64) : as_double(c);
1263+
return __builtin_spirv_OpIsNan_f64(x) | __builtin_spirv_OpIsInf_f64(x) ? as_double(QNANBITPATT_DP64) : as_double(c);
12641264
}
12651265

12661266
/*################################## libclc_cosh_f64 ##############################################*/
@@ -1590,8 +1590,8 @@ INLINE double libclc_log_f64(double x)
15901590
double ret_far = r1 + r2;
15911591
double ret = is_near ? ret_near : ret_far;
15921592

1593-
ret = SPIRV_BUILTIN(IsInf, _f64, )(x) ? as_double(PINFBITPATT_DP64) : ret;
1594-
ret = SPIRV_BUILTIN(IsNan, _f64, )(x) | (x < 0.0) ? as_double(QNANBITPATT_DP64) : ret;
1593+
ret = __builtin_spirv_OpIsInf_f64(x) ? as_double(PINFBITPATT_DP64) : ret;
1594+
ret = __builtin_spirv_OpIsNan_f64(x) | (x < 0.0) ? as_double(QNANBITPATT_DP64) : ret;
15951595
ret = x == 0.0 ? as_double(NINFBITPATT_DP64) : ret;
15961596
return ret;
15971597
}
@@ -1694,7 +1694,7 @@ INLINE double libclc_sin_f64(double x) {
16941694
int2 s = as_int2(regn & 1 ? sc.hi : sc.lo);
16951695
s.hi ^= ((regn > 1) << 31) ^ ((x < 0.0) << 31);
16961696

1697-
return SPIRV_BUILTIN(IsNan, _f64, )( x ) | SPIRV_BUILTIN(IsInf, _f64, )( x ) ? as_double(QNANBITPATT_DP64) : as_double(s);
1697+
return __builtin_spirv_OpIsNan_f64( x ) | __builtin_spirv_OpIsInf_f64( x ) ? as_double(QNANBITPATT_DP64) : as_double(s);
16981698
}
16991699

17001700
/*################################## libclc_sinpi_f64 #####################################################*/

IGC/BiFModule/Implementation/ExternalLibraries/libclc/normalize.cl

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ float2 __builtin_spirv_OpenCL_normalize_v2f32(float2 p) {
121121
p *= 0x1.0p-65f;
122122
l2 = SPIRV_BUILTIN(Dot, _v2f32_v2f32, )(p, p);
123123
if (l2 == INFINITY) {
124-
p = __builtin_spirv_OpenCL_copysign_v2f32_v2f32(__builtin_spirv_OpenCL_select_v2f32_v2f32_v2i32((float2)0.0F, (float2)1.0F, __convert_uint2(SPIRV_BUILTIN(IsInf, _v2f32, )(p))), p);
124+
p = __builtin_spirv_OpenCL_copysign_v2f32_v2f32(__builtin_spirv_OpenCL_select_v2f32_v2f32_v2i32((float2)0.0F, (float2)1.0F, __convert_uint2(__builtin_spirv_OpIsInf_v2f32(p))), p);
125125
l2 = SPIRV_BUILTIN(Dot, _v2f32_v2f32, )(p, p);
126126
}
127127
}
@@ -141,7 +141,7 @@ float3 __builtin_spirv_OpenCL_normalize_v3f32(float3 p) {
141141
p *= 0x1.0p-66f;
142142
l2 = SPIRV_BUILTIN(Dot, _v3f32_v3f32, )(p, p);
143143
if (l2 == INFINITY) {
144-
p = __builtin_spirv_OpenCL_copysign_v3f32_v3f32(__builtin_spirv_OpenCL_select_v3f32_v3f32_v3i32((float3)0.0F, (float3)1.0F, __convert_uint3(SPIRV_BUILTIN(IsInf, _v3f32, )(p))), p);
144+
p = __builtin_spirv_OpenCL_copysign_v3f32_v3f32(__builtin_spirv_OpenCL_select_v3f32_v3f32_v3i32((float3)0.0F, (float3)1.0F, __convert_uint3(__builtin_spirv_OpIsInf_v3f32(p))), p);
145145
l2 = SPIRV_BUILTIN(Dot, _v3f32_v3f32, )(p, p);
146146
}
147147
}
@@ -161,7 +161,7 @@ float4 __builtin_spirv_OpenCL_normalize_v4f32(float4 p) {
161161
p *= 0x1.0p-66f;
162162
l2 = SPIRV_BUILTIN(Dot, _v4f32_v4f32, )(p, p);
163163
if (l2 == INFINITY) {
164-
p = __builtin_spirv_OpenCL_copysign_v4f32_v4f32(__builtin_spirv_OpenCL_select_v4f32_v4f32_v4i32((float4)0.0F, (float4)1.0F, __convert_uint4(SPIRV_BUILTIN(IsInf, _v4f32, )(p))), p);
164+
p = __builtin_spirv_OpenCL_copysign_v4f32_v4f32(__builtin_spirv_OpenCL_select_v4f32_v4f32_v4i32((float4)0.0F, (float4)1.0F, __convert_uint4(__builtin_spirv_OpIsInf_v4f32(p))), p);
165165
l2 = SPIRV_BUILTIN(Dot, _v4f32_v4f32, )(p, p);
166166
}
167167
}
@@ -189,7 +189,7 @@ double2 __builtin_spirv_OpenCL_normalize_v2f64(double2 p) {
189189
p *= 0x1.0p-513;
190190
l2 = SPIRV_BUILTIN(Dot, _v2f64_v2f64, )(p, p);
191191
if (l2 == INFINITY) {
192-
p = __builtin_spirv_OpenCL_copysign_v2f64_v2f64(__builtin_spirv_OpenCL_select_v2f64_v2f64_v2i64((double2)0.0, (double2)1.0, __convert_ulong2(SPIRV_BUILTIN(IsInf, _v2f64, )(p))), p);
192+
p = __builtin_spirv_OpenCL_copysign_v2f64_v2f64(__builtin_spirv_OpenCL_select_v2f64_v2f64_v2i64((double2)0.0, (double2)1.0, __convert_ulong2(__builtin_spirv_OpIsInf_v2f64(p))), p);
193193
l2 = SPIRV_BUILTIN(Dot, _v2f64_v2f64, )(p, p);
194194
}
195195
}
@@ -209,7 +209,7 @@ double3 __builtin_spirv_OpenCL_normalize_v3f64(double3 p) {
209209
p *= 0x1.0p-514;
210210
l2 = SPIRV_BUILTIN(Dot, _v3f64_v3f64, )(p, p);
211211
if (l2 == INFINITY) {
212-
p = __builtin_spirv_OpenCL_copysign_v3f64_v3f64(__builtin_spirv_OpenCL_select_v3f64_v3f64_v3i64((double3)0.0, (double3)1.0, __convert_ulong3(SPIRV_BUILTIN(IsInf, _v3f64, )(p))), p);
212+
p = __builtin_spirv_OpenCL_copysign_v3f64_v3f64(__builtin_spirv_OpenCL_select_v3f64_v3f64_v3i64((double3)0.0, (double3)1.0, __convert_ulong3(__builtin_spirv_OpIsInf_v3f64(p))), p);
213213
l2 = SPIRV_BUILTIN(Dot, _v3f64_v3f64, )(p, p);
214214
}
215215
}
@@ -229,7 +229,7 @@ double4 __builtin_spirv_OpenCL_normalize_v4f64(double4 p) {
229229
p *= 0x1.0p-514;
230230
l2 = SPIRV_BUILTIN(Dot, _v4f64_v4f64, )(p, p);
231231
if (l2 == INFINITY) {
232-
p = __builtin_spirv_OpenCL_copysign_v4f64_v4f64(__builtin_spirv_OpenCL_select_v4f64_v4f64_v4i64((double4)0.0, (double4)1.0, __convert_ulong4(SPIRV_BUILTIN(IsInf, _v4f64, )(p))), p);
232+
p = __builtin_spirv_OpenCL_copysign_v4f64_v4f64(__builtin_spirv_OpenCL_select_v4f64_v4f64_v4i64((double4)0.0, (double4)1.0, __convert_ulong4(__builtin_spirv_OpIsInf_v4f64(p))), p);
233233
l2 = SPIRV_BUILTIN(Dot, _v4f64_v4f64, )(p, p);
234234
}
235235
}
@@ -258,7 +258,7 @@ half2 __builtin_spirv_OpenCL_normalize_v2f16(half2 p ){
258258
p *= HALF_MIN_SQRT;
259259
l2 = SPIRV_BUILTIN(Dot, _v2f16_v2f16, )(p, p);
260260
if (l2 == INFINITY) {
261-
p = __builtin_spirv_OpenCL_copysign_v2f16_v2f16(__builtin_spirv_OpenCL_select_v2f16_v2f16_v2i16((half2)0.0F, (half2)1.0F, __convert_ushort2(SPIRV_BUILTIN(IsInf, _v2f16, )(p))), p);
261+
p = __builtin_spirv_OpenCL_copysign_v2f16_v2f16(__builtin_spirv_OpenCL_select_v2f16_v2f16_v2i16((half2)0.0F, (half2)1.0F, __convert_ushort2(__builtin_spirv_OpIsInf_v2f16(p))), p);
262262
l2 = SPIRV_BUILTIN(Dot, _v2f16_v2f16, )(p, p);
263263
}
264264
}
@@ -278,7 +278,7 @@ half3 __builtin_spirv_OpenCL_normalize_v3f16(half3 p ){
278278
p *= HALF_MIN_SQRT;
279279
l2 = SPIRV_BUILTIN(Dot, _v3f16_v3f16, )(p, p);
280280
if (l2 == INFINITY) {
281-
p = __builtin_spirv_OpenCL_copysign_v3f16_v3f16(__builtin_spirv_OpenCL_select_v3f16_v3f16_v3i16((half3)0.0F, (half3)1.0F, __convert_ushort3(SPIRV_BUILTIN(IsInf, _v3f16, )(p))), p);
281+
p = __builtin_spirv_OpenCL_copysign_v3f16_v3f16(__builtin_spirv_OpenCL_select_v3f16_v3f16_v3i16((half3)0.0F, (half3)1.0F, __convert_ushort3(__builtin_spirv_OpIsInf_v3f16(p))), p);
282282
l2 = SPIRV_BUILTIN(Dot, _v3f16_v3f16, )(p, p);
283283
}
284284
}
@@ -298,7 +298,7 @@ half4 __builtin_spirv_OpenCL_normalize_v4f16(half4 p ){
298298
p *= HALF_MIN_SQRT;
299299
l2 = SPIRV_BUILTIN(Dot, _v4f16_v4f16, )(p, p);
300300
if (l2 == INFINITY) {
301-
p = __builtin_spirv_OpenCL_copysign_v4f16_v4f16(__builtin_spirv_OpenCL_select_v4f16_v4f16_v4i16((half4)0.0F, (half4)1.0F, __convert_ushort4(SPIRV_BUILTIN(IsInf, _v4f16, )(p))), p);
301+
p = __builtin_spirv_OpenCL_copysign_v4f16_v4f16(__builtin_spirv_OpenCL_select_v4f16_v4f16_v4i16((half4)0.0F, (half4)1.0F, __convert_ushort4(__builtin_spirv_OpIsInf_v4f16(p))), p);
302302
l2 = SPIRV_BUILTIN(Dot, _v4f16_v4f16, )(p, p);
303303
}
304304
}

IGC/BiFModule/Implementation/ExternalLibraries/sun/sun_pow.cl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,7 @@ double sun_pow(double x, double y)
226226
/* special value of x */
227227
if(lx==0) {
228228
if(ix==0x7ff00000||ix==0||ix==0x3ff00000){
229-
if(SPIRV_BUILTIN(SignBitSet, _f64, )(ax)) ax = -ax;
229+
if(__builtin_spirv_OpSignBitSet_f64(ax)) ax = -ax;
230230
z = ax; /*x is +-0,+-inf,+-1*/
231231
if(hy<0) z = one/z; /* z = (1/|x|) */
232232
if(hx<0) {

0 commit comments

Comments
 (0)