1// -*- C++ -*- 2//===----------------------------------------------------------------------===// 3// 4// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 5// See https://llvm.org/LICENSE.txt for license information. 6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 7// 8//===----------------------------------------------------------------------===// 9 10export { 11 using ::double_t; 12 using ::float_t; 13 14 using ::acos; 15 using ::acosf; 16 using ::acosl; 17 18 using ::asin; 19 using ::asinf; 20 using ::asinl; 21 22 using ::atan; 23 using ::atanf; 24 using ::atanl; 25 26 using ::atan2; 27 using ::atan2f; 28 using ::atan2l; 29 30 using ::cos; 31 using ::cosf; 32 using ::cosl; 33 34 using ::sin; 35 using ::sinf; 36 using ::sinl; 37 38 using ::tan; 39 using ::tanf; 40 using ::tanl; 41 42 using ::acosh; 43 using ::acoshf; 44 using ::acoshl; 45 46 using ::asinh; 47 using ::asinhf; 48 using ::asinhl; 49 50 using ::atanh; 51 using ::atanhf; 52 using ::atanhl; 53 54 using ::cosh; 55 using ::coshf; 56 using ::coshl; 57 58 using ::sinh; 59 using ::sinhf; 60 using ::sinhl; 61 62 using ::tanh; 63 using ::tanhf; 64 using ::tanhl; 65 66 using ::exp; 67 using ::expf; 68 using ::expl; 69 70 using ::exp2; 71 using ::exp2f; 72 using ::exp2l; 73 74 using ::expm1; 75 using ::expm1f; 76 using ::expm1l; 77 78 using ::frexp; 79 using ::frexpf; 80 using ::frexpl; 81 82 using ::ilogb; 83 using ::ilogbf; 84 using ::ilogbl; 85 86 using ::ldexp; 87 using ::ldexpf; 88 using ::ldexpl; 89 90 using ::log; 91 using ::logf; 92 using ::logl; 93 94 using ::log10; 95 using ::log10f; 96 using ::log10l; 97 98 using ::log1p; 99 using ::log1pf; 100 using ::log1pl; 101 102 using ::log2; 103 using ::log2f; 104 using ::log2l; 105 106 using ::logb; 107 using ::logbf; 108 using ::logbl; 109 110 using ::modf; 111 using ::modff; 112 using ::modfl; 113 114 using ::scalbn; 115 using ::scalbnf; 116 using ::scalbnl; 117 118 using ::scalbln; 119 using ::scalblnf; 120 using ::scalblnl; 121 122 using ::cbrt; 123 using ::cbrtf; 124 using ::cbrtl; 125 126 // [c.math.abs], absolute values 127 using ::abs; 128 129 using ::fabs; 130 using ::fabsf; 131 using ::fabsl; 132 133 using ::hypot; 134 using ::hypotf; 135 using ::hypotl; 136 137 // [c.math.hypot3], three-dimensional hypotenuse 138 139 using ::pow; 140 using ::powf; 141 using ::powl; 142 143 using ::sqrt; 144 using ::sqrtf; 145 using ::sqrtl; 146 147 using ::erf; 148 using ::erff; 149 using ::erfl; 150 151 using ::erfc; 152 using ::erfcf; 153 using ::erfcl; 154 155 using ::lgamma; 156 using ::lgammaf; 157 using ::lgammal; 158 159 using ::tgamma; 160 using ::tgammaf; 161 using ::tgammal; 162 163 using ::ceil; 164 using ::ceilf; 165 using ::ceill; 166 167 using ::floor; 168 using ::floorf; 169 using ::floorl; 170 171 using ::nearbyint; 172 using ::nearbyintf; 173 using ::nearbyintl; 174 175 using ::rint; 176 using ::rintf; 177 using ::rintl; 178 179 using ::lrint; 180 using ::lrintf; 181 using ::lrintl; 182 183 using ::llrint; 184 using ::llrintf; 185 using ::llrintl; 186 187 using ::round; 188 using ::roundf; 189 using ::roundl; 190 191 using ::lround; 192 using ::lroundf; 193 using ::lroundl; 194 195 using ::llround; 196 using ::llroundf; 197 using ::llroundl; 198 199 using ::trunc; 200 using ::truncf; 201 using ::truncl; 202 203 using ::fmod; 204 using ::fmodf; 205 using ::fmodl; 206 207 using ::remainder; 208 using ::remainderf; 209 using ::remainderl; 210 211 using ::remquo; 212 using ::remquof; 213 using ::remquol; 214 215 using ::copysign; 216 using ::copysignf; 217 using ::copysignl; 218 219 using ::nan; 220 using ::nanf; 221 using ::nanl; 222 223 using ::nextafter; 224 using ::nextafterf; 225 using ::nextafterl; 226 227 using ::nexttoward; 228 using ::nexttowardf; 229 using ::nexttowardl; 230 231 using ::fdim; 232 using ::fdimf; 233 using ::fdiml; 234 235 using ::fmax; 236 using ::fmaxf; 237 using ::fmaxl; 238 239 using ::fmin; 240 using ::fminf; 241 using ::fminl; 242 243 using ::fma; 244 using ::fmaf; 245 using ::fmal; 246 247 // [c.math.lerp], linear interpolation 248 // [support.c.headers.other]/1 249 // ... placed within the global namespace scope, except for the functions 250 // described in [sf.cmath], the std::lerp function overloads ([c.math.lerp]) 251 // ... 252 253 // [c.math.fpclass], classification / comparison functions 254 using ::fpclassify; 255 using ::isfinite; 256 using ::isgreater; 257 using ::isgreaterequal; 258 using ::isinf; 259 using ::isless; 260 using ::islessequal; 261 using ::islessgreater; 262 using ::isnan; 263 using ::isnormal; 264 using ::isunordered; 265 using ::signbit; 266 267 // [sf.cmath], mathematical special functions 268} // export 269