1*61046927SAndroid Build Coastguard Worker /* 2*61046927SAndroid Build Coastguard Worker ** Copyright (c) 2015-2024 The Khronos Group Inc. 3*61046927SAndroid Build Coastguard Worker ** 4*61046927SAndroid Build Coastguard Worker ** Permission is hereby granted, free of charge, to any person obtaining a copy 5*61046927SAndroid Build Coastguard Worker ** of this software and/or associated documentation files (the "Materials"), 6*61046927SAndroid Build Coastguard Worker ** to deal in the Materials without restriction, including without limitation 7*61046927SAndroid Build Coastguard Worker ** the rights to use, copy, modify, merge, publish, distribute, sublicense, 8*61046927SAndroid Build Coastguard Worker ** and/or sell copies of the Materials, and to permit persons to whom the 9*61046927SAndroid Build Coastguard Worker ** Materials are furnished to do so, subject to the following conditions: 10*61046927SAndroid Build Coastguard Worker ** 11*61046927SAndroid Build Coastguard Worker ** The above copyright notice and this permission notice shall be included in 12*61046927SAndroid Build Coastguard Worker ** all copies or substantial portions of the Materials. 13*61046927SAndroid Build Coastguard Worker ** 14*61046927SAndroid Build Coastguard Worker ** MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS 15*61046927SAndroid Build Coastguard Worker ** STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND 16*61046927SAndroid Build Coastguard Worker ** HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ 17*61046927SAndroid Build Coastguard Worker ** 18*61046927SAndroid Build Coastguard Worker ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 19*61046927SAndroid Build Coastguard Worker ** OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20*61046927SAndroid Build Coastguard Worker ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 21*61046927SAndroid Build Coastguard Worker ** THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22*61046927SAndroid Build Coastguard Worker ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 23*61046927SAndroid Build Coastguard Worker ** FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS 24*61046927SAndroid Build Coastguard Worker ** IN THE MATERIALS. 25*61046927SAndroid Build Coastguard Worker */ 26*61046927SAndroid Build Coastguard Worker 27*61046927SAndroid Build Coastguard Worker #ifndef OPENCLstd_H 28*61046927SAndroid Build Coastguard Worker #define OPENCLstd_H 29*61046927SAndroid Build Coastguard Worker 30*61046927SAndroid Build Coastguard Worker #ifdef __cplusplus 31*61046927SAndroid Build Coastguard Worker namespace OpenCLLIB { 32*61046927SAndroid Build Coastguard Worker 33*61046927SAndroid Build Coastguard Worker enum Entrypoints { 34*61046927SAndroid Build Coastguard Worker 35*61046927SAndroid Build Coastguard Worker // Section 2.1: Math extended instructions 36*61046927SAndroid Build Coastguard Worker Acos = 0, 37*61046927SAndroid Build Coastguard Worker Acosh = 1, 38*61046927SAndroid Build Coastguard Worker Acospi = 2, 39*61046927SAndroid Build Coastguard Worker Asin = 3, 40*61046927SAndroid Build Coastguard Worker Asinh = 4, 41*61046927SAndroid Build Coastguard Worker Asinpi = 5, 42*61046927SAndroid Build Coastguard Worker Atan = 6, 43*61046927SAndroid Build Coastguard Worker Atan2 = 7, 44*61046927SAndroid Build Coastguard Worker Atanh = 8, 45*61046927SAndroid Build Coastguard Worker Atanpi = 9, 46*61046927SAndroid Build Coastguard Worker Atan2pi = 10, 47*61046927SAndroid Build Coastguard Worker Cbrt = 11, 48*61046927SAndroid Build Coastguard Worker Ceil = 12, 49*61046927SAndroid Build Coastguard Worker Copysign = 13, 50*61046927SAndroid Build Coastguard Worker Cos = 14, 51*61046927SAndroid Build Coastguard Worker Cosh = 15, 52*61046927SAndroid Build Coastguard Worker Cospi = 16, 53*61046927SAndroid Build Coastguard Worker Erfc = 17, 54*61046927SAndroid Build Coastguard Worker Erf = 18, 55*61046927SAndroid Build Coastguard Worker Exp = 19, 56*61046927SAndroid Build Coastguard Worker Exp2 = 20, 57*61046927SAndroid Build Coastguard Worker Exp10 = 21, 58*61046927SAndroid Build Coastguard Worker Expm1 = 22, 59*61046927SAndroid Build Coastguard Worker Fabs = 23, 60*61046927SAndroid Build Coastguard Worker Fdim = 24, 61*61046927SAndroid Build Coastguard Worker Floor = 25, 62*61046927SAndroid Build Coastguard Worker Fma = 26, 63*61046927SAndroid Build Coastguard Worker Fmax = 27, 64*61046927SAndroid Build Coastguard Worker Fmin = 28, 65*61046927SAndroid Build Coastguard Worker Fmod = 29, 66*61046927SAndroid Build Coastguard Worker Fract = 30, 67*61046927SAndroid Build Coastguard Worker Frexp = 31, 68*61046927SAndroid Build Coastguard Worker Hypot = 32, 69*61046927SAndroid Build Coastguard Worker Ilogb = 33, 70*61046927SAndroid Build Coastguard Worker Ldexp = 34, 71*61046927SAndroid Build Coastguard Worker Lgamma = 35, 72*61046927SAndroid Build Coastguard Worker Lgamma_r = 36, 73*61046927SAndroid Build Coastguard Worker Log = 37, 74*61046927SAndroid Build Coastguard Worker Log2 = 38, 75*61046927SAndroid Build Coastguard Worker Log10 = 39, 76*61046927SAndroid Build Coastguard Worker Log1p = 40, 77*61046927SAndroid Build Coastguard Worker Logb = 41, 78*61046927SAndroid Build Coastguard Worker Mad = 42, 79*61046927SAndroid Build Coastguard Worker Maxmag = 43, 80*61046927SAndroid Build Coastguard Worker Minmag = 44, 81*61046927SAndroid Build Coastguard Worker Modf = 45, 82*61046927SAndroid Build Coastguard Worker Nan = 46, 83*61046927SAndroid Build Coastguard Worker Nextafter = 47, 84*61046927SAndroid Build Coastguard Worker Pow = 48, 85*61046927SAndroid Build Coastguard Worker Pown = 49, 86*61046927SAndroid Build Coastguard Worker Powr = 50, 87*61046927SAndroid Build Coastguard Worker Remainder = 51, 88*61046927SAndroid Build Coastguard Worker Remquo = 52, 89*61046927SAndroid Build Coastguard Worker Rint = 53, 90*61046927SAndroid Build Coastguard Worker Rootn = 54, 91*61046927SAndroid Build Coastguard Worker Round = 55, 92*61046927SAndroid Build Coastguard Worker Rsqrt = 56, 93*61046927SAndroid Build Coastguard Worker Sin = 57, 94*61046927SAndroid Build Coastguard Worker Sincos = 58, 95*61046927SAndroid Build Coastguard Worker Sinh = 59, 96*61046927SAndroid Build Coastguard Worker Sinpi = 60, 97*61046927SAndroid Build Coastguard Worker Sqrt = 61, 98*61046927SAndroid Build Coastguard Worker Tan = 62, 99*61046927SAndroid Build Coastguard Worker Tanh = 63, 100*61046927SAndroid Build Coastguard Worker Tanpi = 64, 101*61046927SAndroid Build Coastguard Worker Tgamma = 65, 102*61046927SAndroid Build Coastguard Worker Trunc = 66, 103*61046927SAndroid Build Coastguard Worker Half_cos = 67, 104*61046927SAndroid Build Coastguard Worker Half_divide = 68, 105*61046927SAndroid Build Coastguard Worker Half_exp = 69, 106*61046927SAndroid Build Coastguard Worker Half_exp2 = 70, 107*61046927SAndroid Build Coastguard Worker Half_exp10 = 71, 108*61046927SAndroid Build Coastguard Worker Half_log = 72, 109*61046927SAndroid Build Coastguard Worker Half_log2 = 73, 110*61046927SAndroid Build Coastguard Worker Half_log10 = 74, 111*61046927SAndroid Build Coastguard Worker Half_powr = 75, 112*61046927SAndroid Build Coastguard Worker Half_recip = 76, 113*61046927SAndroid Build Coastguard Worker Half_rsqrt = 77, 114*61046927SAndroid Build Coastguard Worker Half_sin = 78, 115*61046927SAndroid Build Coastguard Worker Half_sqrt = 79, 116*61046927SAndroid Build Coastguard Worker Half_tan = 80, 117*61046927SAndroid Build Coastguard Worker Native_cos = 81, 118*61046927SAndroid Build Coastguard Worker Native_divide = 82, 119*61046927SAndroid Build Coastguard Worker Native_exp = 83, 120*61046927SAndroid Build Coastguard Worker Native_exp2 = 84, 121*61046927SAndroid Build Coastguard Worker Native_exp10 = 85, 122*61046927SAndroid Build Coastguard Worker Native_log = 86, 123*61046927SAndroid Build Coastguard Worker Native_log2 = 87, 124*61046927SAndroid Build Coastguard Worker Native_log10 = 88, 125*61046927SAndroid Build Coastguard Worker Native_powr = 89, 126*61046927SAndroid Build Coastguard Worker Native_recip = 90, 127*61046927SAndroid Build Coastguard Worker Native_rsqrt = 91, 128*61046927SAndroid Build Coastguard Worker Native_sin = 92, 129*61046927SAndroid Build Coastguard Worker Native_sqrt = 93, 130*61046927SAndroid Build Coastguard Worker Native_tan = 94, 131*61046927SAndroid Build Coastguard Worker 132*61046927SAndroid Build Coastguard Worker // Section 2.2: Integer instructions 133*61046927SAndroid Build Coastguard Worker SAbs = 141, 134*61046927SAndroid Build Coastguard Worker SAbs_diff = 142, 135*61046927SAndroid Build Coastguard Worker SAdd_sat = 143, 136*61046927SAndroid Build Coastguard Worker UAdd_sat = 144, 137*61046927SAndroid Build Coastguard Worker SHadd = 145, 138*61046927SAndroid Build Coastguard Worker UHadd = 146, 139*61046927SAndroid Build Coastguard Worker SRhadd = 147, 140*61046927SAndroid Build Coastguard Worker URhadd = 148, 141*61046927SAndroid Build Coastguard Worker SClamp = 149, 142*61046927SAndroid Build Coastguard Worker UClamp = 150, 143*61046927SAndroid Build Coastguard Worker Clz = 151, 144*61046927SAndroid Build Coastguard Worker Ctz = 152, 145*61046927SAndroid Build Coastguard Worker SMad_hi = 153, 146*61046927SAndroid Build Coastguard Worker UMad_sat = 154, 147*61046927SAndroid Build Coastguard Worker SMad_sat = 155, 148*61046927SAndroid Build Coastguard Worker SMax = 156, 149*61046927SAndroid Build Coastguard Worker UMax = 157, 150*61046927SAndroid Build Coastguard Worker SMin = 158, 151*61046927SAndroid Build Coastguard Worker UMin = 159, 152*61046927SAndroid Build Coastguard Worker SMul_hi = 160, 153*61046927SAndroid Build Coastguard Worker Rotate = 161, 154*61046927SAndroid Build Coastguard Worker SSub_sat = 162, 155*61046927SAndroid Build Coastguard Worker USub_sat = 163, 156*61046927SAndroid Build Coastguard Worker U_Upsample = 164, 157*61046927SAndroid Build Coastguard Worker S_Upsample = 165, 158*61046927SAndroid Build Coastguard Worker Popcount = 166, 159*61046927SAndroid Build Coastguard Worker SMad24 = 167, 160*61046927SAndroid Build Coastguard Worker UMad24 = 168, 161*61046927SAndroid Build Coastguard Worker SMul24 = 169, 162*61046927SAndroid Build Coastguard Worker UMul24 = 170, 163*61046927SAndroid Build Coastguard Worker UAbs = 201, 164*61046927SAndroid Build Coastguard Worker UAbs_diff = 202, 165*61046927SAndroid Build Coastguard Worker UMul_hi = 203, 166*61046927SAndroid Build Coastguard Worker UMad_hi = 204, 167*61046927SAndroid Build Coastguard Worker 168*61046927SAndroid Build Coastguard Worker // Section 2.3: Common instructions 169*61046927SAndroid Build Coastguard Worker FClamp = 95, 170*61046927SAndroid Build Coastguard Worker Degrees = 96, 171*61046927SAndroid Build Coastguard Worker FMax_common = 97, 172*61046927SAndroid Build Coastguard Worker FMin_common = 98, 173*61046927SAndroid Build Coastguard Worker Mix = 99, 174*61046927SAndroid Build Coastguard Worker Radians = 100, 175*61046927SAndroid Build Coastguard Worker Step = 101, 176*61046927SAndroid Build Coastguard Worker Smoothstep = 102, 177*61046927SAndroid Build Coastguard Worker Sign = 103, 178*61046927SAndroid Build Coastguard Worker 179*61046927SAndroid Build Coastguard Worker // Section 2.4: Geometric instructions 180*61046927SAndroid Build Coastguard Worker Cross = 104, 181*61046927SAndroid Build Coastguard Worker Distance = 105, 182*61046927SAndroid Build Coastguard Worker Length = 106, 183*61046927SAndroid Build Coastguard Worker Normalize = 107, 184*61046927SAndroid Build Coastguard Worker Fast_distance = 108, 185*61046927SAndroid Build Coastguard Worker Fast_length = 109, 186*61046927SAndroid Build Coastguard Worker Fast_normalize = 110, 187*61046927SAndroid Build Coastguard Worker 188*61046927SAndroid Build Coastguard Worker // Section 2.5: Relational instructions 189*61046927SAndroid Build Coastguard Worker Bitselect = 186, 190*61046927SAndroid Build Coastguard Worker Select = 187, 191*61046927SAndroid Build Coastguard Worker 192*61046927SAndroid Build Coastguard Worker // Section 2.6: Vector Data Load and Store instructions 193*61046927SAndroid Build Coastguard Worker Vloadn = 171, 194*61046927SAndroid Build Coastguard Worker Vstoren = 172, 195*61046927SAndroid Build Coastguard Worker Vload_half = 173, 196*61046927SAndroid Build Coastguard Worker Vload_halfn = 174, 197*61046927SAndroid Build Coastguard Worker Vstore_half = 175, 198*61046927SAndroid Build Coastguard Worker Vstore_half_r = 176, 199*61046927SAndroid Build Coastguard Worker Vstore_halfn = 177, 200*61046927SAndroid Build Coastguard Worker Vstore_halfn_r = 178, 201*61046927SAndroid Build Coastguard Worker Vloada_halfn = 179, 202*61046927SAndroid Build Coastguard Worker Vstorea_halfn = 180, 203*61046927SAndroid Build Coastguard Worker Vstorea_halfn_r = 181, 204*61046927SAndroid Build Coastguard Worker 205*61046927SAndroid Build Coastguard Worker // Section 2.7: Miscellaneous Vector instructions 206*61046927SAndroid Build Coastguard Worker Shuffle = 182, 207*61046927SAndroid Build Coastguard Worker Shuffle2 = 183, 208*61046927SAndroid Build Coastguard Worker 209*61046927SAndroid Build Coastguard Worker // Section 2.8: Misc instructions 210*61046927SAndroid Build Coastguard Worker Printf = 184, 211*61046927SAndroid Build Coastguard Worker Prefetch = 185, 212*61046927SAndroid Build Coastguard Worker }; 213*61046927SAndroid Build Coastguard Worker 214*61046927SAndroid Build Coastguard Worker } // end namespace OpenCLLIB 215*61046927SAndroid Build Coastguard Worker 216*61046927SAndroid Build Coastguard Worker #else 217*61046927SAndroid Build Coastguard Worker 218*61046927SAndroid Build Coastguard Worker enum OpenCLstd_Entrypoints { 219*61046927SAndroid Build Coastguard Worker 220*61046927SAndroid Build Coastguard Worker // Section 2.1: Math extended instructions 221*61046927SAndroid Build Coastguard Worker OpenCLstd_Acos = 0, 222*61046927SAndroid Build Coastguard Worker OpenCLstd_Acosh = 1, 223*61046927SAndroid Build Coastguard Worker OpenCLstd_Acospi = 2, 224*61046927SAndroid Build Coastguard Worker OpenCLstd_Asin = 3, 225*61046927SAndroid Build Coastguard Worker OpenCLstd_Asinh = 4, 226*61046927SAndroid Build Coastguard Worker OpenCLstd_Asinpi = 5, 227*61046927SAndroid Build Coastguard Worker OpenCLstd_Atan = 6, 228*61046927SAndroid Build Coastguard Worker OpenCLstd_Atan2 = 7, 229*61046927SAndroid Build Coastguard Worker OpenCLstd_Atanh = 8, 230*61046927SAndroid Build Coastguard Worker OpenCLstd_Atanpi = 9, 231*61046927SAndroid Build Coastguard Worker OpenCLstd_Atan2pi = 10, 232*61046927SAndroid Build Coastguard Worker OpenCLstd_Cbrt = 11, 233*61046927SAndroid Build Coastguard Worker OpenCLstd_Ceil = 12, 234*61046927SAndroid Build Coastguard Worker OpenCLstd_Copysign = 13, 235*61046927SAndroid Build Coastguard Worker OpenCLstd_Cos = 14, 236*61046927SAndroid Build Coastguard Worker OpenCLstd_Cosh = 15, 237*61046927SAndroid Build Coastguard Worker OpenCLstd_Cospi = 16, 238*61046927SAndroid Build Coastguard Worker OpenCLstd_Erfc = 17, 239*61046927SAndroid Build Coastguard Worker OpenCLstd_Erf = 18, 240*61046927SAndroid Build Coastguard Worker OpenCLstd_Exp = 19, 241*61046927SAndroid Build Coastguard Worker OpenCLstd_Exp2 = 20, 242*61046927SAndroid Build Coastguard Worker OpenCLstd_Exp10 = 21, 243*61046927SAndroid Build Coastguard Worker OpenCLstd_Expm1 = 22, 244*61046927SAndroid Build Coastguard Worker OpenCLstd_Fabs = 23, 245*61046927SAndroid Build Coastguard Worker OpenCLstd_Fdim = 24, 246*61046927SAndroid Build Coastguard Worker OpenCLstd_Floor = 25, 247*61046927SAndroid Build Coastguard Worker OpenCLstd_Fma = 26, 248*61046927SAndroid Build Coastguard Worker OpenCLstd_Fmax = 27, 249*61046927SAndroid Build Coastguard Worker OpenCLstd_Fmin = 28, 250*61046927SAndroid Build Coastguard Worker OpenCLstd_Fmod = 29, 251*61046927SAndroid Build Coastguard Worker OpenCLstd_Fract = 30, 252*61046927SAndroid Build Coastguard Worker OpenCLstd_Frexp = 31, 253*61046927SAndroid Build Coastguard Worker OpenCLstd_Hypot = 32, 254*61046927SAndroid Build Coastguard Worker OpenCLstd_Ilogb = 33, 255*61046927SAndroid Build Coastguard Worker OpenCLstd_Ldexp = 34, 256*61046927SAndroid Build Coastguard Worker OpenCLstd_Lgamma = 35, 257*61046927SAndroid Build Coastguard Worker OpenCLstd_Lgamma_r = 36, 258*61046927SAndroid Build Coastguard Worker OpenCLstd_Log = 37, 259*61046927SAndroid Build Coastguard Worker OpenCLstd_Log2 = 38, 260*61046927SAndroid Build Coastguard Worker OpenCLstd_Log10 = 39, 261*61046927SAndroid Build Coastguard Worker OpenCLstd_Log1p = 40, 262*61046927SAndroid Build Coastguard Worker OpenCLstd_Logb = 41, 263*61046927SAndroid Build Coastguard Worker OpenCLstd_Mad = 42, 264*61046927SAndroid Build Coastguard Worker OpenCLstd_Maxmag = 43, 265*61046927SAndroid Build Coastguard Worker OpenCLstd_Minmag = 44, 266*61046927SAndroid Build Coastguard Worker OpenCLstd_Modf = 45, 267*61046927SAndroid Build Coastguard Worker OpenCLstd_Nan = 46, 268*61046927SAndroid Build Coastguard Worker OpenCLstd_Nextafter = 47, 269*61046927SAndroid Build Coastguard Worker OpenCLstd_Pow = 48, 270*61046927SAndroid Build Coastguard Worker OpenCLstd_Pown = 49, 271*61046927SAndroid Build Coastguard Worker OpenCLstd_Powr = 50, 272*61046927SAndroid Build Coastguard Worker OpenCLstd_Remainder = 51, 273*61046927SAndroid Build Coastguard Worker OpenCLstd_Remquo = 52, 274*61046927SAndroid Build Coastguard Worker OpenCLstd_Rint = 53, 275*61046927SAndroid Build Coastguard Worker OpenCLstd_Rootn = 54, 276*61046927SAndroid Build Coastguard Worker OpenCLstd_Round = 55, 277*61046927SAndroid Build Coastguard Worker OpenCLstd_Rsqrt = 56, 278*61046927SAndroid Build Coastguard Worker OpenCLstd_Sin = 57, 279*61046927SAndroid Build Coastguard Worker OpenCLstd_Sincos = 58, 280*61046927SAndroid Build Coastguard Worker OpenCLstd_Sinh = 59, 281*61046927SAndroid Build Coastguard Worker OpenCLstd_Sinpi = 60, 282*61046927SAndroid Build Coastguard Worker OpenCLstd_Sqrt = 61, 283*61046927SAndroid Build Coastguard Worker OpenCLstd_Tan = 62, 284*61046927SAndroid Build Coastguard Worker OpenCLstd_Tanh = 63, 285*61046927SAndroid Build Coastguard Worker OpenCLstd_Tanpi = 64, 286*61046927SAndroid Build Coastguard Worker OpenCLstd_Tgamma = 65, 287*61046927SAndroid Build Coastguard Worker OpenCLstd_Trunc = 66, 288*61046927SAndroid Build Coastguard Worker OpenCLstd_Half_cos = 67, 289*61046927SAndroid Build Coastguard Worker OpenCLstd_Half_divide = 68, 290*61046927SAndroid Build Coastguard Worker OpenCLstd_Half_exp = 69, 291*61046927SAndroid Build Coastguard Worker OpenCLstd_Half_exp2 = 70, 292*61046927SAndroid Build Coastguard Worker OpenCLstd_Half_exp10 = 71, 293*61046927SAndroid Build Coastguard Worker OpenCLstd_Half_log = 72, 294*61046927SAndroid Build Coastguard Worker OpenCLstd_Half_log2 = 73, 295*61046927SAndroid Build Coastguard Worker OpenCLstd_Half_log10 = 74, 296*61046927SAndroid Build Coastguard Worker OpenCLstd_Half_powr = 75, 297*61046927SAndroid Build Coastguard Worker OpenCLstd_Half_recip = 76, 298*61046927SAndroid Build Coastguard Worker OpenCLstd_Half_rsqrt = 77, 299*61046927SAndroid Build Coastguard Worker OpenCLstd_Half_sin = 78, 300*61046927SAndroid Build Coastguard Worker OpenCLstd_Half_sqrt = 79, 301*61046927SAndroid Build Coastguard Worker OpenCLstd_Half_tan = 80, 302*61046927SAndroid Build Coastguard Worker OpenCLstd_Native_cos = 81, 303*61046927SAndroid Build Coastguard Worker OpenCLstd_Native_divide = 82, 304*61046927SAndroid Build Coastguard Worker OpenCLstd_Native_exp = 83, 305*61046927SAndroid Build Coastguard Worker OpenCLstd_Native_exp2 = 84, 306*61046927SAndroid Build Coastguard Worker OpenCLstd_Native_exp10 = 85, 307*61046927SAndroid Build Coastguard Worker OpenCLstd_Native_log = 86, 308*61046927SAndroid Build Coastguard Worker OpenCLstd_Native_log2 = 87, 309*61046927SAndroid Build Coastguard Worker OpenCLstd_Native_log10 = 88, 310*61046927SAndroid Build Coastguard Worker OpenCLstd_Native_powr = 89, 311*61046927SAndroid Build Coastguard Worker OpenCLstd_Native_recip = 90, 312*61046927SAndroid Build Coastguard Worker OpenCLstd_Native_rsqrt = 91, 313*61046927SAndroid Build Coastguard Worker OpenCLstd_Native_sin = 92, 314*61046927SAndroid Build Coastguard Worker OpenCLstd_Native_sqrt = 93, 315*61046927SAndroid Build Coastguard Worker OpenCLstd_Native_tan = 94, 316*61046927SAndroid Build Coastguard Worker 317*61046927SAndroid Build Coastguard Worker // Section 2.2: Integer instructions 318*61046927SAndroid Build Coastguard Worker OpenCLstd_SAbs = 141, 319*61046927SAndroid Build Coastguard Worker OpenCLstd_SAbs_diff = 142, 320*61046927SAndroid Build Coastguard Worker OpenCLstd_SAdd_sat = 143, 321*61046927SAndroid Build Coastguard Worker OpenCLstd_UAdd_sat = 144, 322*61046927SAndroid Build Coastguard Worker OpenCLstd_SHadd = 145, 323*61046927SAndroid Build Coastguard Worker OpenCLstd_UHadd = 146, 324*61046927SAndroid Build Coastguard Worker OpenCLstd_SRhadd = 147, 325*61046927SAndroid Build Coastguard Worker OpenCLstd_URhadd = 148, 326*61046927SAndroid Build Coastguard Worker OpenCLstd_SClamp = 149, 327*61046927SAndroid Build Coastguard Worker OpenCLstd_UClamp = 150, 328*61046927SAndroid Build Coastguard Worker OpenCLstd_Clz = 151, 329*61046927SAndroid Build Coastguard Worker OpenCLstd_Ctz = 152, 330*61046927SAndroid Build Coastguard Worker OpenCLstd_SMad_hi = 153, 331*61046927SAndroid Build Coastguard Worker OpenCLstd_UMad_sat = 154, 332*61046927SAndroid Build Coastguard Worker OpenCLstd_SMad_sat = 155, 333*61046927SAndroid Build Coastguard Worker OpenCLstd_SMax = 156, 334*61046927SAndroid Build Coastguard Worker OpenCLstd_UMax = 157, 335*61046927SAndroid Build Coastguard Worker OpenCLstd_SMin = 158, 336*61046927SAndroid Build Coastguard Worker OpenCLstd_UMin = 159, 337*61046927SAndroid Build Coastguard Worker OpenCLstd_SMul_hi = 160, 338*61046927SAndroid Build Coastguard Worker OpenCLstd_Rotate = 161, 339*61046927SAndroid Build Coastguard Worker OpenCLstd_SSub_sat = 162, 340*61046927SAndroid Build Coastguard Worker OpenCLstd_USub_sat = 163, 341*61046927SAndroid Build Coastguard Worker OpenCLstd_U_Upsample = 164, 342*61046927SAndroid Build Coastguard Worker OpenCLstd_S_Upsample = 165, 343*61046927SAndroid Build Coastguard Worker OpenCLstd_Popcount = 166, 344*61046927SAndroid Build Coastguard Worker OpenCLstd_SMad24 = 167, 345*61046927SAndroid Build Coastguard Worker OpenCLstd_UMad24 = 168, 346*61046927SAndroid Build Coastguard Worker OpenCLstd_SMul24 = 169, 347*61046927SAndroid Build Coastguard Worker OpenCLstd_UMul24 = 170, 348*61046927SAndroid Build Coastguard Worker OpenCLstd_UAbs = 201, 349*61046927SAndroid Build Coastguard Worker OpenCLstd_UAbs_diff = 202, 350*61046927SAndroid Build Coastguard Worker OpenCLstd_UMul_hi = 203, 351*61046927SAndroid Build Coastguard Worker OpenCLstd_UMad_hi = 204, 352*61046927SAndroid Build Coastguard Worker 353*61046927SAndroid Build Coastguard Worker // Section 2.3: Common instructions 354*61046927SAndroid Build Coastguard Worker OpenCLstd_FClamp = 95, 355*61046927SAndroid Build Coastguard Worker OpenCLstd_Degrees = 96, 356*61046927SAndroid Build Coastguard Worker OpenCLstd_FMax_common = 97, 357*61046927SAndroid Build Coastguard Worker OpenCLstd_FMin_common = 98, 358*61046927SAndroid Build Coastguard Worker OpenCLstd_Mix = 99, 359*61046927SAndroid Build Coastguard Worker OpenCLstd_Radians = 100, 360*61046927SAndroid Build Coastguard Worker OpenCLstd_Step = 101, 361*61046927SAndroid Build Coastguard Worker OpenCLstd_Smoothstep = 102, 362*61046927SAndroid Build Coastguard Worker OpenCLstd_Sign = 103, 363*61046927SAndroid Build Coastguard Worker 364*61046927SAndroid Build Coastguard Worker // Section 2.4: Geometric instructions 365*61046927SAndroid Build Coastguard Worker OpenCLstd_Cross = 104, 366*61046927SAndroid Build Coastguard Worker OpenCLstd_Distance = 105, 367*61046927SAndroid Build Coastguard Worker OpenCLstd_Length = 106, 368*61046927SAndroid Build Coastguard Worker OpenCLstd_Normalize = 107, 369*61046927SAndroid Build Coastguard Worker OpenCLstd_Fast_distance = 108, 370*61046927SAndroid Build Coastguard Worker OpenCLstd_Fast_length = 109, 371*61046927SAndroid Build Coastguard Worker OpenCLstd_Fast_normalize = 110, 372*61046927SAndroid Build Coastguard Worker 373*61046927SAndroid Build Coastguard Worker // Section 2.5: Relational instructions 374*61046927SAndroid Build Coastguard Worker OpenCLstd_Bitselect = 186, 375*61046927SAndroid Build Coastguard Worker OpenCLstd_Select = 187, 376*61046927SAndroid Build Coastguard Worker 377*61046927SAndroid Build Coastguard Worker // Section 2.6: Vector Data Load and Store instructions 378*61046927SAndroid Build Coastguard Worker OpenCLstd_Vloadn = 171, 379*61046927SAndroid Build Coastguard Worker OpenCLstd_Vstoren = 172, 380*61046927SAndroid Build Coastguard Worker OpenCLstd_Vload_half = 173, 381*61046927SAndroid Build Coastguard Worker OpenCLstd_Vload_halfn = 174, 382*61046927SAndroid Build Coastguard Worker OpenCLstd_Vstore_half = 175, 383*61046927SAndroid Build Coastguard Worker OpenCLstd_Vstore_half_r = 176, 384*61046927SAndroid Build Coastguard Worker OpenCLstd_Vstore_halfn = 177, 385*61046927SAndroid Build Coastguard Worker OpenCLstd_Vstore_halfn_r = 178, 386*61046927SAndroid Build Coastguard Worker OpenCLstd_Vloada_halfn = 179, 387*61046927SAndroid Build Coastguard Worker OpenCLstd_Vstorea_halfn = 180, 388*61046927SAndroid Build Coastguard Worker OpenCLstd_Vstorea_halfn_r = 181, 389*61046927SAndroid Build Coastguard Worker 390*61046927SAndroid Build Coastguard Worker // Section 2.7: Miscellaneous Vector instructions 391*61046927SAndroid Build Coastguard Worker OpenCLstd_Shuffle = 182, 392*61046927SAndroid Build Coastguard Worker OpenCLstd_Shuffle2 = 183, 393*61046927SAndroid Build Coastguard Worker 394*61046927SAndroid Build Coastguard Worker // Section 2.8: Misc instructions 395*61046927SAndroid Build Coastguard Worker OpenCLstd_Printf = 184, 396*61046927SAndroid Build Coastguard Worker OpenCLstd_Prefetch = 185, 397*61046927SAndroid Build Coastguard Worker }; 398*61046927SAndroid Build Coastguard Worker 399*61046927SAndroid Build Coastguard Worker #endif 400*61046927SAndroid Build Coastguard Worker 401*61046927SAndroid Build Coastguard Worker #endif // #ifndef OPENCLstd_H 402