quadmath_weak.h 3.1 KB

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