[clang][modules] Don't prevent translation of FW_Private includes when explicitly...
[llvm-project.git] / libclc / generic / lib / relational / isgreaterequal.cl
blob128a1d0de4eccff1cdf47a9d0cd021a6718e9c38
1 #include <clc/clc.h>
2 #include "relational.h"
4 //Note: It would be nice to use __builtin_isgreaterequal with vector inputs, but it seems to only take scalar values as
5 // input, which will produce incorrect output for vector input types.
7 _CLC_DEFINE_RELATIONAL_BINARY(int, isgreaterequal, __builtin_isgreaterequal, float, float)
9 #ifdef cl_khr_fp64
11 #pragma OPENCL EXTENSION cl_khr_fp64 : enable
13 // The scalar version of isgreaterequal(double, double) returns an int, but the vector versions
14 // return long.
16 _CLC_DEF _CLC_OVERLOAD int isgreaterequal(double x, double y){
17 return __builtin_isgreaterequal(x, y);
20 _CLC_DEFINE_RELATIONAL_BINARY_VEC_ALL(long, isgreaterequal, double, double)
22 #endif
23 #ifdef cl_khr_fp16
25 #pragma OPENCL EXTENSION cl_khr_fp16 : enable
27 // The scalar version of isgreaterequal(half, half) returns an int, but the vector versions
28 // return short.
30 _CLC_DEF _CLC_OVERLOAD int isgreaterequal(half x, half y){
31 return __builtin_isgreaterequal(x, y);
34 _CLC_DEFINE_RELATIONAL_BINARY_VEC_ALL(short, isgreaterequal, half, half)
36 #endif