libm-simd-decl-stubs.h 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475
  1. /* Empty definitions required for __MATHCALL_VEC unfolding in mathcalls.h.
  2. Copyright (C) 2014-2026 Free Software Foundation, Inc.
  3. This file is part of the GNU C Library.
  4. The GNU C Library is free software; you can redistribute it and/or
  5. modify it under the terms of the GNU Lesser General Public
  6. License as published by the Free Software Foundation; either
  7. version 2.1 of the License, or (at your option) any later version.
  8. The GNU C Library is distributed in the hope that it will be useful,
  9. but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  11. Lesser General Public License for more details.
  12. You should have received a copy of the GNU Lesser General Public
  13. License along with the GNU C Library; if not, see
  14. <https://www.gnu.org/licenses/>. */
  15. #ifndef _MATH_H
  16. # error "Never include <bits/libm-simd-decl-stubs.h> directly;\
  17. include <math.h> instead."
  18. #endif
  19. /* Needed definitions could be generated with:
  20. for func in $(grep __MATHCALL_VEC math/bits/mathcalls.h |\
  21. sed -r "s|__MATHCALL_VEC.?\(||; s|,.*||"); do
  22. echo "#define __DECL_SIMD_${func}";
  23. echo "#define __DECL_SIMD_${func}f";
  24. echo "#define __DECL_SIMD_${func}l";
  25. done
  26. */
  27. #ifndef _BITS_LIBM_SIMD_DECL_STUBS_H
  28. #define _BITS_LIBM_SIMD_DECL_STUBS_H 1
  29. #define __DECL_SIMD_cos
  30. #define __DECL_SIMD_cosf
  31. #define __DECL_SIMD_cosl
  32. #define __DECL_SIMD_cosf16
  33. #define __DECL_SIMD_cosf32
  34. #define __DECL_SIMD_cosf64
  35. #define __DECL_SIMD_cosf128
  36. #define __DECL_SIMD_cosf32x
  37. #define __DECL_SIMD_cosf64x
  38. #define __DECL_SIMD_cosf128x
  39. #define __DECL_SIMD_sin
  40. #define __DECL_SIMD_sinf
  41. #define __DECL_SIMD_sinl
  42. #define __DECL_SIMD_sinf16
  43. #define __DECL_SIMD_sinf32
  44. #define __DECL_SIMD_sinf64
  45. #define __DECL_SIMD_sinf128
  46. #define __DECL_SIMD_sinf32x
  47. #define __DECL_SIMD_sinf64x
  48. #define __DECL_SIMD_sinf128x
  49. #define __DECL_SIMD_sincos
  50. #define __DECL_SIMD_sincosf
  51. #define __DECL_SIMD_sincosl
  52. #define __DECL_SIMD_sincosf16
  53. #define __DECL_SIMD_sincosf32
  54. #define __DECL_SIMD_sincosf64
  55. #define __DECL_SIMD_sincosf128
  56. #define __DECL_SIMD_sincosf32x
  57. #define __DECL_SIMD_sincosf64x
  58. #define __DECL_SIMD_sincosf128x
  59. #define __DECL_SIMD_log
  60. #define __DECL_SIMD_logf
  61. #define __DECL_SIMD_logl
  62. #define __DECL_SIMD_logf16
  63. #define __DECL_SIMD_logf32
  64. #define __DECL_SIMD_logf64
  65. #define __DECL_SIMD_logf128
  66. #define __DECL_SIMD_logf32x
  67. #define __DECL_SIMD_logf64x
  68. #define __DECL_SIMD_logf128x
  69. #define __DECL_SIMD_exp
  70. #define __DECL_SIMD_expf
  71. #define __DECL_SIMD_expl
  72. #define __DECL_SIMD_expf16
  73. #define __DECL_SIMD_expf32
  74. #define __DECL_SIMD_expf64
  75. #define __DECL_SIMD_expf128
  76. #define __DECL_SIMD_expf32x
  77. #define __DECL_SIMD_expf64x
  78. #define __DECL_SIMD_expf128x
  79. #define __DECL_SIMD_pow
  80. #define __DECL_SIMD_powf
  81. #define __DECL_SIMD_powl
  82. #define __DECL_SIMD_powf16
  83. #define __DECL_SIMD_powf32
  84. #define __DECL_SIMD_powf64
  85. #define __DECL_SIMD_powf128
  86. #define __DECL_SIMD_powf32x
  87. #define __DECL_SIMD_powf64x
  88. #define __DECL_SIMD_powf128x
  89. #define __DECL_SIMD_acos
  90. #define __DECL_SIMD_acosf
  91. #define __DECL_SIMD_acosl
  92. #define __DECL_SIMD_acosf16
  93. #define __DECL_SIMD_acosf32
  94. #define __DECL_SIMD_acosf64
  95. #define __DECL_SIMD_acosf128
  96. #define __DECL_SIMD_acosf32x
  97. #define __DECL_SIMD_acosf64x
  98. #define __DECL_SIMD_acosf128x
  99. #define __DECL_SIMD_atan
  100. #define __DECL_SIMD_atanf
  101. #define __DECL_SIMD_atanl
  102. #define __DECL_SIMD_atanf16
  103. #define __DECL_SIMD_atanf32
  104. #define __DECL_SIMD_atanf64
  105. #define __DECL_SIMD_atanf128
  106. #define __DECL_SIMD_atanf32x
  107. #define __DECL_SIMD_atanf64x
  108. #define __DECL_SIMD_atanf128x
  109. #define __DECL_SIMD_asin
  110. #define __DECL_SIMD_asinf
  111. #define __DECL_SIMD_asinl
  112. #define __DECL_SIMD_asinf16
  113. #define __DECL_SIMD_asinf32
  114. #define __DECL_SIMD_asinf64
  115. #define __DECL_SIMD_asinf128
  116. #define __DECL_SIMD_asinf32x
  117. #define __DECL_SIMD_asinf64x
  118. #define __DECL_SIMD_asinf128x
  119. #define __DECL_SIMD_hypot
  120. #define __DECL_SIMD_hypotf
  121. #define __DECL_SIMD_hypotl
  122. #define __DECL_SIMD_hypotf16
  123. #define __DECL_SIMD_hypotf32
  124. #define __DECL_SIMD_hypotf64
  125. #define __DECL_SIMD_hypotf128
  126. #define __DECL_SIMD_hypotf32x
  127. #define __DECL_SIMD_hypotf64x
  128. #define __DECL_SIMD_hypotf128x
  129. #define __DECL_SIMD_exp2
  130. #define __DECL_SIMD_exp2f
  131. #define __DECL_SIMD_exp2l
  132. #define __DECL_SIMD_exp2f16
  133. #define __DECL_SIMD_exp2f32
  134. #define __DECL_SIMD_exp2f64
  135. #define __DECL_SIMD_exp2f128
  136. #define __DECL_SIMD_exp2f32x
  137. #define __DECL_SIMD_exp2f64x
  138. #define __DECL_SIMD_exp2f128x
  139. #define __DECL_SIMD_exp10
  140. #define __DECL_SIMD_exp10f
  141. #define __DECL_SIMD_exp10l
  142. #define __DECL_SIMD_exp10f16
  143. #define __DECL_SIMD_exp10f32
  144. #define __DECL_SIMD_exp10f64
  145. #define __DECL_SIMD_exp10f128
  146. #define __DECL_SIMD_exp10f32x
  147. #define __DECL_SIMD_exp10f64x
  148. #define __DECL_SIMD_exp10f128x
  149. #define __DECL_SIMD_cosh
  150. #define __DECL_SIMD_coshf
  151. #define __DECL_SIMD_coshl
  152. #define __DECL_SIMD_coshf16
  153. #define __DECL_SIMD_coshf32
  154. #define __DECL_SIMD_coshf64
  155. #define __DECL_SIMD_coshf128
  156. #define __DECL_SIMD_coshf32x
  157. #define __DECL_SIMD_coshf64x
  158. #define __DECL_SIMD_coshf128x
  159. #define __DECL_SIMD_expm1
  160. #define __DECL_SIMD_expm1f
  161. #define __DECL_SIMD_expm1l
  162. #define __DECL_SIMD_expm1f16
  163. #define __DECL_SIMD_expm1f32
  164. #define __DECL_SIMD_expm1f64
  165. #define __DECL_SIMD_expm1f128
  166. #define __DECL_SIMD_expm1f32x
  167. #define __DECL_SIMD_expm1f64x
  168. #define __DECL_SIMD_expm1f128x
  169. #define __DECL_SIMD_exp2m1
  170. #define __DECL_SIMD_exp2m1f
  171. #define __DECL_SIMD_exp2m1l
  172. #define __DECL_SIMD_exp2m1f16
  173. #define __DECL_SIMD_exp2m1f32
  174. #define __DECL_SIMD_exp2m1f64
  175. #define __DECL_SIMD_exp2m1f128
  176. #define __DECL_SIMD_exp2m1f32x
  177. #define __DECL_SIMD_exp2m1f64x
  178. #define __DECL_SIMD_exp2m1f128x
  179. #define __DECL_SIMD_exp10m1
  180. #define __DECL_SIMD_exp10m1f
  181. #define __DECL_SIMD_exp10m1l
  182. #define __DECL_SIMD_exp10m1f16
  183. #define __DECL_SIMD_exp10m1f32
  184. #define __DECL_SIMD_exp10m1f64
  185. #define __DECL_SIMD_exp10m1f128
  186. #define __DECL_SIMD_exp10m1f32x
  187. #define __DECL_SIMD_exp10m1f64x
  188. #define __DECL_SIMD_exp10m1f128x
  189. #define __DECL_SIMD_sinh
  190. #define __DECL_SIMD_sinhf
  191. #define __DECL_SIMD_sinhl
  192. #define __DECL_SIMD_sinhf16
  193. #define __DECL_SIMD_sinhf32
  194. #define __DECL_SIMD_sinhf64
  195. #define __DECL_SIMD_sinhf128
  196. #define __DECL_SIMD_sinhf32x
  197. #define __DECL_SIMD_sinhf64x
  198. #define __DECL_SIMD_sinhf128x
  199. #define __DECL_SIMD_cbrt
  200. #define __DECL_SIMD_cbrtf
  201. #define __DECL_SIMD_cbrtl
  202. #define __DECL_SIMD_cbrtf16
  203. #define __DECL_SIMD_cbrtf32
  204. #define __DECL_SIMD_cbrtf64
  205. #define __DECL_SIMD_cbrtf128
  206. #define __DECL_SIMD_cbrtf32x
  207. #define __DECL_SIMD_cbrtf64x
  208. #define __DECL_SIMD_cbrtf128x
  209. #define __DECL_SIMD_atan2
  210. #define __DECL_SIMD_atan2f
  211. #define __DECL_SIMD_atan2l
  212. #define __DECL_SIMD_atan2f16
  213. #define __DECL_SIMD_atan2f32
  214. #define __DECL_SIMD_atan2f64
  215. #define __DECL_SIMD_atan2f128
  216. #define __DECL_SIMD_atan2f32x
  217. #define __DECL_SIMD_atan2f64x
  218. #define __DECL_SIMD_atan2f128x
  219. #define __DECL_SIMD_rsqrt
  220. #define __DECL_SIMD_rsqrtf
  221. #define __DECL_SIMD_rsqrtl
  222. #define __DECL_SIMD_rsqrtf16
  223. #define __DECL_SIMD_rsqrtf32
  224. #define __DECL_SIMD_rsqrtf64
  225. #define __DECL_SIMD_rsqrtf128
  226. #define __DECL_SIMD_rsqrtf32x
  227. #define __DECL_SIMD_rsqrtf64x
  228. #define __DECL_SIMD_rsqrtf128x
  229. #define __DECL_SIMD_log10
  230. #define __DECL_SIMD_log10f
  231. #define __DECL_SIMD_log10l
  232. #define __DECL_SIMD_log10f16
  233. #define __DECL_SIMD_log10f32
  234. #define __DECL_SIMD_log10f64
  235. #define __DECL_SIMD_log10f128
  236. #define __DECL_SIMD_log10f32x
  237. #define __DECL_SIMD_log10f64x
  238. #define __DECL_SIMD_log10f128x
  239. #define __DECL_SIMD_log10p1
  240. #define __DECL_SIMD_log10p1f
  241. #define __DECL_SIMD_log10p1l
  242. #define __DECL_SIMD_log10p1f16
  243. #define __DECL_SIMD_log10p1f32
  244. #define __DECL_SIMD_log10p1f64
  245. #define __DECL_SIMD_log10p1f128
  246. #define __DECL_SIMD_log10p1f32x
  247. #define __DECL_SIMD_log10p1f64x
  248. #define __DECL_SIMD_log10p1f128x
  249. #define __DECL_SIMD_log2
  250. #define __DECL_SIMD_log2f
  251. #define __DECL_SIMD_log2l
  252. #define __DECL_SIMD_log2f16
  253. #define __DECL_SIMD_log2f32
  254. #define __DECL_SIMD_log2f64
  255. #define __DECL_SIMD_log2f128
  256. #define __DECL_SIMD_log2f32x
  257. #define __DECL_SIMD_log2f64x
  258. #define __DECL_SIMD_log2f128x
  259. #define __DECL_SIMD_log2p1
  260. #define __DECL_SIMD_log2p1f
  261. #define __DECL_SIMD_log2p1l
  262. #define __DECL_SIMD_log2p1f16
  263. #define __DECL_SIMD_log2p1f32
  264. #define __DECL_SIMD_log2p1f64
  265. #define __DECL_SIMD_log2p1f128
  266. #define __DECL_SIMD_log2p1f32x
  267. #define __DECL_SIMD_log2p1f64x
  268. #define __DECL_SIMD_log2p1f128x
  269. #define __DECL_SIMD_log1p
  270. #define __DECL_SIMD_log1pf
  271. #define __DECL_SIMD_log1pl
  272. #define __DECL_SIMD_log1pf16
  273. #define __DECL_SIMD_log1pf32
  274. #define __DECL_SIMD_log1pf64
  275. #define __DECL_SIMD_log1pf128
  276. #define __DECL_SIMD_log1pf32x
  277. #define __DECL_SIMD_log1pf64x
  278. #define __DECL_SIMD_log1pf128x
  279. #define __DECL_SIMD_logp1
  280. #define __DECL_SIMD_logp1f
  281. #define __DECL_SIMD_logp1l
  282. #define __DECL_SIMD_logp1f16
  283. #define __DECL_SIMD_logp1f32
  284. #define __DECL_SIMD_logp1f64
  285. #define __DECL_SIMD_logp1f128
  286. #define __DECL_SIMD_logp1f32x
  287. #define __DECL_SIMD_logp1f64x
  288. #define __DECL_SIMD_logp1f128x
  289. #define __DECL_SIMD_atanh
  290. #define __DECL_SIMD_atanhf
  291. #define __DECL_SIMD_atanhl
  292. #define __DECL_SIMD_atanhf16
  293. #define __DECL_SIMD_atanhf32
  294. #define __DECL_SIMD_atanhf64
  295. #define __DECL_SIMD_atanhf128
  296. #define __DECL_SIMD_atanhf32x
  297. #define __DECL_SIMD_atanhf64x
  298. #define __DECL_SIMD_atanhf128x
  299. #define __DECL_SIMD_acosh
  300. #define __DECL_SIMD_acoshf
  301. #define __DECL_SIMD_acoshl
  302. #define __DECL_SIMD_acoshf16
  303. #define __DECL_SIMD_acoshf32
  304. #define __DECL_SIMD_acoshf64
  305. #define __DECL_SIMD_acoshf128
  306. #define __DECL_SIMD_acoshf32x
  307. #define __DECL_SIMD_acoshf64x
  308. #define __DECL_SIMD_acoshf128x
  309. #define __DECL_SIMD_erf
  310. #define __DECL_SIMD_erff
  311. #define __DECL_SIMD_erfl
  312. #define __DECL_SIMD_erff16
  313. #define __DECL_SIMD_erff32
  314. #define __DECL_SIMD_erff64
  315. #define __DECL_SIMD_erff128
  316. #define __DECL_SIMD_erff32x
  317. #define __DECL_SIMD_erff64x
  318. #define __DECL_SIMD_erff128x
  319. #define __DECL_SIMD_tanh
  320. #define __DECL_SIMD_tanhf
  321. #define __DECL_SIMD_tanhl
  322. #define __DECL_SIMD_tanhf16
  323. #define __DECL_SIMD_tanhf32
  324. #define __DECL_SIMD_tanhf64
  325. #define __DECL_SIMD_tanhf128
  326. #define __DECL_SIMD_tanhf32x
  327. #define __DECL_SIMD_tanhf64x
  328. #define __DECL_SIMD_tanhf128x
  329. #define __DECL_SIMD_asinh
  330. #define __DECL_SIMD_asinhf
  331. #define __DECL_SIMD_asinhl
  332. #define __DECL_SIMD_asinhf16
  333. #define __DECL_SIMD_asinhf32
  334. #define __DECL_SIMD_asinhf64
  335. #define __DECL_SIMD_asinhf128
  336. #define __DECL_SIMD_asinhf32x
  337. #define __DECL_SIMD_asinhf64x
  338. #define __DECL_SIMD_asinhf128x
  339. #define __DECL_SIMD_erfc
  340. #define __DECL_SIMD_erfcf
  341. #define __DECL_SIMD_erfcl
  342. #define __DECL_SIMD_erfcf16
  343. #define __DECL_SIMD_erfcf32
  344. #define __DECL_SIMD_erfcf64
  345. #define __DECL_SIMD_erfcf128
  346. #define __DECL_SIMD_erfcf32x
  347. #define __DECL_SIMD_erfcf64x
  348. #define __DECL_SIMD_erfcf128x
  349. #define __DECL_SIMD_tan
  350. #define __DECL_SIMD_tanf
  351. #define __DECL_SIMD_tanl
  352. #define __DECL_SIMD_tanf16
  353. #define __DECL_SIMD_tanf32
  354. #define __DECL_SIMD_tanf64
  355. #define __DECL_SIMD_tanf128
  356. #define __DECL_SIMD_tanf32x
  357. #define __DECL_SIMD_tanf64x
  358. #define __DECL_SIMD_tanf128x
  359. #define __DECL_SIMD_sinpi
  360. #define __DECL_SIMD_sinpif
  361. #define __DECL_SIMD_sinpil
  362. #define __DECL_SIMD_sinpif16
  363. #define __DECL_SIMD_sinpif32
  364. #define __DECL_SIMD_sinpif64
  365. #define __DECL_SIMD_sinpif128
  366. #define __DECL_SIMD_sinpif32x
  367. #define __DECL_SIMD_sinpif64x
  368. #define __DECL_SIMD_sinpif128x
  369. #define __DECL_SIMD_cospi
  370. #define __DECL_SIMD_cospif
  371. #define __DECL_SIMD_cospil
  372. #define __DECL_SIMD_cospif16
  373. #define __DECL_SIMD_cospif32
  374. #define __DECL_SIMD_cospif64
  375. #define __DECL_SIMD_cospif128
  376. #define __DECL_SIMD_cospif32x
  377. #define __DECL_SIMD_cospif64x
  378. #define __DECL_SIMD_cospif128x
  379. #define __DECL_SIMD_tanpi
  380. #define __DECL_SIMD_tanpif
  381. #define __DECL_SIMD_tanpil
  382. #define __DECL_SIMD_tanpif16
  383. #define __DECL_SIMD_tanpif32
  384. #define __DECL_SIMD_tanpif64
  385. #define __DECL_SIMD_tanpif128
  386. #define __DECL_SIMD_tanpif32x
  387. #define __DECL_SIMD_tanpif64x
  388. #define __DECL_SIMD_tanpif128x
  389. #define __DECL_SIMD_acospi
  390. #define __DECL_SIMD_acospif
  391. #define __DECL_SIMD_acospil
  392. #define __DECL_SIMD_acospif16
  393. #define __DECL_SIMD_acospif32
  394. #define __DECL_SIMD_acospif64
  395. #define __DECL_SIMD_acospif128
  396. #define __DECL_SIMD_acospif32x
  397. #define __DECL_SIMD_acospif64x
  398. #define __DECL_SIMD_acospif128x
  399. #define __DECL_SIMD_asinpi
  400. #define __DECL_SIMD_asinpif
  401. #define __DECL_SIMD_asinpil
  402. #define __DECL_SIMD_asinpif16
  403. #define __DECL_SIMD_asinpif32
  404. #define __DECL_SIMD_asinpif64
  405. #define __DECL_SIMD_asinpif128
  406. #define __DECL_SIMD_asinpif32x
  407. #define __DECL_SIMD_asinpif64x
  408. #define __DECL_SIMD_asinpif128x
  409. #define __DECL_SIMD_atanpi
  410. #define __DECL_SIMD_atanpif
  411. #define __DECL_SIMD_atanpil
  412. #define __DECL_SIMD_atanpif16
  413. #define __DECL_SIMD_atanpif32
  414. #define __DECL_SIMD_atanpif64
  415. #define __DECL_SIMD_atanpif128
  416. #define __DECL_SIMD_atanpif32x
  417. #define __DECL_SIMD_atanpif64x
  418. #define __DECL_SIMD_atanpif128x
  419. #define __DECL_SIMD_atan2pi
  420. #define __DECL_SIMD_atan2pif
  421. #define __DECL_SIMD_atan2pil
  422. #define __DECL_SIMD_atan2pif16
  423. #define __DECL_SIMD_atan2pif32
  424. #define __DECL_SIMD_atan2pif64
  425. #define __DECL_SIMD_atan2pif128
  426. #define __DECL_SIMD_atan2pif32x
  427. #define __DECL_SIMD_atan2pif64x
  428. #define __DECL_SIMD_atan2pif128x
  429. #endif