1 /* pocl/_kernel_renames.h - Rename OpenCL builtin functions to avoid name
2    clashes with libm functions which are called in implementation.
3 
4    Copyright (c) 2011-2013 Erik Schnetter <eschnetter@perimeterinstitute.ca>
5                            Perimeter Institute for Theoretical Physics
6    Copyright (c) 2011-2017 Pekka Jääskeläinen / TUT
7 
8    Permission is hereby granted, free of charge, to any person obtaining a copy
9    of this software and associated documentation files (the "Software"), to deal
10    in the Software without restriction, including without limitation the rights
11    to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12    copies of the Software, and to permit persons to whom the Software is
13    furnished to do so, subject to the following conditions:
14 
15    The above copyright notice and this permission notice shall be included in
16    all copies or substantial portions of the Software.
17 
18    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
24    THE SOFTWARE.
25 */
26 
27 #ifndef _KERNEL_RENAMES_H
28 #define _KERNEL_RENAMES_H
29 
30 /* Move built-in declarations and libm functions out of the way.
31   (There should be a better way of doing so. These functions are
32   built-in math functions for OpenCL (see Clang's "Builtins.def").
33 
34   Functions defined in libc or libm may also
35   interfere with OpenCL's functions, since their prototypes will be
36   wrong.
37 
38   We're not using libm anymore, but renames are still important
39   for SPIR/SPIR-V support. SPIR mangling is different, but when
40   ocassionally it's the same, it still has different calling
41   convention; LLVM can replace illegal calls (with incorrect CC)
42   with an illegal instruction.
43 */
44 
45 #define abs            _cl_abs
46 #define abs_diff       _cl_abs_diff
47 #define acos           _cl_acos
48 #define acosh          _cl_acosh
49 #define acospi         _cl_acospi
50 #define add_sat        _cl_add_sat
51 #define all            _cl_all
52 #define any            _cl_any
53 #define asin           _cl_asin
54 #define asinh          _cl_asinh
55 #define asinpi         _cl_asinpi
56 #define async_work_group_strided_copy   _cl_async_work_group_strided_copy
57 #define async_work_group_copy   _cl_async_work_group_copy
58 #define atan           _cl_atan
59 #define atan2          _cl_atan2
60 #define atan2pi        _cl_atan2pi
61 #define atanh          _cl_atanh
62 #define atanpi         _cl_atanpi
63 #define bitselect      _cl_bitselect
64 #define cbrt           _cl_cbrt
65 #define ceil           _cl_ceil
66 #define clamp          _cl_clamp
67 #define clz            _cl_clz
68 #define copysign       _cl_copysign
69 #define cos            _cl_cos
70 #define cosh           _cl_cosh
71 #define cospi          _cl_cospi
72 #define cross          _cl_cross
73 #define degrees        _cl_degrees
74 #define distance       _cl_distance
75 #define dot            _cl_dot
76 #define erf            _cl_erf
77 #define erfc           _cl_erfc
78 #define exp            _cl_exp
79 #define exp10          _cl_exp10
80 #define exp2           _cl_exp2
81 #define expm1          _cl_expm1
82 #define fabs           _cl_fabs
83 #define fast_distance  _cl_fast_distance
84 #define fast_length    _cl_fast_length
85 #define fast_normalize _cl_fast_normalize
86 #define fdim           _cl_fdim
87 #define floor          _cl_floor
88 #define fma            _cl_fma
89 #define fmax           _cl_fmax
90 #define fmin           _cl_fmin
91 #define fmod           _cl_fmod
92 #define fract          _cl_fract
93 #define frexp          _cl_frexp
94 #define hadd           _cl_hadd
95 #define half_cos       _cl_half_cos
96 #define half_divide    _cl_half_divide
97 #define half_exp       _cl_half_exp
98 #define half_exp10     _cl_half_exp10
99 #define half_exp2      _cl_half_exp2
100 #define half_log       _cl_half_log
101 #define half_log10     _cl_half_log10
102 #define half_log2      _cl_half_log2
103 #define half_powr      _cl_half_powr
104 #define half_recip     _cl_half_recip
105 #define half_rsqrt     _cl_half_rsqrt
106 #define half_sin       _cl_half_sin
107 #define half_sqrt      _cl_half_sqrt
108 #define half_tan       _cl_half_tan
109 #define hypot          _cl_hypot
110 #define ilogb          _cl_ilogb
111 #define isequal        _cl_isequal
112 #define isfinite       _cl_isfinite
113 #define isgreater      _cl_isgreater
114 #define isgreaterequal _cl_isgreaterequal
115 #define isinf          _cl_isinf
116 #define isless         _cl_isless
117 #define islessequal    _cl_islessequal
118 #define islessgreater  _cl_islessgreater
119 #define isnan          _cl_isnan
120 #define isnormal       _cl_isnormal
121 #define isnotequal     _cl_isnotequal
122 #define isordered      _cl_isordered
123 #define isunordered    _cl_isunordered
124 #define ldexp          _cl_ldexp
125 #define length         _cl_length
126 #define lgamma         _cl_lgamma
127 #define lgamma_r       _cl_lgamma_r
128 #define log            _cl_log
129 #define log10          _cl_log10
130 #define log1p          _cl_log1p
131 #define log2           _cl_log2
132 #define logb           _cl_logb
133 #define mad            _cl_mad
134 #define mad24          _cl_mad24
135 #define mad_hi         _cl_mad_hi
136 #define mad_sat        _cl_mad_sat
137 #define max            _cl_max
138 #define maxmag         _cl_maxmag
139 #define min            _cl_min
140 #define minmag         _cl_minmag
141 #define mix            _cl_mix
142 #define modf           _cl_modf
143 #define mul24          _cl_mul24
144 #define mul_hi         _cl_mul_hi
145 #define nan            _cl_nan
146 #define native_cos     _cl_native_cos
147 #define native_divide  _cl_native_divide
148 #define native_exp     _cl_native_exp
149 #define native_exp10   _cl_native_exp10
150 #define native_exp2    _cl_native_exp2
151 #define native_log     _cl_native_log
152 #define native_log10   _cl_native_log10
153 #define native_log2    _cl_native_log2
154 #define native_powr    _cl_native_powr
155 #define native_recip   _cl_native_recip
156 #define native_rsqrt   _cl_native_rsqrt
157 #define native_sin     _cl_native_sin
158 #define native_sqrt    _cl_native_sqrt
159 #define native_tan     _cl_native_tan
160 #define nextafter      _cl_nextafter
161 #define normalize      _cl_normalize
162 #define popcount       _cl_popcount
163 #define pow            _cl_pow
164 #define pown           _cl_pown
165 #define powr           _cl_powr
166 #define prefetch       _cl_prefetch
167 #define radians        _cl_radians
168 #define remainder      _cl_remainder
169 #define remquo         _cl_remquo
170 #define rhadd          _cl_rhadd
171 #define rint           _cl_rint
172 #define rootn          _cl_rootn
173 #define rotate         _cl_rotate
174 #define round          _cl_round
175 #define rsqrt          _cl_rsqrt
176 #define select         _cl_select
177 #define shuffle        _cl_shuffle
178 #define shuffle2        _cl_shuffle2
179 #define sign           _cl_sign
180 #define signbit        _cl_signbit
181 #define sin            _cl_sin
182 #define sincos         _cl_sincos
183 #define sinh           _cl_sinh
184 #define sinpi          _cl_sinpi
185 #define smoothstep     _cl_smoothstep
186 #define sqrt           _cl_sqrt
187 #define step           _cl_step
188 #define sub_sat        _cl_sub_sat
189 #define tan            _cl_tan
190 #define tanh           _cl_tanh
191 #define tanpi          _cl_tanpi
192 #define tgamma         _cl_tgamma
193 #define trunc          _cl_trunc
194 #define upsample       _cl_upsample
195 
196 #define  vload   _cl_vload
197 #define  vstore  _cl_vstore
198 #define  vload_half   _cl_vload_half
199 #define  vstore_half  _cl_vstore_half
200 #define  vloada_half   _cl_vloada_half
201 #define  vstorea_half  _cl_vstorea_half
202 #define  vload_half_rte   _cl_vload_half_rte
203 #define  vstore_half_rte  _cl_vstore_half_rte
204 #define  vloada_half_rte   _cl_vloada_half_rte
205 #define  vstorea_half_rte  _cl_vstorea_half_rte
206 #define  vload_half_rtz   _cl_vload_half_rtz
207 #define  vstore_half_rtz  _cl_vstore_half_rtz
208 #define  vloada_half_rtz   _cl_vloada_half_rtz
209 #define  vstorea_half_rtz  _cl_vstorea_half_rtz
210 #define  vload_half_rtp   _cl_vload_half_rtp
211 #define  vstore_half_rtp  _cl_vstore_half_rtp
212 #define  vloada_half_rtp   _cl_vloada_half_rtp
213 #define  vstorea_half_rtp  _cl_vstorea_half_rtp
214 #define  vload_half_rtn   _cl_vload_half_rtn
215 #define  vstore_half_rtn  _cl_vstore_half_rtn
216 #define  vloada_half_rtn   _cl_vloada_half_rtn
217 #define  vstorea_half_rtn  _cl_vstorea_half_rtn
218 #define convert_char    _cl_convert_char
219 #define convert_uchar    _cl_convert_uchar
220 #define convert_short    _cl_convert_short
221 #define convert_ushort    _cl_convert_ushort
222 #define convert_int    _cl_convert_int
223 #define convert_uint    _cl_convert_uint
224 #define convert_long    _cl_convert_long
225 #define convert_ulong    _cl_convert_ulong
226 #define convert_float    _cl_convert_float
227 #define convert_double    _cl_convert_double
228 #define convert_char_rte    _cl_convert_char_rte
229 #define convert_uchar_rte    _cl_convert_uchar_rte
230 #define convert_short_rte    _cl_convert_short_rte
231 #define convert_ushort_rte    _cl_convert_ushort_rte
232 #define convert_int_rte    _cl_convert_int_rte
233 #define convert_uint_rte    _cl_convert_uint_rte
234 #define convert_long_rte    _cl_convert_long_rte
235 #define convert_ulong_rte    _cl_convert_ulong_rte
236 #define convert_float_rte    _cl_convert_float_rte
237 #define convert_double_rte    _cl_convert_double_rte
238 #define convert_char_rtz    _cl_convert_char_rtz
239 #define convert_uchar_rtz    _cl_convert_uchar_rtz
240 #define convert_short_rtz    _cl_convert_short_rtz
241 #define convert_ushort_rtz    _cl_convert_ushort_rtz
242 #define convert_int_rtz    _cl_convert_int_rtz
243 #define convert_uint_rtz    _cl_convert_uint_rtz
244 #define convert_long_rtz    _cl_convert_long_rtz
245 #define convert_ulong_rtz    _cl_convert_ulong_rtz
246 #define convert_float_rtz    _cl_convert_float_rtz
247 #define convert_double_rtz    _cl_convert_double_rtz
248 #define convert_char_rtp    _cl_convert_char_rtp
249 #define convert_uchar_rtp    _cl_convert_uchar_rtp
250 #define convert_short_rtp    _cl_convert_short_rtp
251 #define convert_ushort_rtp    _cl_convert_ushort_rtp
252 #define convert_int_rtp    _cl_convert_int_rtp
253 #define convert_uint_rtp    _cl_convert_uint_rtp
254 #define convert_long_rtp    _cl_convert_long_rtp
255 #define convert_ulong_rtp    _cl_convert_ulong_rtp
256 #define convert_float_rtp    _cl_convert_float_rtp
257 #define convert_double_rtp    _cl_convert_double_rtp
258 #define convert_char_rtn    _cl_convert_char_rtn
259 #define convert_uchar_rtn    _cl_convert_uchar_rtn
260 #define convert_short_rtn    _cl_convert_short_rtn
261 #define convert_ushort_rtn    _cl_convert_ushort_rtn
262 #define convert_int_rtn    _cl_convert_int_rtn
263 #define convert_uint_rtn    _cl_convert_uint_rtn
264 #define convert_long_rtn    _cl_convert_long_rtn
265 #define convert_ulong_rtn    _cl_convert_ulong_rtn
266 #define convert_float_rtn    _cl_convert_float_rtn
267 #define convert_double_rtn    _cl_convert_double_rtn
268 #define convert_char_sat    _cl_convert_char_sat
269 #define convert_uchar_sat    _cl_convert_uchar_sat
270 #define convert_short_sat    _cl_convert_short_sat
271 #define convert_ushort_sat    _cl_convert_ushort_sat
272 #define convert_int_sat    _cl_convert_int_sat
273 #define convert_uint_sat    _cl_convert_uint_sat
274 #define convert_long_sat    _cl_convert_long_sat
275 #define convert_ulong_sat    _cl_convert_ulong_sat
276 #define convert_float_sat    _cl_convert_float_sat
277 #define convert_double_sat    _cl_convert_double_sat
278 #define convert_char_sat_rte    _cl_convert_char_sat_rte
279 #define convert_uchar_sat_rte    _cl_convert_uchar_sat_rte
280 #define convert_short_sat_rte    _cl_convert_short_sat_rte
281 #define convert_ushort_sat_rte    _cl_convert_ushort_sat_rte
282 #define convert_int_sat_rte    _cl_convert_int_sat_rte
283 #define convert_uint_sat_rte    _cl_convert_uint_sat_rte
284 #define convert_long_sat_rte    _cl_convert_long_sat_rte
285 #define convert_ulong_sat_rte    _cl_convert_ulong_sat_rte
286 #define convert_float_sat_rte    _cl_convert_float_sat_rte
287 #define convert_double_sat_rte    _cl_convert_double_sat_rte
288 #define convert_char_sat_rtz    _cl_convert_char_sat_rtz
289 #define convert_uchar_sat_rtz    _cl_convert_uchar_sat_rtz
290 #define convert_short_sat_rtz    _cl_convert_short_sat_rtz
291 #define convert_ushort_sat_rtz    _cl_convert_ushort_sat_rtz
292 #define convert_int_sat_rtz    _cl_convert_int_sat_rtz
293 #define convert_uint_sat_rtz    _cl_convert_uint_sat_rtz
294 #define convert_long_sat_rtz    _cl_convert_long_sat_rtz
295 #define convert_ulong_sat_rtz    _cl_convert_ulong_sat_rtz
296 #define convert_float_sat_rtz    _cl_convert_float_sat_rtz
297 #define convert_double_sat_rtz    _cl_convert_double_sat_rtz
298 #define convert_char_sat_rtp    _cl_convert_char_sat_rtp
299 #define convert_uchar_sat_rtp    _cl_convert_uchar_sat_rtp
300 #define convert_short_sat_rtp    _cl_convert_short_sat_rtp
301 #define convert_ushort_sat_rtp    _cl_convert_ushort_sat_rtp
302 #define convert_int_sat_rtp    _cl_convert_int_sat_rtp
303 #define convert_uint_sat_rtp    _cl_convert_uint_sat_rtp
304 #define convert_long_sat_rtp    _cl_convert_long_sat_rtp
305 #define convert_ulong_sat_rtp    _cl_convert_ulong_sat_rtp
306 #define convert_float_sat_rtp    _cl_convert_float_sat_rtp
307 #define convert_double_sat_rtp    _cl_convert_double_sat_rtp
308 #define convert_char_sat_rtn    _cl_convert_char_sat_rtn
309 #define convert_uchar_sat_rtn    _cl_convert_uchar_sat_rtn
310 #define convert_short_sat_rtn    _cl_convert_short_sat_rtn
311 #define convert_ushort_sat_rtn    _cl_convert_ushort_sat_rtn
312 #define convert_int_sat_rtn    _cl_convert_int_sat_rtn
313 #define convert_uint_sat_rtn    _cl_convert_uint_sat_rtn
314 #define convert_long_sat_rtn    _cl_convert_long_sat_rtn
315 #define convert_ulong_sat_rtn    _cl_convert_ulong_sat_rtn
316 #define convert_float_sat_rtn    _cl_convert_float_sat_rtn
317 #define convert_double_sat_rtn    _cl_convert_double_sat_rtn
318 
319 #define  vload2   _cl_vload2
320 #define  vstore2  _cl_vstore2
321 #define  vload_half2   _cl_vload_half2
322 #define  vstore_half2  _cl_vstore_half2
323 #define  vloada_half2   _cl_vloada_half2
324 #define  vstorea_half2  _cl_vstorea_half2
325 #define  vload_half2_rte   _cl_vload_half2_rte
326 #define  vstore_half2_rte  _cl_vstore_half2_rte
327 #define  vloada_half2_rte   _cl_vloada_half2_rte
328 #define  vstorea_half2_rte  _cl_vstorea_half2_rte
329 #define  vload_half2_rtz   _cl_vload_half2_rtz
330 #define  vstore_half2_rtz  _cl_vstore_half2_rtz
331 #define  vloada_half2_rtz   _cl_vloada_half2_rtz
332 #define  vstorea_half2_rtz  _cl_vstorea_half2_rtz
333 #define  vload_half2_rtp   _cl_vload_half2_rtp
334 #define  vstore_half2_rtp  _cl_vstore_half2_rtp
335 #define  vloada_half2_rtp   _cl_vloada_half2_rtp
336 #define  vstorea_half2_rtp  _cl_vstorea_half2_rtp
337 #define  vload_half2_rtn   _cl_vload_half2_rtn
338 #define  vstore_half2_rtn  _cl_vstore_half2_rtn
339 #define  vloada_half2_rtn   _cl_vloada_half2_rtn
340 #define  vstorea_half2_rtn  _cl_vstorea_half2_rtn
341 #define convert_char2    _cl_convert_char2
342 #define convert_uchar2    _cl_convert_uchar2
343 #define convert_short2    _cl_convert_short2
344 #define convert_ushort2    _cl_convert_ushort2
345 #define convert_int2    _cl_convert_int2
346 #define convert_uint2    _cl_convert_uint2
347 #define convert_long2    _cl_convert_long2
348 #define convert_ulong2    _cl_convert_ulong2
349 #define convert_float2    _cl_convert_float2
350 #define convert_double2    _cl_convert_double2
351 #define convert_char2_rte    _cl_convert_char2_rte
352 #define convert_uchar2_rte    _cl_convert_uchar2_rte
353 #define convert_short2_rte    _cl_convert_short2_rte
354 #define convert_ushort2_rte    _cl_convert_ushort2_rte
355 #define convert_int2_rte    _cl_convert_int2_rte
356 #define convert_uint2_rte    _cl_convert_uint2_rte
357 #define convert_long2_rte    _cl_convert_long2_rte
358 #define convert_ulong2_rte    _cl_convert_ulong2_rte
359 #define convert_float2_rte    _cl_convert_float2_rte
360 #define convert_double2_rte    _cl_convert_double2_rte
361 #define convert_char2_rtz    _cl_convert_char2_rtz
362 #define convert_uchar2_rtz    _cl_convert_uchar2_rtz
363 #define convert_short2_rtz    _cl_convert_short2_rtz
364 #define convert_ushort2_rtz    _cl_convert_ushort2_rtz
365 #define convert_int2_rtz    _cl_convert_int2_rtz
366 #define convert_uint2_rtz    _cl_convert_uint2_rtz
367 #define convert_long2_rtz    _cl_convert_long2_rtz
368 #define convert_ulong2_rtz    _cl_convert_ulong2_rtz
369 #define convert_float2_rtz    _cl_convert_float2_rtz
370 #define convert_double2_rtz    _cl_convert_double2_rtz
371 #define convert_char2_rtp    _cl_convert_char2_rtp
372 #define convert_uchar2_rtp    _cl_convert_uchar2_rtp
373 #define convert_short2_rtp    _cl_convert_short2_rtp
374 #define convert_ushort2_rtp    _cl_convert_ushort2_rtp
375 #define convert_int2_rtp    _cl_convert_int2_rtp
376 #define convert_uint2_rtp    _cl_convert_uint2_rtp
377 #define convert_long2_rtp    _cl_convert_long2_rtp
378 #define convert_ulong2_rtp    _cl_convert_ulong2_rtp
379 #define convert_float2_rtp    _cl_convert_float2_rtp
380 #define convert_double2_rtp    _cl_convert_double2_rtp
381 #define convert_char2_rtn    _cl_convert_char2_rtn
382 #define convert_uchar2_rtn    _cl_convert_uchar2_rtn
383 #define convert_short2_rtn    _cl_convert_short2_rtn
384 #define convert_ushort2_rtn    _cl_convert_ushort2_rtn
385 #define convert_int2_rtn    _cl_convert_int2_rtn
386 #define convert_uint2_rtn    _cl_convert_uint2_rtn
387 #define convert_long2_rtn    _cl_convert_long2_rtn
388 #define convert_ulong2_rtn    _cl_convert_ulong2_rtn
389 #define convert_float2_rtn    _cl_convert_float2_rtn
390 #define convert_double2_rtn    _cl_convert_double2_rtn
391 #define convert_char2_sat    _cl_convert_char2_sat
392 #define convert_uchar2_sat    _cl_convert_uchar2_sat
393 #define convert_short2_sat    _cl_convert_short2_sat
394 #define convert_ushort2_sat    _cl_convert_ushort2_sat
395 #define convert_int2_sat    _cl_convert_int2_sat
396 #define convert_uint2_sat    _cl_convert_uint2_sat
397 #define convert_long2_sat    _cl_convert_long2_sat
398 #define convert_ulong2_sat    _cl_convert_ulong2_sat
399 #define convert_float2_sat    _cl_convert_float2_sat
400 #define convert_double2_sat    _cl_convert_double2_sat
401 #define convert_char2_sat_rte    _cl_convert_char2_sat_rte
402 #define convert_uchar2_sat_rte    _cl_convert_uchar2_sat_rte
403 #define convert_short2_sat_rte    _cl_convert_short2_sat_rte
404 #define convert_ushort2_sat_rte    _cl_convert_ushort2_sat_rte
405 #define convert_int2_sat_rte    _cl_convert_int2_sat_rte
406 #define convert_uint2_sat_rte    _cl_convert_uint2_sat_rte
407 #define convert_long2_sat_rte    _cl_convert_long2_sat_rte
408 #define convert_ulong2_sat_rte    _cl_convert_ulong2_sat_rte
409 #define convert_float2_sat_rte    _cl_convert_float2_sat_rte
410 #define convert_double2_sat_rte    _cl_convert_double2_sat_rte
411 #define convert_char2_sat_rtz    _cl_convert_char2_sat_rtz
412 #define convert_uchar2_sat_rtz    _cl_convert_uchar2_sat_rtz
413 #define convert_short2_sat_rtz    _cl_convert_short2_sat_rtz
414 #define convert_ushort2_sat_rtz    _cl_convert_ushort2_sat_rtz
415 #define convert_int2_sat_rtz    _cl_convert_int2_sat_rtz
416 #define convert_uint2_sat_rtz    _cl_convert_uint2_sat_rtz
417 #define convert_long2_sat_rtz    _cl_convert_long2_sat_rtz
418 #define convert_ulong2_sat_rtz    _cl_convert_ulong2_sat_rtz
419 #define convert_float2_sat_rtz    _cl_convert_float2_sat_rtz
420 #define convert_double2_sat_rtz    _cl_convert_double2_sat_rtz
421 #define convert_char2_sat_rtp    _cl_convert_char2_sat_rtp
422 #define convert_uchar2_sat_rtp    _cl_convert_uchar2_sat_rtp
423 #define convert_short2_sat_rtp    _cl_convert_short2_sat_rtp
424 #define convert_ushort2_sat_rtp    _cl_convert_ushort2_sat_rtp
425 #define convert_int2_sat_rtp    _cl_convert_int2_sat_rtp
426 #define convert_uint2_sat_rtp    _cl_convert_uint2_sat_rtp
427 #define convert_long2_sat_rtp    _cl_convert_long2_sat_rtp
428 #define convert_ulong2_sat_rtp    _cl_convert_ulong2_sat_rtp
429 #define convert_float2_sat_rtp    _cl_convert_float2_sat_rtp
430 #define convert_double2_sat_rtp    _cl_convert_double2_sat_rtp
431 #define convert_char2_sat_rtn    _cl_convert_char2_sat_rtn
432 #define convert_uchar2_sat_rtn    _cl_convert_uchar2_sat_rtn
433 #define convert_short2_sat_rtn    _cl_convert_short2_sat_rtn
434 #define convert_ushort2_sat_rtn    _cl_convert_ushort2_sat_rtn
435 #define convert_int2_sat_rtn    _cl_convert_int2_sat_rtn
436 #define convert_uint2_sat_rtn    _cl_convert_uint2_sat_rtn
437 #define convert_long2_sat_rtn    _cl_convert_long2_sat_rtn
438 #define convert_ulong2_sat_rtn    _cl_convert_ulong2_sat_rtn
439 #define convert_float2_sat_rtn    _cl_convert_float2_sat_rtn
440 #define convert_double2_sat_rtn    _cl_convert_double2_sat_rtn
441 
442 #define  vload3   _cl_vload3
443 #define  vstore3  _cl_vstore3
444 #define  vload_half3   _cl_vload_half3
445 #define  vstore_half3  _cl_vstore_half3
446 #define  vloada_half3   _cl_vloada_half3
447 #define  vstorea_half3  _cl_vstorea_half3
448 #define  vload_half3_rte   _cl_vload_half3_rte
449 #define  vstore_half3_rte  _cl_vstore_half3_rte
450 #define  vloada_half3_rte   _cl_vloada_half3_rte
451 #define  vstorea_half3_rte  _cl_vstorea_half3_rte
452 #define  vload_half3_rtz   _cl_vload_half3_rtz
453 #define  vstore_half3_rtz  _cl_vstore_half3_rtz
454 #define  vloada_half3_rtz   _cl_vloada_half3_rtz
455 #define  vstorea_half3_rtz  _cl_vstorea_half3_rtz
456 #define  vload_half3_rtp   _cl_vload_half3_rtp
457 #define  vstore_half3_rtp  _cl_vstore_half3_rtp
458 #define  vloada_half3_rtp   _cl_vloada_half3_rtp
459 #define  vstorea_half3_rtp  _cl_vstorea_half3_rtp
460 #define  vload_half3_rtn   _cl_vload_half3_rtn
461 #define  vstore_half3_rtn  _cl_vstore_half3_rtn
462 #define  vloada_half3_rtn   _cl_vloada_half3_rtn
463 #define  vstorea_half3_rtn  _cl_vstorea_half3_rtn
464 #define convert_char3    _cl_convert_char3
465 #define convert_uchar3    _cl_convert_uchar3
466 #define convert_short3    _cl_convert_short3
467 #define convert_ushort3    _cl_convert_ushort3
468 #define convert_int3    _cl_convert_int3
469 #define convert_uint3    _cl_convert_uint3
470 #define convert_long3    _cl_convert_long3
471 #define convert_ulong3    _cl_convert_ulong3
472 #define convert_float3    _cl_convert_float3
473 #define convert_double3    _cl_convert_double3
474 #define convert_char3_rte    _cl_convert_char3_rte
475 #define convert_uchar3_rte    _cl_convert_uchar3_rte
476 #define convert_short3_rte    _cl_convert_short3_rte
477 #define convert_ushort3_rte    _cl_convert_ushort3_rte
478 #define convert_int3_rte    _cl_convert_int3_rte
479 #define convert_uint3_rte    _cl_convert_uint3_rte
480 #define convert_long3_rte    _cl_convert_long3_rte
481 #define convert_ulong3_rte    _cl_convert_ulong3_rte
482 #define convert_float3_rte    _cl_convert_float3_rte
483 #define convert_double3_rte    _cl_convert_double3_rte
484 #define convert_char3_rtz    _cl_convert_char3_rtz
485 #define convert_uchar3_rtz    _cl_convert_uchar3_rtz
486 #define convert_short3_rtz    _cl_convert_short3_rtz
487 #define convert_ushort3_rtz    _cl_convert_ushort3_rtz
488 #define convert_int3_rtz    _cl_convert_int3_rtz
489 #define convert_uint3_rtz    _cl_convert_uint3_rtz
490 #define convert_long3_rtz    _cl_convert_long3_rtz
491 #define convert_ulong3_rtz    _cl_convert_ulong3_rtz
492 #define convert_float3_rtz    _cl_convert_float3_rtz
493 #define convert_double3_rtz    _cl_convert_double3_rtz
494 #define convert_char3_rtp    _cl_convert_char3_rtp
495 #define convert_uchar3_rtp    _cl_convert_uchar3_rtp
496 #define convert_short3_rtp    _cl_convert_short3_rtp
497 #define convert_ushort3_rtp    _cl_convert_ushort3_rtp
498 #define convert_int3_rtp    _cl_convert_int3_rtp
499 #define convert_uint3_rtp    _cl_convert_uint3_rtp
500 #define convert_long3_rtp    _cl_convert_long3_rtp
501 #define convert_ulong3_rtp    _cl_convert_ulong3_rtp
502 #define convert_float3_rtp    _cl_convert_float3_rtp
503 #define convert_double3_rtp    _cl_convert_double3_rtp
504 #define convert_char3_rtn    _cl_convert_char3_rtn
505 #define convert_uchar3_rtn    _cl_convert_uchar3_rtn
506 #define convert_short3_rtn    _cl_convert_short3_rtn
507 #define convert_ushort3_rtn    _cl_convert_ushort3_rtn
508 #define convert_int3_rtn    _cl_convert_int3_rtn
509 #define convert_uint3_rtn    _cl_convert_uint3_rtn
510 #define convert_long3_rtn    _cl_convert_long3_rtn
511 #define convert_ulong3_rtn    _cl_convert_ulong3_rtn
512 #define convert_float3_rtn    _cl_convert_float3_rtn
513 #define convert_double3_rtn    _cl_convert_double3_rtn
514 #define convert_char3_sat    _cl_convert_char3_sat
515 #define convert_uchar3_sat    _cl_convert_uchar3_sat
516 #define convert_short3_sat    _cl_convert_short3_sat
517 #define convert_ushort3_sat    _cl_convert_ushort3_sat
518 #define convert_int3_sat    _cl_convert_int3_sat
519 #define convert_uint3_sat    _cl_convert_uint3_sat
520 #define convert_long3_sat    _cl_convert_long3_sat
521 #define convert_ulong3_sat    _cl_convert_ulong3_sat
522 #define convert_float3_sat    _cl_convert_float3_sat
523 #define convert_double3_sat    _cl_convert_double3_sat
524 #define convert_char3_sat_rte    _cl_convert_char3_sat_rte
525 #define convert_uchar3_sat_rte    _cl_convert_uchar3_sat_rte
526 #define convert_short3_sat_rte    _cl_convert_short3_sat_rte
527 #define convert_ushort3_sat_rte    _cl_convert_ushort3_sat_rte
528 #define convert_int3_sat_rte    _cl_convert_int3_sat_rte
529 #define convert_uint3_sat_rte    _cl_convert_uint3_sat_rte
530 #define convert_long3_sat_rte    _cl_convert_long3_sat_rte
531 #define convert_ulong3_sat_rte    _cl_convert_ulong3_sat_rte
532 #define convert_float3_sat_rte    _cl_convert_float3_sat_rte
533 #define convert_double3_sat_rte    _cl_convert_double3_sat_rte
534 #define convert_char3_sat_rtz    _cl_convert_char3_sat_rtz
535 #define convert_uchar3_sat_rtz    _cl_convert_uchar3_sat_rtz
536 #define convert_short3_sat_rtz    _cl_convert_short3_sat_rtz
537 #define convert_ushort3_sat_rtz    _cl_convert_ushort3_sat_rtz
538 #define convert_int3_sat_rtz    _cl_convert_int3_sat_rtz
539 #define convert_uint3_sat_rtz    _cl_convert_uint3_sat_rtz
540 #define convert_long3_sat_rtz    _cl_convert_long3_sat_rtz
541 #define convert_ulong3_sat_rtz    _cl_convert_ulong3_sat_rtz
542 #define convert_float3_sat_rtz    _cl_convert_float3_sat_rtz
543 #define convert_double3_sat_rtz    _cl_convert_double3_sat_rtz
544 #define convert_char3_sat_rtp    _cl_convert_char3_sat_rtp
545 #define convert_uchar3_sat_rtp    _cl_convert_uchar3_sat_rtp
546 #define convert_short3_sat_rtp    _cl_convert_short3_sat_rtp
547 #define convert_ushort3_sat_rtp    _cl_convert_ushort3_sat_rtp
548 #define convert_int3_sat_rtp    _cl_convert_int3_sat_rtp
549 #define convert_uint3_sat_rtp    _cl_convert_uint3_sat_rtp
550 #define convert_long3_sat_rtp    _cl_convert_long3_sat_rtp
551 #define convert_ulong3_sat_rtp    _cl_convert_ulong3_sat_rtp
552 #define convert_float3_sat_rtp    _cl_convert_float3_sat_rtp
553 #define convert_double3_sat_rtp    _cl_convert_double3_sat_rtp
554 #define convert_char3_sat_rtn    _cl_convert_char3_sat_rtn
555 #define convert_uchar3_sat_rtn    _cl_convert_uchar3_sat_rtn
556 #define convert_short3_sat_rtn    _cl_convert_short3_sat_rtn
557 #define convert_ushort3_sat_rtn    _cl_convert_ushort3_sat_rtn
558 #define convert_int3_sat_rtn    _cl_convert_int3_sat_rtn
559 #define convert_uint3_sat_rtn    _cl_convert_uint3_sat_rtn
560 #define convert_long3_sat_rtn    _cl_convert_long3_sat_rtn
561 #define convert_ulong3_sat_rtn    _cl_convert_ulong3_sat_rtn
562 #define convert_float3_sat_rtn    _cl_convert_float3_sat_rtn
563 #define convert_double3_sat_rtn    _cl_convert_double3_sat_rtn
564 
565 #define  vload4   _cl_vload4
566 #define  vstore4  _cl_vstore4
567 #define  vload_half4   _cl_vload_half4
568 #define  vstore_half4  _cl_vstore_half4
569 #define  vloada_half4   _cl_vloada_half4
570 #define  vstorea_half4  _cl_vstorea_half4
571 #define  vload_half4_rte   _cl_vload_half4_rte
572 #define  vstore_half4_rte  _cl_vstore_half4_rte
573 #define  vloada_half4_rte   _cl_vloada_half4_rte
574 #define  vstorea_half4_rte  _cl_vstorea_half4_rte
575 #define  vload_half4_rtz   _cl_vload_half4_rtz
576 #define  vstore_half4_rtz  _cl_vstore_half4_rtz
577 #define  vloada_half4_rtz   _cl_vloada_half4_rtz
578 #define  vstorea_half4_rtz  _cl_vstorea_half4_rtz
579 #define  vload_half4_rtp   _cl_vload_half4_rtp
580 #define  vstore_half4_rtp  _cl_vstore_half4_rtp
581 #define  vloada_half4_rtp   _cl_vloada_half4_rtp
582 #define  vstorea_half4_rtp  _cl_vstorea_half4_rtp
583 #define  vload_half4_rtn   _cl_vload_half4_rtn
584 #define  vstore_half4_rtn  _cl_vstore_half4_rtn
585 #define  vloada_half4_rtn   _cl_vloada_half4_rtn
586 #define  vstorea_half4_rtn  _cl_vstorea_half4_rtn
587 #define convert_char4    _cl_convert_char4
588 #define convert_uchar4    _cl_convert_uchar4
589 #define convert_short4    _cl_convert_short4
590 #define convert_ushort4    _cl_convert_ushort4
591 #define convert_int4    _cl_convert_int4
592 #define convert_uint4    _cl_convert_uint4
593 #define convert_long4    _cl_convert_long4
594 #define convert_ulong4    _cl_convert_ulong4
595 #define convert_float4    _cl_convert_float4
596 #define convert_double4    _cl_convert_double4
597 #define convert_char4_rte    _cl_convert_char4_rte
598 #define convert_uchar4_rte    _cl_convert_uchar4_rte
599 #define convert_short4_rte    _cl_convert_short4_rte
600 #define convert_ushort4_rte    _cl_convert_ushort4_rte
601 #define convert_int4_rte    _cl_convert_int4_rte
602 #define convert_uint4_rte    _cl_convert_uint4_rte
603 #define convert_long4_rte    _cl_convert_long4_rte
604 #define convert_ulong4_rte    _cl_convert_ulong4_rte
605 #define convert_float4_rte    _cl_convert_float4_rte
606 #define convert_double4_rte    _cl_convert_double4_rte
607 #define convert_char4_rtz    _cl_convert_char4_rtz
608 #define convert_uchar4_rtz    _cl_convert_uchar4_rtz
609 #define convert_short4_rtz    _cl_convert_short4_rtz
610 #define convert_ushort4_rtz    _cl_convert_ushort4_rtz
611 #define convert_int4_rtz    _cl_convert_int4_rtz
612 #define convert_uint4_rtz    _cl_convert_uint4_rtz
613 #define convert_long4_rtz    _cl_convert_long4_rtz
614 #define convert_ulong4_rtz    _cl_convert_ulong4_rtz
615 #define convert_float4_rtz    _cl_convert_float4_rtz
616 #define convert_double4_rtz    _cl_convert_double4_rtz
617 #define convert_char4_rtp    _cl_convert_char4_rtp
618 #define convert_uchar4_rtp    _cl_convert_uchar4_rtp
619 #define convert_short4_rtp    _cl_convert_short4_rtp
620 #define convert_ushort4_rtp    _cl_convert_ushort4_rtp
621 #define convert_int4_rtp    _cl_convert_int4_rtp
622 #define convert_uint4_rtp    _cl_convert_uint4_rtp
623 #define convert_long4_rtp    _cl_convert_long4_rtp
624 #define convert_ulong4_rtp    _cl_convert_ulong4_rtp
625 #define convert_float4_rtp    _cl_convert_float4_rtp
626 #define convert_double4_rtp    _cl_convert_double4_rtp
627 #define convert_char4_rtn    _cl_convert_char4_rtn
628 #define convert_uchar4_rtn    _cl_convert_uchar4_rtn
629 #define convert_short4_rtn    _cl_convert_short4_rtn
630 #define convert_ushort4_rtn    _cl_convert_ushort4_rtn
631 #define convert_int4_rtn    _cl_convert_int4_rtn
632 #define convert_uint4_rtn    _cl_convert_uint4_rtn
633 #define convert_long4_rtn    _cl_convert_long4_rtn
634 #define convert_ulong4_rtn    _cl_convert_ulong4_rtn
635 #define convert_float4_rtn    _cl_convert_float4_rtn
636 #define convert_double4_rtn    _cl_convert_double4_rtn
637 #define convert_char4_sat    _cl_convert_char4_sat
638 #define convert_uchar4_sat    _cl_convert_uchar4_sat
639 #define convert_short4_sat    _cl_convert_short4_sat
640 #define convert_ushort4_sat    _cl_convert_ushort4_sat
641 #define convert_int4_sat    _cl_convert_int4_sat
642 #define convert_uint4_sat    _cl_convert_uint4_sat
643 #define convert_long4_sat    _cl_convert_long4_sat
644 #define convert_ulong4_sat    _cl_convert_ulong4_sat
645 #define convert_float4_sat    _cl_convert_float4_sat
646 #define convert_double4_sat    _cl_convert_double4_sat
647 #define convert_char4_sat_rte    _cl_convert_char4_sat_rte
648 #define convert_uchar4_sat_rte    _cl_convert_uchar4_sat_rte
649 #define convert_short4_sat_rte    _cl_convert_short4_sat_rte
650 #define convert_ushort4_sat_rte    _cl_convert_ushort4_sat_rte
651 #define convert_int4_sat_rte    _cl_convert_int4_sat_rte
652 #define convert_uint4_sat_rte    _cl_convert_uint4_sat_rte
653 #define convert_long4_sat_rte    _cl_convert_long4_sat_rte
654 #define convert_ulong4_sat_rte    _cl_convert_ulong4_sat_rte
655 #define convert_float4_sat_rte    _cl_convert_float4_sat_rte
656 #define convert_double4_sat_rte    _cl_convert_double4_sat_rte
657 #define convert_char4_sat_rtz    _cl_convert_char4_sat_rtz
658 #define convert_uchar4_sat_rtz    _cl_convert_uchar4_sat_rtz
659 #define convert_short4_sat_rtz    _cl_convert_short4_sat_rtz
660 #define convert_ushort4_sat_rtz    _cl_convert_ushort4_sat_rtz
661 #define convert_int4_sat_rtz    _cl_convert_int4_sat_rtz
662 #define convert_uint4_sat_rtz    _cl_convert_uint4_sat_rtz
663 #define convert_long4_sat_rtz    _cl_convert_long4_sat_rtz
664 #define convert_ulong4_sat_rtz    _cl_convert_ulong4_sat_rtz
665 #define convert_float4_sat_rtz    _cl_convert_float4_sat_rtz
666 #define convert_double4_sat_rtz    _cl_convert_double4_sat_rtz
667 #define convert_char4_sat_rtp    _cl_convert_char4_sat_rtp
668 #define convert_uchar4_sat_rtp    _cl_convert_uchar4_sat_rtp
669 #define convert_short4_sat_rtp    _cl_convert_short4_sat_rtp
670 #define convert_ushort4_sat_rtp    _cl_convert_ushort4_sat_rtp
671 #define convert_int4_sat_rtp    _cl_convert_int4_sat_rtp
672 #define convert_uint4_sat_rtp    _cl_convert_uint4_sat_rtp
673 #define convert_long4_sat_rtp    _cl_convert_long4_sat_rtp
674 #define convert_ulong4_sat_rtp    _cl_convert_ulong4_sat_rtp
675 #define convert_float4_sat_rtp    _cl_convert_float4_sat_rtp
676 #define convert_double4_sat_rtp    _cl_convert_double4_sat_rtp
677 #define convert_char4_sat_rtn    _cl_convert_char4_sat_rtn
678 #define convert_uchar4_sat_rtn    _cl_convert_uchar4_sat_rtn
679 #define convert_short4_sat_rtn    _cl_convert_short4_sat_rtn
680 #define convert_ushort4_sat_rtn    _cl_convert_ushort4_sat_rtn
681 #define convert_int4_sat_rtn    _cl_convert_int4_sat_rtn
682 #define convert_uint4_sat_rtn    _cl_convert_uint4_sat_rtn
683 #define convert_long4_sat_rtn    _cl_convert_long4_sat_rtn
684 #define convert_ulong4_sat_rtn    _cl_convert_ulong4_sat_rtn
685 #define convert_float4_sat_rtn    _cl_convert_float4_sat_rtn
686 #define convert_double4_sat_rtn    _cl_convert_double4_sat_rtn
687 
688 #define  vload8   _cl_vload8
689 #define  vstore8  _cl_vstore8
690 #define  vload_half8   _cl_vload_half8
691 #define  vstore_half8  _cl_vstore_half8
692 #define  vloada_half8   _cl_vloada_half8
693 #define  vstorea_half8  _cl_vstorea_half8
694 #define  vload_half8_rte   _cl_vload_half8_rte
695 #define  vstore_half8_rte  _cl_vstore_half8_rte
696 #define  vloada_half8_rte   _cl_vloada_half8_rte
697 #define  vstorea_half8_rte  _cl_vstorea_half8_rte
698 #define  vload_half8_rtz   _cl_vload_half8_rtz
699 #define  vstore_half8_rtz  _cl_vstore_half8_rtz
700 #define  vloada_half8_rtz   _cl_vloada_half8_rtz
701 #define  vstorea_half8_rtz  _cl_vstorea_half8_rtz
702 #define  vload_half8_rtp   _cl_vload_half8_rtp
703 #define  vstore_half8_rtp  _cl_vstore_half8_rtp
704 #define  vloada_half8_rtp   _cl_vloada_half8_rtp
705 #define  vstorea_half8_rtp  _cl_vstorea_half8_rtp
706 #define  vload_half8_rtn   _cl_vload_half8_rtn
707 #define  vstore_half8_rtn  _cl_vstore_half8_rtn
708 #define  vloada_half8_rtn   _cl_vloada_half8_rtn
709 #define  vstorea_half8_rtn  _cl_vstorea_half8_rtn
710 #define convert_char8    _cl_convert_char8
711 #define convert_uchar8    _cl_convert_uchar8
712 #define convert_short8    _cl_convert_short8
713 #define convert_ushort8    _cl_convert_ushort8
714 #define convert_int8    _cl_convert_int8
715 #define convert_uint8    _cl_convert_uint8
716 #define convert_long8    _cl_convert_long8
717 #define convert_ulong8    _cl_convert_ulong8
718 #define convert_float8    _cl_convert_float8
719 #define convert_double8    _cl_convert_double8
720 #define convert_char8_rte    _cl_convert_char8_rte
721 #define convert_uchar8_rte    _cl_convert_uchar8_rte
722 #define convert_short8_rte    _cl_convert_short8_rte
723 #define convert_ushort8_rte    _cl_convert_ushort8_rte
724 #define convert_int8_rte    _cl_convert_int8_rte
725 #define convert_uint8_rte    _cl_convert_uint8_rte
726 #define convert_long8_rte    _cl_convert_long8_rte
727 #define convert_ulong8_rte    _cl_convert_ulong8_rte
728 #define convert_float8_rte    _cl_convert_float8_rte
729 #define convert_double8_rte    _cl_convert_double8_rte
730 #define convert_char8_rtz    _cl_convert_char8_rtz
731 #define convert_uchar8_rtz    _cl_convert_uchar8_rtz
732 #define convert_short8_rtz    _cl_convert_short8_rtz
733 #define convert_ushort8_rtz    _cl_convert_ushort8_rtz
734 #define convert_int8_rtz    _cl_convert_int8_rtz
735 #define convert_uint8_rtz    _cl_convert_uint8_rtz
736 #define convert_long8_rtz    _cl_convert_long8_rtz
737 #define convert_ulong8_rtz    _cl_convert_ulong8_rtz
738 #define convert_float8_rtz    _cl_convert_float8_rtz
739 #define convert_double8_rtz    _cl_convert_double8_rtz
740 #define convert_char8_rtp    _cl_convert_char8_rtp
741 #define convert_uchar8_rtp    _cl_convert_uchar8_rtp
742 #define convert_short8_rtp    _cl_convert_short8_rtp
743 #define convert_ushort8_rtp    _cl_convert_ushort8_rtp
744 #define convert_int8_rtp    _cl_convert_int8_rtp
745 #define convert_uint8_rtp    _cl_convert_uint8_rtp
746 #define convert_long8_rtp    _cl_convert_long8_rtp
747 #define convert_ulong8_rtp    _cl_convert_ulong8_rtp
748 #define convert_float8_rtp    _cl_convert_float8_rtp
749 #define convert_double8_rtp    _cl_convert_double8_rtp
750 #define convert_char8_rtn    _cl_convert_char8_rtn
751 #define convert_uchar8_rtn    _cl_convert_uchar8_rtn
752 #define convert_short8_rtn    _cl_convert_short8_rtn
753 #define convert_ushort8_rtn    _cl_convert_ushort8_rtn
754 #define convert_int8_rtn    _cl_convert_int8_rtn
755 #define convert_uint8_rtn    _cl_convert_uint8_rtn
756 #define convert_long8_rtn    _cl_convert_long8_rtn
757 #define convert_ulong8_rtn    _cl_convert_ulong8_rtn
758 #define convert_float8_rtn    _cl_convert_float8_rtn
759 #define convert_double8_rtn    _cl_convert_double8_rtn
760 #define convert_char8_sat    _cl_convert_char8_sat
761 #define convert_uchar8_sat    _cl_convert_uchar8_sat
762 #define convert_short8_sat    _cl_convert_short8_sat
763 #define convert_ushort8_sat    _cl_convert_ushort8_sat
764 #define convert_int8_sat    _cl_convert_int8_sat
765 #define convert_uint8_sat    _cl_convert_uint8_sat
766 #define convert_long8_sat    _cl_convert_long8_sat
767 #define convert_ulong8_sat    _cl_convert_ulong8_sat
768 #define convert_float8_sat    _cl_convert_float8_sat
769 #define convert_double8_sat    _cl_convert_double8_sat
770 #define convert_char8_sat_rte    _cl_convert_char8_sat_rte
771 #define convert_uchar8_sat_rte    _cl_convert_uchar8_sat_rte
772 #define convert_short8_sat_rte    _cl_convert_short8_sat_rte
773 #define convert_ushort8_sat_rte    _cl_convert_ushort8_sat_rte
774 #define convert_int8_sat_rte    _cl_convert_int8_sat_rte
775 #define convert_uint8_sat_rte    _cl_convert_uint8_sat_rte
776 #define convert_long8_sat_rte    _cl_convert_long8_sat_rte
777 #define convert_ulong8_sat_rte    _cl_convert_ulong8_sat_rte
778 #define convert_float8_sat_rte    _cl_convert_float8_sat_rte
779 #define convert_double8_sat_rte    _cl_convert_double8_sat_rte
780 #define convert_char8_sat_rtz    _cl_convert_char8_sat_rtz
781 #define convert_uchar8_sat_rtz    _cl_convert_uchar8_sat_rtz
782 #define convert_short8_sat_rtz    _cl_convert_short8_sat_rtz
783 #define convert_ushort8_sat_rtz    _cl_convert_ushort8_sat_rtz
784 #define convert_int8_sat_rtz    _cl_convert_int8_sat_rtz
785 #define convert_uint8_sat_rtz    _cl_convert_uint8_sat_rtz
786 #define convert_long8_sat_rtz    _cl_convert_long8_sat_rtz
787 #define convert_ulong8_sat_rtz    _cl_convert_ulong8_sat_rtz
788 #define convert_float8_sat_rtz    _cl_convert_float8_sat_rtz
789 #define convert_double8_sat_rtz    _cl_convert_double8_sat_rtz
790 #define convert_char8_sat_rtp    _cl_convert_char8_sat_rtp
791 #define convert_uchar8_sat_rtp    _cl_convert_uchar8_sat_rtp
792 #define convert_short8_sat_rtp    _cl_convert_short8_sat_rtp
793 #define convert_ushort8_sat_rtp    _cl_convert_ushort8_sat_rtp
794 #define convert_int8_sat_rtp    _cl_convert_int8_sat_rtp
795 #define convert_uint8_sat_rtp    _cl_convert_uint8_sat_rtp
796 #define convert_long8_sat_rtp    _cl_convert_long8_sat_rtp
797 #define convert_ulong8_sat_rtp    _cl_convert_ulong8_sat_rtp
798 #define convert_float8_sat_rtp    _cl_convert_float8_sat_rtp
799 #define convert_double8_sat_rtp    _cl_convert_double8_sat_rtp
800 #define convert_char8_sat_rtn    _cl_convert_char8_sat_rtn
801 #define convert_uchar8_sat_rtn    _cl_convert_uchar8_sat_rtn
802 #define convert_short8_sat_rtn    _cl_convert_short8_sat_rtn
803 #define convert_ushort8_sat_rtn    _cl_convert_ushort8_sat_rtn
804 #define convert_int8_sat_rtn    _cl_convert_int8_sat_rtn
805 #define convert_uint8_sat_rtn    _cl_convert_uint8_sat_rtn
806 #define convert_long8_sat_rtn    _cl_convert_long8_sat_rtn
807 #define convert_ulong8_sat_rtn    _cl_convert_ulong8_sat_rtn
808 #define convert_float8_sat_rtn    _cl_convert_float8_sat_rtn
809 #define convert_double8_sat_rtn    _cl_convert_double8_sat_rtn
810 
811 #define  vload16   _cl_vload16
812 #define  vstore16  _cl_vstore16
813 #define  vload_half16   _cl_vload_half16
814 #define  vstore_half16  _cl_vstore_half16
815 #define  vloada_half16   _cl_vloada_half16
816 #define  vstorea_half16  _cl_vstorea_half16
817 #define  vload_half16_rte   _cl_vload_half16_rte
818 #define  vstore_half16_rte  _cl_vstore_half16_rte
819 #define  vloada_half16_rte   _cl_vloada_half16_rte
820 #define  vstorea_half16_rte  _cl_vstorea_half16_rte
821 #define  vload_half16_rtz   _cl_vload_half16_rtz
822 #define  vstore_half16_rtz  _cl_vstore_half16_rtz
823 #define  vloada_half16_rtz   _cl_vloada_half16_rtz
824 #define  vstorea_half16_rtz  _cl_vstorea_half16_rtz
825 #define  vload_half16_rtp   _cl_vload_half16_rtp
826 #define  vstore_half16_rtp  _cl_vstore_half16_rtp
827 #define  vloada_half16_rtp   _cl_vloada_half16_rtp
828 #define  vstorea_half16_rtp  _cl_vstorea_half16_rtp
829 #define  vload_half16_rtn   _cl_vload_half16_rtn
830 #define  vstore_half16_rtn  _cl_vstore_half16_rtn
831 #define  vloada_half16_rtn   _cl_vloada_half16_rtn
832 #define  vstorea_half16_rtn  _cl_vstorea_half16_rtn
833 #define convert_char16    _cl_convert_char16
834 #define convert_uchar16    _cl_convert_uchar16
835 #define convert_short16    _cl_convert_short16
836 #define convert_ushort16    _cl_convert_ushort16
837 #define convert_int16    _cl_convert_int16
838 #define convert_uint16    _cl_convert_uint16
839 #define convert_long16    _cl_convert_long16
840 #define convert_ulong16    _cl_convert_ulong16
841 #define convert_float16    _cl_convert_float16
842 #define convert_double16    _cl_convert_double16
843 #define convert_char16_rte    _cl_convert_char16_rte
844 #define convert_uchar16_rte    _cl_convert_uchar16_rte
845 #define convert_short16_rte    _cl_convert_short16_rte
846 #define convert_ushort16_rte    _cl_convert_ushort16_rte
847 #define convert_int16_rte    _cl_convert_int16_rte
848 #define convert_uint16_rte    _cl_convert_uint16_rte
849 #define convert_long16_rte    _cl_convert_long16_rte
850 #define convert_ulong16_rte    _cl_convert_ulong16_rte
851 #define convert_float16_rte    _cl_convert_float16_rte
852 #define convert_double16_rte    _cl_convert_double16_rte
853 #define convert_char16_rtz    _cl_convert_char16_rtz
854 #define convert_uchar16_rtz    _cl_convert_uchar16_rtz
855 #define convert_short16_rtz    _cl_convert_short16_rtz
856 #define convert_ushort16_rtz    _cl_convert_ushort16_rtz
857 #define convert_int16_rtz    _cl_convert_int16_rtz
858 #define convert_uint16_rtz    _cl_convert_uint16_rtz
859 #define convert_long16_rtz    _cl_convert_long16_rtz
860 #define convert_ulong16_rtz    _cl_convert_ulong16_rtz
861 #define convert_float16_rtz    _cl_convert_float16_rtz
862 #define convert_double16_rtz    _cl_convert_double16_rtz
863 #define convert_char16_rtp    _cl_convert_char16_rtp
864 #define convert_uchar16_rtp    _cl_convert_uchar16_rtp
865 #define convert_short16_rtp    _cl_convert_short16_rtp
866 #define convert_ushort16_rtp    _cl_convert_ushort16_rtp
867 #define convert_int16_rtp    _cl_convert_int16_rtp
868 #define convert_uint16_rtp    _cl_convert_uint16_rtp
869 #define convert_long16_rtp    _cl_convert_long16_rtp
870 #define convert_ulong16_rtp    _cl_convert_ulong16_rtp
871 #define convert_float16_rtp    _cl_convert_float16_rtp
872 #define convert_double16_rtp    _cl_convert_double16_rtp
873 #define convert_char16_rtn    _cl_convert_char16_rtn
874 #define convert_uchar16_rtn    _cl_convert_uchar16_rtn
875 #define convert_short16_rtn    _cl_convert_short16_rtn
876 #define convert_ushort16_rtn    _cl_convert_ushort16_rtn
877 #define convert_int16_rtn    _cl_convert_int16_rtn
878 #define convert_uint16_rtn    _cl_convert_uint16_rtn
879 #define convert_long16_rtn    _cl_convert_long16_rtn
880 #define convert_ulong16_rtn    _cl_convert_ulong16_rtn
881 #define convert_float16_rtn    _cl_convert_float16_rtn
882 #define convert_double16_rtn    _cl_convert_double16_rtn
883 #define convert_char16_sat    _cl_convert_char16_sat
884 #define convert_uchar16_sat    _cl_convert_uchar16_sat
885 #define convert_short16_sat    _cl_convert_short16_sat
886 #define convert_ushort16_sat    _cl_convert_ushort16_sat
887 #define convert_int16_sat    _cl_convert_int16_sat
888 #define convert_uint16_sat    _cl_convert_uint16_sat
889 #define convert_long16_sat    _cl_convert_long16_sat
890 #define convert_ulong16_sat    _cl_convert_ulong16_sat
891 #define convert_float16_sat    _cl_convert_float16_sat
892 #define convert_double16_sat    _cl_convert_double16_sat
893 #define convert_char16_sat_rte    _cl_convert_char16_sat_rte
894 #define convert_uchar16_sat_rte    _cl_convert_uchar16_sat_rte
895 #define convert_short16_sat_rte    _cl_convert_short16_sat_rte
896 #define convert_ushort16_sat_rte    _cl_convert_ushort16_sat_rte
897 #define convert_int16_sat_rte    _cl_convert_int16_sat_rte
898 #define convert_uint16_sat_rte    _cl_convert_uint16_sat_rte
899 #define convert_long16_sat_rte    _cl_convert_long16_sat_rte
900 #define convert_ulong16_sat_rte    _cl_convert_ulong16_sat_rte
901 #define convert_float16_sat_rte    _cl_convert_float16_sat_rte
902 #define convert_double16_sat_rte    _cl_convert_double16_sat_rte
903 #define convert_char16_sat_rtz    _cl_convert_char16_sat_rtz
904 #define convert_uchar16_sat_rtz    _cl_convert_uchar16_sat_rtz
905 #define convert_short16_sat_rtz    _cl_convert_short16_sat_rtz
906 #define convert_ushort16_sat_rtz    _cl_convert_ushort16_sat_rtz
907 #define convert_int16_sat_rtz    _cl_convert_int16_sat_rtz
908 #define convert_uint16_sat_rtz    _cl_convert_uint16_sat_rtz
909 #define convert_long16_sat_rtz    _cl_convert_long16_sat_rtz
910 #define convert_ulong16_sat_rtz    _cl_convert_ulong16_sat_rtz
911 #define convert_float16_sat_rtz    _cl_convert_float16_sat_rtz
912 #define convert_double16_sat_rtz    _cl_convert_double16_sat_rtz
913 #define convert_char16_sat_rtp    _cl_convert_char16_sat_rtp
914 #define convert_uchar16_sat_rtp    _cl_convert_uchar16_sat_rtp
915 #define convert_short16_sat_rtp    _cl_convert_short16_sat_rtp
916 #define convert_ushort16_sat_rtp    _cl_convert_ushort16_sat_rtp
917 #define convert_int16_sat_rtp    _cl_convert_int16_sat_rtp
918 #define convert_uint16_sat_rtp    _cl_convert_uint16_sat_rtp
919 #define convert_long16_sat_rtp    _cl_convert_long16_sat_rtp
920 #define convert_ulong16_sat_rtp    _cl_convert_ulong16_sat_rtp
921 #define convert_float16_sat_rtp    _cl_convert_float16_sat_rtp
922 #define convert_double16_sat_rtp    _cl_convert_double16_sat_rtp
923 #define convert_char16_sat_rtn    _cl_convert_char16_sat_rtn
924 #define convert_uchar16_sat_rtn    _cl_convert_uchar16_sat_rtn
925 #define convert_short16_sat_rtn    _cl_convert_short16_sat_rtn
926 #define convert_ushort16_sat_rtn    _cl_convert_ushort16_sat_rtn
927 #define convert_int16_sat_rtn    _cl_convert_int16_sat_rtn
928 #define convert_uint16_sat_rtn    _cl_convert_uint16_sat_rtn
929 #define convert_long16_sat_rtn    _cl_convert_long16_sat_rtn
930 #define convert_ulong16_sat_rtn    _cl_convert_ulong16_sat_rtn
931 #define convert_float16_sat_rtn    _cl_convert_float16_sat_rtn
932 #define convert_double16_sat_rtn    _cl_convert_double16_sat_rtn
933 
934 
935 #define atomic_add     _cl_atomic_add
936 #define atomic_sub     _cl_atomic_sub
937 #define atomic_xchg    _cl_atomic_xchg
938 #define atomic_inc     _cl_atomic_inc
939 #define atomic_dec     _cl_atomic_dec
940 #define atomic_cmpxchg _cl_atomic_cmpxchg
941 #define atomic_min     _cl_atomic_min
942 #define atomic_max     _cl_atomic_max
943 #define atomic_and     _cl_atomic_and
944 #define atomic_or      _cl_atomic_or
945 #define atomic_xor     _cl_atomic_xor
946 
947 #define atom_add     _cl_atomic_add
948 #define atom_sub     _cl_atomic_sub
949 #define atom_xchg    _cl_atomic_xchg
950 #define atom_inc     _cl_atomic_inc
951 #define atom_dec     _cl_atomic_dec
952 #define atom_cmpxchg _cl_atomic_cmpxchg
953 #define atom_min     _cl_atomic_min
954 #define atom_max     _cl_atomic_max
955 #define atom_and     _cl_atomic_and
956 #define atom_or      _cl_atomic_or
957 #define atom_xor     _cl_atomic_xor
958 
959 #define  atomic_init    _cl_atomic_init
960 #define  atomic_flag_test_and_set_explicit    _cl_atomic_flag_test_and_set_explicit
961 #define  atomic_flag_test_and_set    _cl_atomic_flag_test_and_set
962 #define  atomic_flag_clear_explicit    _cl_atomic_flag_clear_explicit
963 #define  atomic_flag_clear    _cl_atomic_flag_clear
964 #define  atomic_store_explicit    _cl_atomic_store_explicit
965 #define  atomic_store    _cl_atomic_store
966 #define  atomic_load_explicit    _cl_atomic_load_explicit
967 #define  atomic_load    _cl_atomic_load
968 #define  atomic_exchange_explicit    _cl_atomic_exchange_explicit
969 #define  atomic_exchange    _cl_atomic_exchange
970 #define  atomic_compare_exchange_strong_explicit    _cl_atomic_compare_exchange_strong_explicit
971 #define  atomic_compare_exchange_strong    _cl_atomic_compare_exchange_strong
972 #define  atomic_compare_exchange_weak_explicit    _cl_atomic_compare_exchange_weak_explicit
973 #define  atomic_compare_exchange_weak    _cl_atomic_compare_exchange_weak
974 #define  atomic_fetch_add_explicit    _cl_atomic_fetch_add_explicit
975 #define  atomic_fetch_add    _cl_atomic_fetch_add
976 #define  atomic_fetch_sub_explicit    _cl_atomic_fetch_sub_explicit
977 #define  atomic_fetch_sub    _cl_atomic_fetch_sub
978 #define  atomic_fetch_or_explicit    _cl_atomic_fetch_or_explicit
979 #define  atomic_fetch_or    _cl_atomic_fetch_or
980 #define  atomic_fetch_xor_explicit    _cl_atomic_fetch_xor_explicit
981 #define  atomic_fetch_xor    _cl_atomic_fetch_xor
982 #define  atomic_fetch_and_explicit    _cl_atomic_fetch_and_explicit
983 #define  atomic_fetch_and    _cl_atomic_fetch_and
984 #define  atomic_fetch_min_explicit    _cl_atomic_fetch_min_explicit
985 #define  atomic_fetch_min    _cl_atomic_fetch_min
986 #define  atomic_fetch_max_explicit    _cl_atomic_fetch_max_explicit
987 #define  atomic_fetch_max    _cl_atomic_fetch_max
988 
989 #endif
990