27 #if defined(__cplusplus) 33 __attribute__((
const))
34 float __ocml_acos_f32(
float);
37 float __ocml_acosh_f32(
float);
39 __attribute__((const))
40 float __ocml_asin_f32(
float);
43 float __ocml_asinh_f32(
float);
45 __attribute__((const))
46 float __ocml_atan2_f32(
float,
float);
48 __attribute__((const))
49 float __ocml_atan_f32(
float);
52 float __ocml_atanh_f32(
float);
55 float __ocml_cbrt_f32(
float);
57 __attribute__((const))
58 float __ocml_ceil_f32(
float);
60 __attribute__((const))
62 float __ocml_copysign_f32(
float,
float);
64 float __ocml_cos_f32(
float);
68 float __ocml_cosh_f32(
float);
70 float __ocml_cospi_f32(
float);
72 float __ocml_i0_f32(
float);
74 float __ocml_i1_f32(
float);
77 float __ocml_erfc_f32(
float);
80 float __ocml_erfcinv_f32(
float);
83 float __ocml_erfcx_f32(
float);
86 float __ocml_erf_f32(
float);
89 float __ocml_erfinv_f32(
float);
92 float __ocml_exp10_f32(
float);
95 float __ocml_exp2_f32(
float);
98 float __ocml_exp_f32(
float);
100 __attribute__((pure))
101 float __ocml_expm1_f32(
float);
103 __attribute__((const))
104 float __ocml_fabs_f32(
float);
106 __attribute__((const))
107 float __ocml_fdim_f32(
float,
float);
109 __attribute__((const))
110 float __ocml_floor_f32(
float);
112 __attribute__((const))
113 float __ocml_fma_f32(
float,
float,
float);
115 __attribute__((const))
116 float __ocml_fmax_f32(
float,
float);
118 __attribute__((const))
119 float __ocml_fmin_f32(
float,
float);
121 __attribute__((const))
123 float __ocml_fmod_f32(
float,
float);
125 float __ocml_frexp_f32(
float, __attribute__((address_space(5)))
int*);
127 __attribute__((const))
128 float __ocml_hypot_f32(
float,
float);
130 __attribute__((const))
131 int __ocml_ilogb_f32(
float);
133 __attribute__((const))
134 int __ocml_isfinite_f32(
float);
136 __attribute__((const))
137 int __ocml_isinf_f32(
float);
139 __attribute__((const))
140 int __ocml_isnan_f32(
float);
142 float __ocml_j0_f32(
float);
144 float __ocml_j1_f32(
float);
146 __attribute__((const))
147 float __ocml_ldexp_f32(
float,
int);
149 float __ocml_lgamma_f32(
float);
151 __attribute__((pure))
152 float __ocml_log10_f32(
float);
154 __attribute__((pure))
155 float __ocml_log1p_f32(
float);
157 __attribute__((pure))
158 float __ocml_log2_f32(
float);
160 __attribute__((const))
161 float __ocml_logb_f32(
float);
163 __attribute__((pure))
164 float __ocml_log_f32(
float);
166 float __ocml_modf_f32(
float, __attribute__((address_space(5)))
float*);
168 __attribute__((const))
169 float __ocml_nearbyint_f32(
float);
171 __attribute__((const))
172 float __ocml_nextafter_f32(
float,
float);
174 __attribute__((const))
175 float __ocml_len3_f32(
float,
float,
float);
177 __attribute__((const))
178 float __ocml_len4_f32(
float,
float,
float,
float);
180 __attribute__((pure))
181 float __ocml_ncdf_f32(
float);
183 __attribute__((pure))
184 float __ocml_ncdfinv_f32(
float);
186 __attribute__((pure))
187 float __ocml_pow_f32(
float,
float);
189 __attribute__((pure))
190 float __ocml_rcbrt_f32(
float);
192 __attribute__((const))
193 float __ocml_remainder_f32(
float,
float);
195 float __ocml_remquo_f32(
float,
float, __attribute__((address_space(5)))
int*);
197 __attribute__((const))
198 float __ocml_rhypot_f32(
float,
float);
200 __attribute__((const))
201 float __ocml_rint_f32(
float);
203 __attribute__((const))
204 float __ocml_rlen3_f32(
float,
float,
float);
206 __attribute__((const))
207 float __ocml_rlen4_f32(
float,
float,
float,
float);
209 __attribute__((const))
210 float __ocml_round_f32(
float);
212 __attribute__((pure))
213 float __ocml_rsqrt_f32(
float);
215 __attribute__((const))
216 float __ocml_scalb_f32(
float,
float);
218 __attribute__((const))
219 float __ocml_scalbn_f32(
float,
int);
221 __attribute__((const))
222 int __ocml_signbit_f32(
float);
224 float __ocml_sincos_f32(
float, __attribute__((address_space(5)))
float*);
226 float __ocml_sincospi_f32(
float, __attribute__((address_space(5)))
float*);
228 float __ocml_sin_f32(
float);
230 __attribute__((pure))
231 float __ocml_sinh_f32(
float);
233 float __ocml_sinpi_f32(
float);
235 __attribute__((const))
236 float __ocml_sqrt_f32(
float);
238 float __ocml_tan_f32(
float);
240 __attribute__((pure))
241 float __ocml_tanh_f32(
float);
243 float __ocml_tgamma_f32(
float);
245 __attribute__((const))
246 float __ocml_trunc_f32(
float);
248 float __ocml_y0_f32(
float);
250 float __ocml_y1_f32(
float);
254 __attribute__((const))
255 float __ocml_add_rte_f32(
float,
float);
257 __attribute__((const))
258 float __ocml_add_rtn_f32(
float,
float);
260 __attribute__((const))
261 float __ocml_add_rtp_f32(
float,
float);
263 __attribute__((const))
264 float __ocml_add_rtz_f32(
float,
float);
266 __attribute__((const))
267 float __ocml_sub_rte_f32(
float,
float);
269 __attribute__((const))
270 float __ocml_sub_rtn_f32(
float,
float);
272 __attribute__((const))
273 float __ocml_sub_rtp_f32(
float,
float);
275 __attribute__((const))
276 float __ocml_sub_rtz_f32(
float,
float);
278 __attribute__((const))
279 float __ocml_mul_rte_f32(
float,
float);
281 __attribute__((const))
282 float __ocml_mul_rtn_f32(
float,
float);
284 __attribute__((const))
285 float __ocml_mul_rtp_f32(
float,
float);
287 __attribute__((const))
288 float __ocml_mul_rtz_f32(
float,
float);
290 __attribute__((const))
291 float __ocml_sqrt_rte_f32(
float);
293 __attribute__((const))
294 float __ocml_sqrt_rtn_f32(
float);
296 __attribute__((const))
297 float __ocml_sqrt_rtp_f32(
float);
299 __attribute__((const))
300 float __ocml_sqrt_rtz_f32(
float);
302 __attribute__((const))
303 float __ocml_fma_rte_f32(
float,
float,
float);
305 __attribute__((const))
306 float __ocml_fma_rtn_f32(
float,
float,
float);
308 __attribute__((const))
309 float __ocml_fma_rtp_f32(
float,
float,
float);
311 __attribute__((const))
312 float __ocml_fma_rtz_f32(
float,
float,
float);
315 __attribute__((const))
316 float __llvm_amdgcn_cos_f32(
float) __asm("llvm.amdgcn.cos.f32");
318 __attribute__((const))
319 float __llvm_amdgcn_rcp_f32(
float) __asm("llvm.amdgcn.rcp.f32");
321 __attribute__((const))
322 float __llvm_amdgcn_rsq_f32(
float) __asm("llvm.amdgcn.rsq.f32");
324 __attribute__((const))
325 float __llvm_amdgcn_sin_f32(
float) __asm("llvm.amdgcn.sin.f32");
331 __attribute__((const))
332 double __ocml_acos_f64(
double);
334 __attribute__((pure))
335 double __ocml_acosh_f64(
double);
337 __attribute__((const))
338 double __ocml_asin_f64(
double);
340 __attribute__((pure))
341 double __ocml_asinh_f64(
double);
343 __attribute__((const))
344 double __ocml_atan2_f64(
double,
double);
346 __attribute__((const))
347 double __ocml_atan_f64(
double);
349 __attribute__((pure))
350 double __ocml_atanh_f64(
double);
352 __attribute__((pure))
353 double __ocml_cbrt_f64(
double);
355 __attribute__((const))
356 double __ocml_ceil_f64(
double);
358 __attribute__((const))
359 double __ocml_copysign_f64(
double,
double);
361 double __ocml_cos_f64(
double);
363 __attribute__((pure))
364 double __ocml_cosh_f64(
double);
366 double __ocml_cospi_f64(
double);
368 double __ocml_i0_f64(
double);
370 double __ocml_i1_f64(
double);
372 __attribute__((pure))
373 double __ocml_erfc_f64(
double);
375 __attribute__((pure))
376 double __ocml_erfcinv_f64(
double);
378 __attribute__((pure))
379 double __ocml_erfcx_f64(
double);
381 __attribute__((pure))
382 double __ocml_erf_f64(
double);
384 __attribute__((pure))
385 double __ocml_erfinv_f64(
double);
387 __attribute__((pure))
388 double __ocml_exp10_f64(
double);
390 __attribute__((pure))
391 double __ocml_exp2_f64(
double);
393 __attribute__((pure))
394 double __ocml_exp_f64(
double);
396 __attribute__((pure))
397 double __ocml_expm1_f64(
double);
399 __attribute__((const))
400 double __ocml_fabs_f64(
double);
402 __attribute__((const))
403 double __ocml_fdim_f64(
double,
double);
405 __attribute__((const))
406 double __ocml_floor_f64(
double);
408 __attribute__((const))
409 double __ocml_fma_f64(
double,
double,
double);
411 __attribute__((const))
412 double __ocml_fmax_f64(
double,
double);
414 __attribute__((const))
415 double __ocml_fmin_f64(
double,
double);
417 __attribute__((const))
418 double __ocml_fmod_f64(
double,
double);
420 double __ocml_frexp_f64(
double, __attribute__((address_space(5)))
int*);
422 __attribute__((const))
423 double __ocml_hypot_f64(
double,
double);
425 __attribute__((const))
426 int __ocml_ilogb_f64(
double);
428 __attribute__((const))
429 int __ocml_isfinite_f64(
double);
431 __attribute__((const))
432 int __ocml_isinf_f64(
double);
434 __attribute__((const))
435 int __ocml_isnan_f64(
double);
437 double __ocml_j0_f64(
double);
439 double __ocml_j1_f64(
double);
441 __attribute__((const))
442 double __ocml_ldexp_f64(
double,
int);
444 double __ocml_lgamma_f64(
double);
446 __attribute__((pure))
447 double __ocml_log10_f64(
double);
449 __attribute__((pure))
450 double __ocml_log1p_f64(
double);
452 __attribute__((pure))
453 double __ocml_log2_f64(
double);
455 __attribute__((const))
456 double __ocml_logb_f64(
double);
458 __attribute__((pure))
459 double __ocml_log_f64(
double);
461 double __ocml_modf_f64(
double, __attribute__((address_space(5)))
double*);
463 __attribute__((const))
464 double __ocml_nearbyint_f64(
double);
466 __attribute__((const))
467 double __ocml_nextafter_f64(
double,
double);
469 __attribute__((const))
470 double __ocml_len3_f64(
double,
double,
double);
472 __attribute__((const))
473 double __ocml_len4_f64(
double,
double,
double,
double);
475 __attribute__((pure))
476 double __ocml_ncdf_f64(
double);
478 __attribute__((pure))
479 double __ocml_ncdfinv_f64(
double);
481 __attribute__((pure))
482 double __ocml_pow_f64(
double,
double);
484 __attribute__((pure))
485 double __ocml_rcbrt_f64(
double);
487 __attribute__((const))
488 double __ocml_remainder_f64(
double,
double);
490 double __ocml_remquo_f64(
491 double,
double, __attribute__((address_space(5)))
int*);
493 __attribute__((const))
494 double __ocml_rhypot_f64(
double,
double);
496 __attribute__((const))
497 double __ocml_rint_f64(
double);
499 __attribute__((const))
500 double __ocml_rlen3_f64(
double,
double,
double);
502 __attribute__((const))
503 double __ocml_rlen4_f64(
double,
double,
double,
double);
505 __attribute__((const))
506 double __ocml_round_f64(
double);
508 __attribute__((pure))
509 double __ocml_rsqrt_f64(
double);
511 __attribute__((const))
512 double __ocml_scalb_f64(
double,
double);
514 __attribute__((const))
515 double __ocml_scalbn_f64(
double,
int);
517 __attribute__((const))
518 int __ocml_signbit_f64(
double);
520 double __ocml_sincos_f64(
double, __attribute__((address_space(5)))
double*);
522 double __ocml_sincospi_f64(
double, __attribute__((address_space(5)))
double*);
524 double __ocml_sin_f64(
double);
526 __attribute__((pure))
527 double __ocml_sinh_f64(
double);
529 double __ocml_sinpi_f64(
double);
531 __attribute__((const))
532 double __ocml_sqrt_f64(
double);
534 double __ocml_tan_f64(
double);
536 __attribute__((pure))
537 double __ocml_tanh_f64(
double);
539 double __ocml_tgamma_f64(
double);
541 __attribute__((const))
542 double __ocml_trunc_f64(
double);
544 double __ocml_y0_f64(
double);
546 double __ocml_y1_f64(
double);
550 __attribute__((const))
551 double __ocml_add_rte_f64(
double,
double);
553 __attribute__((const))
554 double __ocml_add_rtn_f64(
double,
double);
556 __attribute__((const))
557 double __ocml_add_rtp_f64(
double,
double);
559 __attribute__((const))
560 double __ocml_add_rtz_f64(
double,
double);
562 __attribute__((const))
563 double __ocml_sub_rte_f64(
double,
double);
565 __attribute__((const))
566 double __ocml_sub_rtn_f64(
double,
double);
568 __attribute__((const))
569 double __ocml_sub_rtp_f64(
double,
double);
571 __attribute__((const))
572 double __ocml_sub_rtz_f64(
double,
double);
574 __attribute__((const))
575 double __ocml_mul_rte_f64(
double,
double);
577 __attribute__((const))
578 double __ocml_mul_rtn_f64(
double,
double);
580 __attribute__((const))
581 double __ocml_mul_rtp_f64(
double,
double);
583 __attribute__((const))
584 double __ocml_mul_rtz_f64(
double,
double);
586 __attribute__((const))
587 double __ocml_sqrt_rte_f64(
double);
589 __attribute__((const))
590 double __ocml_sqrt_rtn_f64(
double);
592 __attribute__((const))
593 double __ocml_sqrt_rtp_f64(
double);
595 __attribute__((const))
596 double __ocml_sqrt_rtz_f64(
double);
598 __attribute__((const))
599 double __ocml_fma_rte_f64(
double,
double,
double);
601 __attribute__((const))
602 double __ocml_fma_rtn_f64(
double,
double,
double);
604 __attribute__((const))
605 double __ocml_fma_rtp_f64(
double,
double,
double);
607 __attribute__((const))
608 double __ocml_fma_rtz_f64(
double,
double,
double);
611 __attribute__((const))
612 double __llvm_amdgcn_rcp_f64(
double) __asm("llvm.amdgcn.rcp.f64");
614 __attribute__((const))
615 double __llvm_amdgcn_rsq_f64(
double) __asm("llvm.amdgcn.rsq.f64");
619 #if defined(__cplusplus)