| 1 |
/* GCC Quad-Precision Math Library |
| 2 |
Copyright (C) 2010-2018 Free Software Foundation, Inc. |
| 3 |
Written by Tobias Burnus <burnus@net-b.de> |
| 4 |
|
| 5 |
This file is part of the libquadmath library. |
| 6 |
Libquadmath is free software; you can redistribute it and/or |
| 7 |
modify it under the terms of the GNU Library General Public |
| 8 |
License as published by the Free Software Foundation; either |
| 9 |
version 2 of the License, or (at your option) any later version. |
| 10 |
|
| 11 |
Libquadmath is distributed in the hope that it will be useful, |
| 12 |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 13 |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| 14 |
Library General Public License for more details. |
| 15 |
|
| 16 |
You should have received a copy of the GNU Library General Public |
| 17 |
License along with libquadmath; see the file COPYING.LIB. If |
| 18 |
not, write to the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor, |
| 19 |
Boston, MA 02110-1301, USA. */ |
| 20 |
|
| 21 |
#ifndef QUADMATH_WEAK_H |
| 22 |
#define QUADMATH_WEAK_H |
| 23 |
|
| 24 |
#include "quadmath.h" |
| 25 |
|
| 26 |
#if SUPPORTS_WEAK |
| 27 |
# define __qmath2(name,name2,type) \ |
| 28 |
static __typeof(type) name __attribute__ ((__weakref__(#name2))) \ |
| 29 |
__quadmath_throw; |
| 30 |
# define __qmath_(name) __qmath_ ## name |
| 31 |
#else |
| 32 |
# define __qmath2(name,name2,type) |
| 33 |
# define __qmath_(name) name |
| 34 |
#endif |
| 35 |
|
| 36 |
/* __qmath_foo is a weak reference to symbol foo. */ |
| 37 |
#define __qmath3(name) __qmath2(__qmath_ ## name,name,name) |
| 38 |
|
| 39 |
/* Prototypes for real functions. */ |
| 40 |
__qmath3 (acosq) |
| 41 |
__qmath3 (acoshq) |
| 42 |
__qmath3 (asinq) |
| 43 |
__qmath3 (asinhq) |
| 44 |
__qmath3 (atanq) |
| 45 |
__qmath3 (atanhq) |
| 46 |
__qmath3 (atan2q) |
| 47 |
__qmath3 (cbrtq) |
| 48 |
__qmath3 (ceilq) |
| 49 |
__qmath3 (copysignq) |
| 50 |
__qmath3 (coshq) |
| 51 |
__qmath3 (cosq) |
| 52 |
__qmath3 (erfq) |
| 53 |
__qmath3 (erfcq) |
| 54 |
__qmath3 (exp2q) |
| 55 |
__qmath3 (expq) |
| 56 |
__qmath3 (expm1q) |
| 57 |
__qmath3 (fabsq) |
| 58 |
__qmath3 (fdimq) |
| 59 |
__qmath3 (finiteq) |
| 60 |
__qmath3 (floorq) |
| 61 |
__qmath3 (fmaq) |
| 62 |
__qmath3 (fmaxq) |
| 63 |
__qmath3 (fminq) |
| 64 |
__qmath3 (fmodq) |
| 65 |
__qmath3 (frexpq) |
| 66 |
__qmath3 (hypotq) |
| 67 |
__qmath3 (ilogbq) |
| 68 |
__qmath3 (isinfq) |
| 69 |
__qmath3 (isnanq) |
| 70 |
__qmath3 (issignalingq) |
| 71 |
__qmath3 (j0q) |
| 72 |
__qmath3 (j1q) |
| 73 |
__qmath3 (jnq) |
| 74 |
__qmath3 (ldexpq) |
| 75 |
__qmath3 (lgammaq) |
| 76 |
__qmath3 (llrintq) |
| 77 |
__qmath3 (llroundq) |
| 78 |
__qmath3 (logbq) |
| 79 |
__qmath3 (logq) |
| 80 |
__qmath3 (log10q) |
| 81 |
__qmath3 (log1pq) |
| 82 |
__qmath3 (log2q) |
| 83 |
__qmath3 (lrintq) |
| 84 |
__qmath3 (lroundq) |
| 85 |
__qmath3 (modfq) |
| 86 |
__qmath3 (nanq) |
| 87 |
__qmath3 (nearbyintq) |
| 88 |
__qmath3 (nextafterq) |
| 89 |
__qmath3 (powq) |
| 90 |
__qmath3 (remainderq) |
| 91 |
__qmath3 (remquoq) |
| 92 |
__qmath3 (rintq) |
| 93 |
__qmath3 (roundq) |
| 94 |
__qmath3 (scalblnq) |
| 95 |
__qmath3 (scalbnq) |
| 96 |
__qmath3 (signbitq) |
| 97 |
__qmath3 (sincosq) |
| 98 |
__qmath3 (sinhq) |
| 99 |
__qmath3 (sinq) |
| 100 |
__qmath3 (sqrtq) |
| 101 |
__qmath3 (tanq) |
| 102 |
__qmath3 (tanhq) |
| 103 |
__qmath3 (tgammaq) |
| 104 |
__qmath3 (truncq) |
| 105 |
__qmath3 (y0q) |
| 106 |
__qmath3 (y1q) |
| 107 |
__qmath3 (ynq) |
| 108 |
|
| 109 |
|
| 110 |
/* Prototypes for complex functions. */ |
| 111 |
__qmath3 (cabsq) |
| 112 |
__qmath3 (cargq) |
| 113 |
__qmath3 (cimagq) |
| 114 |
__qmath3 (crealq) |
| 115 |
__qmath3 (cacosq) |
| 116 |
__qmath3 (cacoshq) |
| 117 |
__qmath3 (casinq) |
| 118 |
__qmath3 (casinhq) |
| 119 |
__qmath3 (catanq) |
| 120 |
__qmath3 (catanhq) |
| 121 |
__qmath3 (ccosq) |
| 122 |
__qmath3 (ccoshq) |
| 123 |
__qmath3 (cexpq) |
| 124 |
__qmath3 (cexpiq) |
| 125 |
__qmath3 (clogq) |
| 126 |
__qmath3 (clog10q) |
| 127 |
__qmath3 (conjq) |
| 128 |
__qmath3 (cpowq) |
| 129 |
__qmath3 (cprojq) |
| 130 |
__qmath3 (csinq) |
| 131 |
__qmath3 (csinhq) |
| 132 |
__qmath3 (csqrtq) |
| 133 |
__qmath3 (ctanq) |
| 134 |
__qmath3 (ctanhq) |
| 135 |
|
| 136 |
|
| 137 |
/* Prototypes for string <-> flt128 conversion functions. */ |
| 138 |
__qmath3 (strtoflt128) |
| 139 |
__qmath3 (quadmath_snprintf) |
| 140 |
|
| 141 |
#endif |