[clang][modules] Don't prevent translation of FW_Private includes when explicitly...
[llvm-project.git] / libclc / generic / lib / relational / isfinite.cl
blob15b92fa41296e69b73f4474d0d70be6f1be3737e
1 #include <clc/clc.h>
2 #include "relational.h"
4 _CLC_DEFINE_RELATIONAL_UNARY(int, isfinite, __builtin_isfinite, float)
6 #ifdef cl_khr_fp64
8 #pragma OPENCL EXTENSION cl_khr_fp64 : enable
10 // The scalar version of isfinite(double) returns an int, but the vector versions
11 // return long.
12 _CLC_DEF _CLC_OVERLOAD int isfinite(double x) {
13 return __builtin_isfinite(x);
16 _CLC_DEFINE_RELATIONAL_UNARY_VEC_ALL(long, isfinite, double)
18 #endif
19 #ifdef cl_khr_fp16
21 #pragma OPENCL EXTENSION cl_khr_fp16 : enable
23 // The scalar version of isfinite(half) returns an int, but the vector versions
24 // return short.
25 _CLC_DEF _CLC_OVERLOAD int isfinite(half x) {
26 return __builtin_isfinite(x);
29 _CLC_DEFINE_RELATIONAL_UNARY_VEC_ALL(short, isfinite, half)
31 #endif