1 #include
<clc
/internal
/clc.h
>
2 #include
<clc
/relational
/relational.h
>
4 _CLC_DEFINE_RELATIONAL_UNARY
(int, __clc_isnan
, __builtin_isnan
, float
)
8 #pragma OPENCL EXTENSION cl_khr_fp64
: enable
10 // The scalar version of __clc_isnan
(double) returns an int
, but the vector
11 // versions return long.
12 _CLC_DEF _CLC_OVERLOAD int __clc_isnan
(double x
) { return __builtin_isnan
(x); }
14 _CLC_DEFINE_RELATIONAL_UNARY_VEC_ALL
(long, __clc_isnan
, double
)
20 #pragma OPENCL EXTENSION cl_khr_fp16
: enable
22 // The scalar version of __clc_isnan
(half) returns an int
, but the vector
23 // versions return short.
24 _CLC_DEF _CLC_OVERLOAD int __clc_isnan
(half x
) { return __builtin_isnan
(x); }
26 _CLC_DEFINE_RELATIONAL_UNARY_VEC_ALL
(short, __clc_isnan
, half
)