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