xref: /aosp_15_r20/external/llvm-libc/src/math/nvptx/declarations.h (revision 71db0c75aadcf003ffe3238005f61d7618a3fead)
1*71db0c75SAndroid Build Coastguard Worker //===-- NVPTX specific declarations for math support ----------------------===//
2*71db0c75SAndroid Build Coastguard Worker //
3*71db0c75SAndroid Build Coastguard Worker // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4*71db0c75SAndroid Build Coastguard Worker // See https://llvm.org/LICENSE.txt for license information.
5*71db0c75SAndroid Build Coastguard Worker // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6*71db0c75SAndroid Build Coastguard Worker //
7*71db0c75SAndroid Build Coastguard Worker //===----------------------------------------------------------------------===//
8*71db0c75SAndroid Build Coastguard Worker 
9*71db0c75SAndroid Build Coastguard Worker #ifndef LLVM_LIBC_SRC_MATH_NVPTX_DECLARATIONS_H
10*71db0c75SAndroid Build Coastguard Worker #define LLVM_LIBC_SRC_MATH_NVPTX_DECLARATIONS_H
11*71db0c75SAndroid Build Coastguard Worker 
12*71db0c75SAndroid Build Coastguard Worker #include "src/__support/macros/config.h"
13*71db0c75SAndroid Build Coastguard Worker 
14*71db0c75SAndroid Build Coastguard Worker namespace LIBC_NAMESPACE_DECL {
15*71db0c75SAndroid Build Coastguard Worker 
16*71db0c75SAndroid Build Coastguard Worker extern "C" {
17*71db0c75SAndroid Build Coastguard Worker double __nv_acos(double);
18*71db0c75SAndroid Build Coastguard Worker float __nv_acosf(float);
19*71db0c75SAndroid Build Coastguard Worker double __nv_acosh(double);
20*71db0c75SAndroid Build Coastguard Worker float __nv_acoshf(float);
21*71db0c75SAndroid Build Coastguard Worker double __nv_asin(double);
22*71db0c75SAndroid Build Coastguard Worker float __nv_asinf(float);
23*71db0c75SAndroid Build Coastguard Worker double __nv_asinh(double);
24*71db0c75SAndroid Build Coastguard Worker float __nv_asinhf(float);
25*71db0c75SAndroid Build Coastguard Worker double __nv_atan(double);
26*71db0c75SAndroid Build Coastguard Worker float __nv_atanf(float);
27*71db0c75SAndroid Build Coastguard Worker double __nv_atan2(double, double);
28*71db0c75SAndroid Build Coastguard Worker float __nv_atan2f(float, float);
29*71db0c75SAndroid Build Coastguard Worker double __nv_atanh(double);
30*71db0c75SAndroid Build Coastguard Worker float __nv_atanhf(float);
31*71db0c75SAndroid Build Coastguard Worker double __nv_cos(double);
32*71db0c75SAndroid Build Coastguard Worker float __nv_cosf(float);
33*71db0c75SAndroid Build Coastguard Worker double __nv_cosh(double);
34*71db0c75SAndroid Build Coastguard Worker float __nv_coshf(float);
35*71db0c75SAndroid Build Coastguard Worker double __nv_erf(double);
36*71db0c75SAndroid Build Coastguard Worker float __nv_erff(float);
37*71db0c75SAndroid Build Coastguard Worker double __nv_exp(double);
38*71db0c75SAndroid Build Coastguard Worker float __nv_expf(float);
39*71db0c75SAndroid Build Coastguard Worker double __nv_exp2(double);
40*71db0c75SAndroid Build Coastguard Worker float __nv_exp2f(float);
41*71db0c75SAndroid Build Coastguard Worker double __nv_exp10(double);
42*71db0c75SAndroid Build Coastguard Worker float __nv_exp10f(float);
43*71db0c75SAndroid Build Coastguard Worker double __nv_expm1(double);
44*71db0c75SAndroid Build Coastguard Worker float __nv_expm1f(float);
45*71db0c75SAndroid Build Coastguard Worker double __nv_fdim(double, double);
46*71db0c75SAndroid Build Coastguard Worker float __nv_fdimf(float, float);
47*71db0c75SAndroid Build Coastguard Worker double __nv_hypot(double, double);
48*71db0c75SAndroid Build Coastguard Worker float __nv_hypotf(float, float);
49*71db0c75SAndroid Build Coastguard Worker int __nv_ilogb(double);
50*71db0c75SAndroid Build Coastguard Worker int __nv_ilogbf(float);
51*71db0c75SAndroid Build Coastguard Worker double __nv_ldexp(double, int);
52*71db0c75SAndroid Build Coastguard Worker float __nv_ldexpf(float, int);
53*71db0c75SAndroid Build Coastguard Worker long long __nv_llrint(double);
54*71db0c75SAndroid Build Coastguard Worker long long __nv_llrintf(float);
55*71db0c75SAndroid Build Coastguard Worker long __nv_lrint(double);
56*71db0c75SAndroid Build Coastguard Worker long __nv_lrintf(float);
57*71db0c75SAndroid Build Coastguard Worker double __nv_log10(double);
58*71db0c75SAndroid Build Coastguard Worker float __nv_log10f(float);
59*71db0c75SAndroid Build Coastguard Worker double __nv_log1p(double);
60*71db0c75SAndroid Build Coastguard Worker float __nv_log1pf(float);
61*71db0c75SAndroid Build Coastguard Worker double __nv_log2(double);
62*71db0c75SAndroid Build Coastguard Worker float __nv_log2f(float);
63*71db0c75SAndroid Build Coastguard Worker double __nv_log(double);
64*71db0c75SAndroid Build Coastguard Worker float __nv_logf(float);
65*71db0c75SAndroid Build Coastguard Worker double __nv_nextafter(double, double);
66*71db0c75SAndroid Build Coastguard Worker float __nv_nextafterf(float, float);
67*71db0c75SAndroid Build Coastguard Worker double __nv_pow(double, double);
68*71db0c75SAndroid Build Coastguard Worker float __nv_powf(float, float);
69*71db0c75SAndroid Build Coastguard Worker double __nv_powi(double, int);
70*71db0c75SAndroid Build Coastguard Worker float __nv_powif(float, int);
71*71db0c75SAndroid Build Coastguard Worker double __nv_sin(double);
72*71db0c75SAndroid Build Coastguard Worker float __nv_sinf(float);
73*71db0c75SAndroid Build Coastguard Worker void __nv_sincos(double, double *, double *);
74*71db0c75SAndroid Build Coastguard Worker void __nv_sincosf(float, float *, float *);
75*71db0c75SAndroid Build Coastguard Worker double __nv_sinh(double);
76*71db0c75SAndroid Build Coastguard Worker float __nv_sinhf(float);
77*71db0c75SAndroid Build Coastguard Worker double __nv_tan(double);
78*71db0c75SAndroid Build Coastguard Worker float __nv_tanf(float);
79*71db0c75SAndroid Build Coastguard Worker double __nv_tanh(double);
80*71db0c75SAndroid Build Coastguard Worker float __nv_tanhf(float);
81*71db0c75SAndroid Build Coastguard Worker double __nv_frexp(double, int *);
82*71db0c75SAndroid Build Coastguard Worker float __nv_frexpf(float, int *);
83*71db0c75SAndroid Build Coastguard Worker double __nv_scalbn(double, int);
84*71db0c75SAndroid Build Coastguard Worker float __nv_scalbnf(float, int);
85*71db0c75SAndroid Build Coastguard Worker double __nv_remquo(double, double, int *);
86*71db0c75SAndroid Build Coastguard Worker float __nv_remquof(float, float, int *);
87*71db0c75SAndroid Build Coastguard Worker double __nv_tgamma(double);
88*71db0c75SAndroid Build Coastguard Worker float __nv_tgammaf(float);
89*71db0c75SAndroid Build Coastguard Worker float __nv_lgamma(double);
90*71db0c75SAndroid Build Coastguard Worker }
91*71db0c75SAndroid Build Coastguard Worker 
92*71db0c75SAndroid Build Coastguard Worker } // namespace LIBC_NAMESPACE_DECL
93*71db0c75SAndroid Build Coastguard Worker 
94*71db0c75SAndroid Build Coastguard Worker #endif // LLVM_LIBC_SRC_MATH_NVPTX_DECLARATIONS_H
95