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