|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef OPENCLstd_H |
|
#define OPENCLstd_H |
|
|
|
#ifdef __cplusplus |
|
namespace OpenCLLIB { |
|
|
|
enum Entrypoints { |
|
|
|
|
|
Acos = 0, |
|
Acosh = 1, |
|
Acospi = 2, |
|
Asin = 3, |
|
Asinh = 4, |
|
Asinpi = 5, |
|
Atan = 6, |
|
Atan2 = 7, |
|
Atanh = 8, |
|
Atanpi = 9, |
|
Atan2pi = 10, |
|
Cbrt = 11, |
|
Ceil = 12, |
|
Copysign = 13, |
|
Cos = 14, |
|
Cosh = 15, |
|
Cospi = 16, |
|
Erfc = 17, |
|
Erf = 18, |
|
Exp = 19, |
|
Exp2 = 20, |
|
Exp10 = 21, |
|
Expm1 = 22, |
|
Fabs = 23, |
|
Fdim = 24, |
|
Floor = 25, |
|
Fma = 26, |
|
Fmax = 27, |
|
Fmin = 28, |
|
Fmod = 29, |
|
Fract = 30, |
|
Frexp = 31, |
|
Hypot = 32, |
|
Ilogb = 33, |
|
Ldexp = 34, |
|
Lgamma = 35, |
|
Lgamma_r = 36, |
|
Log = 37, |
|
Log2 = 38, |
|
Log10 = 39, |
|
Log1p = 40, |
|
Logb = 41, |
|
Mad = 42, |
|
Maxmag = 43, |
|
Minmag = 44, |
|
Modf = 45, |
|
Nan = 46, |
|
Nextafter = 47, |
|
Pow = 48, |
|
Pown = 49, |
|
Powr = 50, |
|
Remainder = 51, |
|
Remquo = 52, |
|
Rint = 53, |
|
Rootn = 54, |
|
Round = 55, |
|
Rsqrt = 56, |
|
Sin = 57, |
|
Sincos = 58, |
|
Sinh = 59, |
|
Sinpi = 60, |
|
Sqrt = 61, |
|
Tan = 62, |
|
Tanh = 63, |
|
Tanpi = 64, |
|
Tgamma = 65, |
|
Trunc = 66, |
|
Half_cos = 67, |
|
Half_divide = 68, |
|
Half_exp = 69, |
|
Half_exp2 = 70, |
|
Half_exp10 = 71, |
|
Half_log = 72, |
|
Half_log2 = 73, |
|
Half_log10 = 74, |
|
Half_powr = 75, |
|
Half_recip = 76, |
|
Half_rsqrt = 77, |
|
Half_sin = 78, |
|
Half_sqrt = 79, |
|
Half_tan = 80, |
|
Native_cos = 81, |
|
Native_divide = 82, |
|
Native_exp = 83, |
|
Native_exp2 = 84, |
|
Native_exp10 = 85, |
|
Native_log = 86, |
|
Native_log2 = 87, |
|
Native_log10 = 88, |
|
Native_powr = 89, |
|
Native_recip = 90, |
|
Native_rsqrt = 91, |
|
Native_sin = 92, |
|
Native_sqrt = 93, |
|
Native_tan = 94, |
|
|
|
|
|
SAbs = 141, |
|
SAbs_diff = 142, |
|
SAdd_sat = 143, |
|
UAdd_sat = 144, |
|
SHadd = 145, |
|
UHadd = 146, |
|
SRhadd = 147, |
|
URhadd = 148, |
|
SClamp = 149, |
|
UClamp = 150, |
|
Clz = 151, |
|
Ctz = 152, |
|
SMad_hi = 153, |
|
UMad_sat = 154, |
|
SMad_sat = 155, |
|
SMax = 156, |
|
UMax = 157, |
|
SMin = 158, |
|
UMin = 159, |
|
SMul_hi = 160, |
|
Rotate = 161, |
|
SSub_sat = 162, |
|
USub_sat = 163, |
|
U_Upsample = 164, |
|
S_Upsample = 165, |
|
Popcount = 166, |
|
SMad24 = 167, |
|
UMad24 = 168, |
|
SMul24 = 169, |
|
UMul24 = 170, |
|
UAbs = 201, |
|
UAbs_diff = 202, |
|
UMul_hi = 203, |
|
UMad_hi = 204, |
|
|
|
|
|
FClamp = 95, |
|
Degrees = 96, |
|
FMax_common = 97, |
|
FMin_common = 98, |
|
Mix = 99, |
|
Radians = 100, |
|
Step = 101, |
|
Smoothstep = 102, |
|
Sign = 103, |
|
|
|
|
|
Cross = 104, |
|
Distance = 105, |
|
Length = 106, |
|
Normalize = 107, |
|
Fast_distance = 108, |
|
Fast_length = 109, |
|
Fast_normalize = 110, |
|
|
|
|
|
Bitselect = 186, |
|
Select = 187, |
|
|
|
|
|
Vloadn = 171, |
|
Vstoren = 172, |
|
Vload_half = 173, |
|
Vload_halfn = 174, |
|
Vstore_half = 175, |
|
Vstore_half_r = 176, |
|
Vstore_halfn = 177, |
|
Vstore_halfn_r = 178, |
|
Vloada_halfn = 179, |
|
Vstorea_halfn = 180, |
|
Vstorea_halfn_r = 181, |
|
|
|
|
|
Shuffle = 182, |
|
Shuffle2 = 183, |
|
|
|
|
|
Printf = 184, |
|
Prefetch = 185, |
|
}; |
|
|
|
} |
|
|
|
#else |
|
|
|
enum OpenCLstd_Entrypoints { |
|
|
|
|
|
OpenCLstd_Acos = 0, |
|
OpenCLstd_Acosh = 1, |
|
OpenCLstd_Acospi = 2, |
|
OpenCLstd_Asin = 3, |
|
OpenCLstd_Asinh = 4, |
|
OpenCLstd_Asinpi = 5, |
|
OpenCLstd_Atan = 6, |
|
OpenCLstd_Atan2 = 7, |
|
OpenCLstd_Atanh = 8, |
|
OpenCLstd_Atanpi = 9, |
|
OpenCLstd_Atan2pi = 10, |
|
OpenCLstd_Cbrt = 11, |
|
OpenCLstd_Ceil = 12, |
|
OpenCLstd_Copysign = 13, |
|
OpenCLstd_Cos = 14, |
|
OpenCLstd_Cosh = 15, |
|
OpenCLstd_Cospi = 16, |
|
OpenCLstd_Erfc = 17, |
|
OpenCLstd_Erf = 18, |
|
OpenCLstd_Exp = 19, |
|
OpenCLstd_Exp2 = 20, |
|
OpenCLstd_Exp10 = 21, |
|
OpenCLstd_Expm1 = 22, |
|
OpenCLstd_Fabs = 23, |
|
OpenCLstd_Fdim = 24, |
|
OpenCLstd_Floor = 25, |
|
OpenCLstd_Fma = 26, |
|
OpenCLstd_Fmax = 27, |
|
OpenCLstd_Fmin = 28, |
|
OpenCLstd_Fmod = 29, |
|
OpenCLstd_Fract = 30, |
|
OpenCLstd_Frexp = 31, |
|
OpenCLstd_Hypot = 32, |
|
OpenCLstd_Ilogb = 33, |
|
OpenCLstd_Ldexp = 34, |
|
OpenCLstd_Lgamma = 35, |
|
OpenCLstd_Lgamma_r = 36, |
|
OpenCLstd_Log = 37, |
|
OpenCLstd_Log2 = 38, |
|
OpenCLstd_Log10 = 39, |
|
OpenCLstd_Log1p = 40, |
|
OpenCLstd_Logb = 41, |
|
OpenCLstd_Mad = 42, |
|
OpenCLstd_Maxmag = 43, |
|
OpenCLstd_Minmag = 44, |
|
OpenCLstd_Modf = 45, |
|
OpenCLstd_Nan = 46, |
|
OpenCLstd_Nextafter = 47, |
|
OpenCLstd_Pow = 48, |
|
OpenCLstd_Pown = 49, |
|
OpenCLstd_Powr = 50, |
|
OpenCLstd_Remainder = 51, |
|
OpenCLstd_Remquo = 52, |
|
OpenCLstd_Rint = 53, |
|
OpenCLstd_Rootn = 54, |
|
OpenCLstd_Round = 55, |
|
OpenCLstd_Rsqrt = 56, |
|
OpenCLstd_Sin = 57, |
|
OpenCLstd_Sincos = 58, |
|
OpenCLstd_Sinh = 59, |
|
OpenCLstd_Sinpi = 60, |
|
OpenCLstd_Sqrt = 61, |
|
OpenCLstd_Tan = 62, |
|
OpenCLstd_Tanh = 63, |
|
OpenCLstd_Tanpi = 64, |
|
OpenCLstd_Tgamma = 65, |
|
OpenCLstd_Trunc = 66, |
|
OpenCLstd_Half_cos = 67, |
|
OpenCLstd_Half_divide = 68, |
|
OpenCLstd_Half_exp = 69, |
|
OpenCLstd_Half_exp2 = 70, |
|
OpenCLstd_Half_exp10 = 71, |
|
OpenCLstd_Half_log = 72, |
|
OpenCLstd_Half_log2 = 73, |
|
OpenCLstd_Half_log10 = 74, |
|
OpenCLstd_Half_powr = 75, |
|
OpenCLstd_Half_recip = 76, |
|
OpenCLstd_Half_rsqrt = 77, |
|
OpenCLstd_Half_sin = 78, |
|
OpenCLstd_Half_sqrt = 79, |
|
OpenCLstd_Half_tan = 80, |
|
OpenCLstd_Native_cos = 81, |
|
OpenCLstd_Native_divide = 82, |
|
OpenCLstd_Native_exp = 83, |
|
OpenCLstd_Native_exp2 = 84, |
|
OpenCLstd_Native_exp10 = 85, |
|
OpenCLstd_Native_log = 86, |
|
OpenCLstd_Native_log2 = 87, |
|
OpenCLstd_Native_log10 = 88, |
|
OpenCLstd_Native_powr = 89, |
|
OpenCLstd_Native_recip = 90, |
|
OpenCLstd_Native_rsqrt = 91, |
|
OpenCLstd_Native_sin = 92, |
|
OpenCLstd_Native_sqrt = 93, |
|
OpenCLstd_Native_tan = 94, |
|
|
|
|
|
OpenCLstd_SAbs = 141, |
|
OpenCLstd_SAbs_diff = 142, |
|
OpenCLstd_SAdd_sat = 143, |
|
OpenCLstd_UAdd_sat = 144, |
|
OpenCLstd_SHadd = 145, |
|
OpenCLstd_UHadd = 146, |
|
OpenCLstd_SRhadd = 147, |
|
OpenCLstd_URhadd = 148, |
|
OpenCLstd_SClamp = 149, |
|
OpenCLstd_UClamp = 150, |
|
OpenCLstd_Clz = 151, |
|
OpenCLstd_Ctz = 152, |
|
OpenCLstd_SMad_hi = 153, |
|
OpenCLstd_UMad_sat = 154, |
|
OpenCLstd_SMad_sat = 155, |
|
OpenCLstd_SMax = 156, |
|
OpenCLstd_UMax = 157, |
|
OpenCLstd_SMin = 158, |
|
OpenCLstd_UMin = 159, |
|
OpenCLstd_SMul_hi = 160, |
|
OpenCLstd_Rotate = 161, |
|
OpenCLstd_SSub_sat = 162, |
|
OpenCLstd_USub_sat = 163, |
|
OpenCLstd_U_Upsample = 164, |
|
OpenCLstd_S_Upsample = 165, |
|
OpenCLstd_Popcount = 166, |
|
OpenCLstd_SMad24 = 167, |
|
OpenCLstd_UMad24 = 168, |
|
OpenCLstd_SMul24 = 169, |
|
OpenCLstd_UMul24 = 170, |
|
OpenCLstd_UAbs = 201, |
|
OpenCLstd_UAbs_diff = 202, |
|
OpenCLstd_UMul_hi = 203, |
|
OpenCLstd_UMad_hi = 204, |
|
|
|
|
|
OpenCLstd_FClamp = 95, |
|
OpenCLstd_Degrees = 96, |
|
OpenCLstd_FMax_common = 97, |
|
OpenCLstd_FMin_common = 98, |
|
OpenCLstd_Mix = 99, |
|
OpenCLstd_Radians = 100, |
|
OpenCLstd_Step = 101, |
|
OpenCLstd_Smoothstep = 102, |
|
OpenCLstd_Sign = 103, |
|
|
|
|
|
OpenCLstd_Cross = 104, |
|
OpenCLstd_Distance = 105, |
|
OpenCLstd_Length = 106, |
|
OpenCLstd_Normalize = 107, |
|
OpenCLstd_Fast_distance = 108, |
|
OpenCLstd_Fast_length = 109, |
|
OpenCLstd_Fast_normalize = 110, |
|
|
|
|
|
OpenCLstd_Bitselect = 186, |
|
OpenCLstd_Select = 187, |
|
|
|
|
|
OpenCLstd_Vloadn = 171, |
|
OpenCLstd_Vstoren = 172, |
|
OpenCLstd_Vload_half = 173, |
|
OpenCLstd_Vload_halfn = 174, |
|
OpenCLstd_Vstore_half = 175, |
|
OpenCLstd_Vstore_half_r = 176, |
|
OpenCLstd_Vstore_halfn = 177, |
|
OpenCLstd_Vstore_halfn_r = 178, |
|
OpenCLstd_Vloada_halfn = 179, |
|
OpenCLstd_Vstorea_halfn = 180, |
|
OpenCLstd_Vstorea_halfn_r = 181, |
|
|
|
|
|
OpenCLstd_Shuffle = 182, |
|
OpenCLstd_Shuffle2 = 183, |
|
|
|
|
|
OpenCLstd_Printf = 184, |
|
OpenCLstd_Prefetch = 185, |
|
}; |
|
|
|
#endif |
|
|
|
#endif |
|
|