libm-test-ulps-sh 21 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094
  1. # Begin of automatic generation
  2. # asin
  3. Test "asin (-0.5) == -pi/6":
  4. float: 2
  5. ifloat: 2
  6. Test "asin (0.5) == pi/6":
  7. float: 2
  8. ifloat: 2
  9. Test "asin (0.7) == 0.7753974966107530637":
  10. double: 1
  11. float: 2
  12. idouble: 1
  13. ifloat: 2
  14. # atan2
  15. Test "atan2 (0.7, -1.0) == 2.530866689200584621918884506789267":
  16. float: 3
  17. ifloat: 3
  18. Test "atan2 (-0.7, -1.0) == -2.530866689200584621918884506789267":
  19. float: 3
  20. ifloat: 3
  21. Test "atan2 (1.4, -0.93) == 2.1571487668237843754887415992772736":
  22. float: 4
  23. ifloat: 4
  24. # atanh
  25. Test "atanh (0.7) == 0.8673005276940531944":
  26. double: 1
  27. idouble: 1
  28. # cabs
  29. Test "cabs (-0.7 + 12.4 i) == 12.419742348374220601176836866763271":
  30. float: 1
  31. ifloat: 1
  32. Test "cabs (-0.7 - 12.4 i) == 12.419742348374220601176836866763271":
  33. float: 1
  34. ifloat: 1
  35. Test "cabs (-12.4 + 0.7 i) == 12.419742348374220601176836866763271":
  36. float: 1
  37. ifloat: 1
  38. Test "cabs (-12.4 - 0.7 i) == 12.419742348374220601176836866763271":
  39. float: 1
  40. ifloat: 1
  41. Test "cabs (0.7 + 1.2 i) == 1.3892443989449804508432547041028554":
  42. double: 1
  43. idouble: 1
  44. Test "cabs (0.7 + 12.4 i) == 12.419742348374220601176836866763271":
  45. float: 1
  46. ifloat: 1
  47. # cacos
  48. Test "Real part of: cacos (0.7 + 1.2 i) == 1.1351827477151551088992008271819053 - 1.0927647857577371459105272080819308 i":
  49. double: 1
  50. float: 1
  51. idouble: 1
  52. ifloat: 1
  53. Test "Imaginary part of: cacos (0.7 + 1.2 i) == 1.1351827477151551088992008271819053 - 1.0927647857577371459105272080819308 i":
  54. float: 1
  55. ifloat: 1
  56. # cacosh
  57. Test "Real part of: cacosh (-2 - 3 i) == 1.9833870299165354323470769028940395 - 2.1414491111159960199416055713254211 i":
  58. double: 1
  59. float: 7
  60. idouble: 1
  61. ifloat: 7
  62. Test "Imaginary part of: cacosh (-2 - 3 i) == 1.9833870299165354323470769028940395 - 2.1414491111159960199416055713254211 i":
  63. double: 1
  64. float: 3
  65. idouble: 1
  66. ifloat: 3
  67. Test "Real part of: cacosh (0.7 + 1.2 i) == 1.0927647857577371459105272080819308 + 1.1351827477151551088992008271819053 i":
  68. double: 1
  69. float: 1
  70. idouble: 1
  71. ifloat: 1
  72. # casin
  73. Test "Real part of: casin (0.7 + 1.2 i) == 0.4356135790797415103321208644578462 + 1.0927647857577371459105272080819308 i":
  74. double: 3
  75. float: 2
  76. idouble: 3
  77. ifloat: 2
  78. Test "Imaginary part of: casin (0.7 + 1.2 i) == 0.4356135790797415103321208644578462 + 1.0927647857577371459105272080819308 i":
  79. float: 1
  80. ifloat: 1
  81. # casinh
  82. Test "Real part of: casinh (-2 - 3 i) == -1.9686379257930962917886650952454982 - 0.96465850440760279204541105949953237 i":
  83. double: 5
  84. float: 1
  85. idouble: 5
  86. ifloat: 1
  87. Test "Imaginary part of: casinh (-2 - 3 i) == -1.9686379257930962917886650952454982 - 0.96465850440760279204541105949953237 i":
  88. double: 3
  89. float: 6
  90. idouble: 3
  91. ifloat: 6
  92. Test "Real part of: casinh (0.7 + 1.2 i) == 0.97865459559367387689317593222160964 + 0.91135418953156011567903546856170941 i":
  93. double: 1
  94. idouble: 1
  95. Test "Imaginary part of: casinh (0.7 + 1.2 i) == 0.97865459559367387689317593222160964 + 0.91135418953156011567903546856170941 i":
  96. float: 1
  97. ifloat: 1
  98. # catan
  99. Test "Real part of: catan (-2 - 3 i) == -1.4099210495965755225306193844604208 - 0.22907268296853876629588180294200276 i":
  100. float: 3
  101. ifloat: 3
  102. Test "Imaginary part of: catan (-2 - 3 i) == -1.4099210495965755225306193844604208 - 0.22907268296853876629588180294200276 i":
  103. double: 1
  104. float: 1
  105. idouble: 1
  106. ifloat: 1
  107. Test "Real part of: catan (0.7 + 1.2 i) == 1.0785743834118921877443707996386368 + 0.57705737765343067644394541889341712 i":
  108. float: 4
  109. ifloat: 4
  110. Test "Imaginary part of: catan (0.7 + 1.2 i) == 1.0785743834118921877443707996386368 + 0.57705737765343067644394541889341712 i":
  111. double: 1
  112. idouble: 1
  113. # catanh
  114. Test "Real part of: catanh (-2 - 3 i) == -0.14694666622552975204743278515471595 - 1.3389725222944935611241935759091443 i":
  115. double: 4
  116. idouble: 4
  117. Test "Imaginary part of: catanh (-2 - 3 i) == -0.14694666622552975204743278515471595 - 1.3389725222944935611241935759091443 i":
  118. float: 4
  119. ifloat: 4
  120. Test "Real part of: catanh (0.7 + 1.2 i) == 0.2600749516525135959200648705635915 + 0.97024030779509898497385130162655963 i":
  121. float: 1
  122. ifloat: 1
  123. Test "Imaginary part of: catanh (0.7 + 1.2 i) == 0.2600749516525135959200648705635915 + 0.97024030779509898497385130162655963 i":
  124. double: 1
  125. float: 6
  126. idouble: 1
  127. ifloat: 6
  128. # cbrt
  129. Test "cbrt (-27.0) == -3.0":
  130. double: 1
  131. idouble: 1
  132. Test "cbrt (0.970299) == 0.99":
  133. double: 1
  134. idouble: 1
  135. # ccos
  136. Test "Imaginary part of: ccos (-2 - 3 i) == -4.18962569096880723013255501961597373 - 9.10922789375533659797919726277886212 i":
  137. float: 1
  138. ifloat: 1
  139. Test "Real part of: ccos (0.7 + 1.2 i) == 1.3848657645312111080 - 0.97242170335830028619 i":
  140. double: 1
  141. idouble: 1
  142. Test "Imaginary part of: ccos (0.7 + 1.2 i) == 1.3848657645312111080 - 0.97242170335830028619 i":
  143. double: 1
  144. idouble: 1
  145. # ccosh
  146. Test "Real part of: ccosh (-2 - 3 i) == -3.72454550491532256547397070325597253 + 0.511822569987384608834463849801875634 i":
  147. float: 1
  148. ifloat: 1
  149. Test "Imaginary part of: ccosh (-2 - 3 i) == -3.72454550491532256547397070325597253 + 0.511822569987384608834463849801875634 i":
  150. float: 1
  151. ifloat: 1
  152. Test "Real part of: ccosh (0.7 + 1.2 i) == 0.4548202223691477654 + 0.7070296600921537682 i":
  153. double: 1
  154. float: 1
  155. idouble: 1
  156. ifloat: 1
  157. Test "Imaginary part of: ccosh (0.7 + 1.2 i) == 0.4548202223691477654 + 0.7070296600921537682 i":
  158. double: 1
  159. idouble: 1
  160. # cexp
  161. Test "Imaginary part of: cexp (-2.0 - 3.0 i) == -0.13398091492954261346140525546115575 - 0.019098516261135196432576240858800925 i":
  162. float: 1
  163. ifloat: 1
  164. Test "Real part of: cexp (0.7 + 1.2 i) == 0.7296989091503236012 + 1.8768962328348102821 i":
  165. double: 1
  166. float: 1
  167. idouble: 1
  168. ifloat: 1
  169. Test "Imaginary part of: cexp (0.7 + 1.2 i) == 0.7296989091503236012 + 1.8768962328348102821 i":
  170. float: 1
  171. ifloat: 1
  172. # clog
  173. Test "Imaginary part of: clog (-2 - 3 i) == 1.2824746787307683680267437207826593 - 2.1587989303424641704769327722648368 i":
  174. double: 1
  175. float: 3
  176. idouble: 1
  177. ifloat: 3
  178. # clog10
  179. Test "Imaginary part of: clog10 (-0 + inf i) == inf + pi/2*log10(e) i":
  180. float: 1
  181. ifloat: 1
  182. Test "Imaginary part of: clog10 (-0 - inf i) == inf - pi/2*log10(e) i":
  183. float: 1
  184. ifloat: 1
  185. Test "Imaginary part of: clog10 (-2 - 3 i) == 0.556971676153418384603252578971164214 - 0.937554462986374708541507952140189646 i":
  186. double: 1
  187. float: 5
  188. idouble: 1
  189. ifloat: 5
  190. Test "Imaginary part of: clog10 (-3 + inf i) == inf + pi/2*log10(e) i":
  191. float: 1
  192. ifloat: 1
  193. Test "Imaginary part of: clog10 (-3 - inf i) == inf - pi/2*log10(e) i":
  194. float: 1
  195. ifloat: 1
  196. Test "Imaginary part of: clog10 (-inf + 0 i) == inf + pi*log10(e) i":
  197. float: 1
  198. ifloat: 1
  199. Test "Imaginary part of: clog10 (-inf + 1 i) == inf + pi*log10(e) i":
  200. float: 1
  201. ifloat: 1
  202. Test "Imaginary part of: clog10 (-inf - 0 i) == inf - pi*log10(e) i":
  203. float: 1
  204. ifloat: 1
  205. Test "Imaginary part of: clog10 (-inf - 1 i) == inf - pi*log10(e) i":
  206. float: 1
  207. ifloat: 1
  208. Test "Imaginary part of: clog10 (0 + inf i) == inf + pi/2*log10(e) i":
  209. float: 1
  210. ifloat: 1
  211. Test "Imaginary part of: clog10 (0 - inf i) == inf - pi/2*log10(e) i":
  212. float: 1
  213. ifloat: 1
  214. Test "Real part of: clog10 (0.7 + 1.2 i) == 0.1427786545038868803 + 0.4528483579352493248 i":
  215. double: 1
  216. float: 1
  217. idouble: 1
  218. ifloat: 1
  219. Test "Imaginary part of: clog10 (0.7 + 1.2 i) == 0.1427786545038868803 + 0.4528483579352493248 i":
  220. double: 1
  221. idouble: 1
  222. Test "Imaginary part of: clog10 (3 + inf i) == inf + pi/2*log10(e) i":
  223. float: 1
  224. ifloat: 1
  225. Test "Imaginary part of: clog10 (3 - inf i) == inf - pi/2*log10(e) i":
  226. float: 1
  227. ifloat: 1
  228. Test "Imaginary part of: clog10 (inf + inf i) == inf + pi/4*log10(e) i":
  229. float: 1
  230. ifloat: 1
  231. Test "Imaginary part of: clog10 (inf - inf i) == inf - pi/4*log10(e) i":
  232. float: 1
  233. ifloat: 1
  234. # cos
  235. Test "cos (0.7) == 0.7648421872844884262":
  236. double: 1
  237. float: 1
  238. idouble: 1
  239. ifloat: 1
  240. Test "cos (M_PI_6l * 2.0) == 0.5":
  241. double: 1
  242. float: 0.5
  243. idouble: 1
  244. ifloat: 0.5
  245. Test "cos (M_PI_6l * 4.0) == -0.5":
  246. double: 2
  247. float: 1
  248. idouble: 2
  249. ifloat: 1
  250. Test "cos (pi/2) == 0":
  251. double: 0.2758
  252. float: 0.3667
  253. idouble: 0.2758
  254. ifloat: 0.3667
  255. # cpow
  256. Test "Real part of: cpow (2 + 3 i, 4 + 0 i) == -119.0 - 120.0 i":
  257. double: 1
  258. float: 4
  259. idouble: 1
  260. ifloat: 4
  261. Test "Imaginary part of: cpow (2 + 3 i, 4 + 0 i) == -119.0 - 120.0 i":
  262. float: 2
  263. ifloat: 2
  264. Test "Imaginary part of: cpow (e + 0 i, 0 + 2 * M_PIl i) == 1.0 + 0.0 i":
  265. double: 1.1031
  266. float: 1.5
  267. idouble: 1.1031
  268. ifloat: 1.5
  269. # csin
  270. Test "Imaginary part of: csin (0.7 + 1.2 i) == 1.1664563419657581376 + 1.1544997246948547371 i":
  271. float: 1
  272. ifloat: 1
  273. # csinh
  274. Test "Imaginary part of: csinh (-2 - 3 i) == 3.59056458998577995201256544779481679 - 0.530921086248519805267040090660676560 i":
  275. double: 1
  276. idouble: 1
  277. Test "Real part of: csinh (0.7 + 1.2 i) == 0.27487868678117583582 + 1.1698665727426565139 i":
  278. float: 1
  279. ifloat: 1
  280. Test "Imaginary part of: csinh (0.7 + 1.2 i) == 0.27487868678117583582 + 1.1698665727426565139 i":
  281. float: 1
  282. ifloat: 1
  283. # csqrt
  284. Test "Real part of: csqrt (-2 + 3 i) == 0.89597747612983812471573375529004348 + 1.6741492280355400404480393008490519 i":
  285. float: 1
  286. ifloat: 1
  287. Test "Real part of: csqrt (-2 - 3 i) == 0.89597747612983812471573375529004348 - 1.6741492280355400404480393008490519 i":
  288. float: 1
  289. ifloat: 1
  290. Test "Real part of: csqrt (0.7 + 1.2 i) == 1.022067610030026450706487883081139 + 0.58704531296356521154977678719838035 i":
  291. double: 1
  292. float: 1
  293. idouble: 1
  294. ifloat: 1
  295. Test "Imaginary part of: csqrt (0.7 + 1.2 i) == 1.022067610030026450706487883081139 + 0.58704531296356521154977678719838035 i":
  296. float: 1
  297. ifloat: 1
  298. # ctan
  299. Test "Real part of: ctan (-2 - 3 i) == 0.376402564150424829275122113032269084e-2 - 1.00323862735360980144635859782192726 i":
  300. double: 1
  301. idouble: 1
  302. Test "Real part of: ctan (0.7 + 1.2 i) == 0.1720734197630349001 + 0.9544807059989405538 i":
  303. float: 1
  304. ifloat: 1
  305. Test "Imaginary part of: ctan (0.7 + 1.2 i) == 0.1720734197630349001 + 0.9544807059989405538 i":
  306. double: 1
  307. float: 1
  308. idouble: 1
  309. ifloat: 1
  310. # ctanh
  311. Test "Real part of: ctanh (-2 - 3 i) == -0.965385879022133124278480269394560686 + 0.988437503832249372031403430350121098e-2 i":
  312. double: 1
  313. float: 2
  314. idouble: 1
  315. ifloat: 2
  316. Test "Imaginary part of: ctanh (0 + pi/4 i) == 0.0 + 1.0 i":
  317. float: 1
  318. ifloat: 1
  319. Test "Real part of: ctanh (0.7 + 1.2 i) == 1.3472197399061191630 + 0.4778641038326365540 i":
  320. double: 2
  321. float: 1
  322. idouble: 2
  323. ifloat: 1
  324. Test "Imaginary part of: ctanh (0.7 + 1.2 i) == 1.3472197399061191630 + 0.4778641038326365540 i":
  325. double: 2
  326. float: 1
  327. idouble: 2
  328. ifloat: 1
  329. # erfc
  330. Test "erfc (0.7) == 0.32219880616258152702":
  331. double: 1
  332. idouble: 1
  333. Test "erfc (1.2) == 0.089686021770364619762":
  334. double: 2
  335. float: 2
  336. idouble: 2
  337. ifloat: 2
  338. Test "erfc (2.0) == 0.0046777349810472658379":
  339. double: 1
  340. idouble: 1
  341. Test "erfc (4.1) == 0.67000276540848983727e-8":
  342. double: 24
  343. float: 12
  344. idouble: 24
  345. ifloat: 12
  346. # exp10
  347. Test "exp10 (-1) == 0.1":
  348. double: 2
  349. float: 1
  350. idouble: 2
  351. ifloat: 1
  352. Test "exp10 (0.7) == 5.0118723362727228500":
  353. float: 1
  354. ifloat: 1
  355. Test "exp10 (3) == 1000":
  356. double: 6
  357. float: 2
  358. idouble: 6
  359. ifloat: 2
  360. # expm1
  361. Test "expm1 (1) == M_El - 1.0":
  362. float: 1
  363. ifloat: 1
  364. # fmod
  365. Test "fmod (-6.5, -2.3) == -1.9":
  366. double: 2
  367. float: 1
  368. idouble: 2
  369. ifloat: 1
  370. Test "fmod (-6.5, 2.3) == -1.9":
  371. double: 2
  372. float: 1
  373. idouble: 2
  374. ifloat: 1
  375. Test "fmod (6.5, -2.3) == 1.9":
  376. double: 2
  377. float: 1
  378. idouble: 2
  379. ifloat: 1
  380. Test "fmod (6.5, 2.3) == 1.9":
  381. double: 2
  382. float: 1
  383. idouble: 2
  384. ifloat: 1
  385. # hypot
  386. Test "hypot (-0.7, -12.4) == 12.419742348374220601176836866763271":
  387. float: 1
  388. ifloat: 1
  389. Test "hypot (-0.7, 12.4) == 12.419742348374220601176836866763271":
  390. float: 1
  391. ifloat: 1
  392. Test "hypot (-12.4, -0.7) == 12.419742348374220601176836866763271":
  393. float: 1
  394. ifloat: 1
  395. Test "hypot (-12.4, 0.7) == 12.419742348374220601176836866763271":
  396. float: 1
  397. ifloat: 1
  398. Test "hypot (0.7, -12.4) == 12.419742348374220601176836866763271":
  399. float: 1
  400. ifloat: 1
  401. Test "hypot (0.7, 1.2) == 1.3892443989449804508432547041028554":
  402. double: 1
  403. idouble: 1
  404. Test "hypot (0.7, 12.4) == 12.419742348374220601176836866763271":
  405. float: 1
  406. ifloat: 1
  407. Test "hypot (12.4, -0.7) == 12.419742348374220601176836866763271":
  408. float: 1
  409. ifloat: 1
  410. Test "hypot (12.4, 0.7) == 12.419742348374220601176836866763271":
  411. float: 1
  412. ifloat: 1
  413. # j0
  414. Test "j0 (10.0) == -0.24593576445134833520":
  415. double: 2
  416. float: 1
  417. idouble: 2
  418. ifloat: 1
  419. Test "j0 (2.0) == 0.22389077914123566805":
  420. float: 2
  421. ifloat: 2
  422. Test "j0 (8.0) == 0.17165080713755390609":
  423. float: 1
  424. ifloat: 1
  425. # j1
  426. Test "j1 (10.0) == 0.043472746168861436670":
  427. float: 2
  428. ifloat: 2
  429. Test "j1 (2.0) == 0.57672480775687338720":
  430. double: 1
  431. idouble: 1
  432. Test "j1 (8.0) == 0.23463634685391462438":
  433. double: 1
  434. idouble: 1
  435. # jn
  436. Test "jn (0, 10.0) == -0.24593576445134833520":
  437. double: 2
  438. float: 1
  439. idouble: 2
  440. ifloat: 1
  441. Test "jn (0, 2.0) == 0.22389077914123566805":
  442. float: 2
  443. ifloat: 2
  444. Test "jn (0, 8.0) == 0.17165080713755390609":
  445. float: 1
  446. ifloat: 1
  447. Test "jn (1, 10.0) == 0.043472746168861436670":
  448. float: 2
  449. ifloat: 2
  450. Test "jn (1, 2.0) == 0.57672480775687338720":
  451. double: 1
  452. idouble: 1
  453. Test "jn (1, 8.0) == 0.23463634685391462438":
  454. double: 1
  455. idouble: 1
  456. Test "jn (10, 0.1) == 0.26905328954342155795e-19":
  457. double: 6
  458. float: 4
  459. idouble: 6
  460. ifloat: 4
  461. Test "jn (10, 0.7) == 0.75175911502153953928e-11":
  462. double: 3
  463. float: 1
  464. idouble: 3
  465. ifloat: 1
  466. Test "jn (10, 10.0) == 0.20748610663335885770":
  467. double: 4
  468. float: 3
  469. idouble: 4
  470. ifloat: 3
  471. Test "jn (10, 2.0) == 0.25153862827167367096e-6":
  472. float: 4
  473. ifloat: 4
  474. Test "jn (3, 0.1) == 0.000020820315754756261429":
  475. double: 1
  476. idouble: 1
  477. Test "jn (3, 0.7) == 0.0069296548267508408077":
  478. float: 1
  479. ifloat: 1
  480. Test "jn (3, 10.0) == 0.058379379305186812343":
  481. double: 3
  482. float: 1
  483. idouble: 3
  484. ifloat: 1
  485. Test "jn (3, 2.0) == 0.12894324947440205110":
  486. double: 1
  487. float: 2
  488. idouble: 1
  489. ifloat: 2
  490. # lgamma
  491. Test "lgamma (0.7) == 0.260867246531666514385732417016759578":
  492. double: 1
  493. float: 1
  494. idouble: 1
  495. ifloat: 1
  496. Test "lgamma (1.2) == -0.853740900033158497197028392998854470e-1":
  497. double: 1
  498. float: 2
  499. idouble: 1
  500. ifloat: 2
  501. # log
  502. Test "log (0.7) == -0.35667494393873237891263871124118447":
  503. double: 1
  504. float: 1
  505. idouble: 1
  506. ifloat: 1
  507. # log10
  508. Test "log10 (0.7) == -0.15490195998574316929":
  509. double: 1
  510. float: 1
  511. idouble: 1
  512. ifloat: 1
  513. Test "log10 (e) == log10(e)":
  514. float: 1
  515. ifloat: 1
  516. # log1p
  517. Test "log1p (-0.3) == -0.35667494393873237891263871124118447":
  518. double: 1
  519. float: 1
  520. idouble: 1
  521. ifloat: 1
  522. # log2
  523. Test "log2 (0.7) == -0.51457317282975824043":
  524. double: 1
  525. float: 1
  526. idouble: 1
  527. ifloat: 1
  528. # sincos
  529. Test "sincos (0.7, &sin_res, &cos_res) puts 0.76484218728448842626 in cos_res":
  530. double: 1
  531. float: 1
  532. idouble: 1
  533. ifloat: 1
  534. Test "sincos (M_PI_6l*2.0, &sin_res, &cos_res) puts 0.5 in cos_res":
  535. double: 1
  536. float: 0.5
  537. idouble: 1
  538. ifloat: 0.5
  539. Test "sincos (M_PI_6l*2.0, &sin_res, &cos_res) puts 0.866025403784438646764 in sin_res":
  540. double: 1
  541. float: 1
  542. idouble: 1
  543. ifloat: 1
  544. Test "sincos (pi/2, &sin_res, &cos_res) puts 0 in cos_res":
  545. double: 0.2758
  546. float: 0.3667
  547. idouble: 0.2758
  548. ifloat: 0.3667
  549. Test "sincos (pi/6, &sin_res, &cos_res) puts 0.866025403784438646764 in cos_res":
  550. float: 1
  551. ifloat: 1
  552. # sinh
  553. Test "sinh (0.7) == 0.75858370183953350346":
  554. double: 1
  555. float: 1
  556. idouble: 1
  557. ifloat: 1
  558. # tan
  559. Test "tan (pi/4) == 1":
  560. double: 0.5
  561. idouble: 0.5
  562. # tanh
  563. Test "tanh (0.7) == 0.60436777711716349631":
  564. double: 1
  565. float: 1
  566. idouble: 1
  567. ifloat: 1
  568. # tgamma
  569. Test "tgamma (-0.5) == -2 sqrt (pi)":
  570. double: 1
  571. float: 1
  572. idouble: 1
  573. ifloat: 1
  574. Test "tgamma (0.5) == sqrt (pi)":
  575. float: 1
  576. ifloat: 1
  577. Test "tgamma (0.7) == 1.29805533264755778568117117915281162":
  578. double: 1
  579. float: 1
  580. idouble: 1
  581. ifloat: 1
  582. # y0
  583. Test "y0 (0.7) == -0.19066492933739506743":
  584. double: 2
  585. float: 1
  586. idouble: 2
  587. ifloat: 1
  588. Test "y0 (1.0) == 0.088256964215676957983":
  589. double: 2
  590. float: 1
  591. idouble: 2
  592. ifloat: 1
  593. Test "y0 (1.5) == 0.38244892379775884396":
  594. double: 2
  595. float: 1
  596. idouble: 2
  597. ifloat: 1
  598. Test "y0 (10.0) == 0.055671167283599391424":
  599. float: 1
  600. ifloat: 1
  601. Test "y0 (8.0) == 0.22352148938756622053":
  602. double: 1
  603. float: 1
  604. idouble: 1
  605. ifloat: 1
  606. # y1
  607. Test "y1 (0.1) == -6.4589510947020269877":
  608. double: 1
  609. idouble: 1
  610. Test "y1 (0.7) == -1.1032498719076333697":
  611. double: 1
  612. float: 1
  613. idouble: 1
  614. ifloat: 1
  615. Test "y1 (1.5) == -0.41230862697391129595":
  616. float: 1
  617. ifloat: 1
  618. Test "y1 (10.0) == 0.24901542420695388392":
  619. double: 3
  620. float: 1
  621. idouble: 3
  622. ifloat: 1
  623. Test "y1 (2.0) == -0.10703243154093754689":
  624. double: 1
  625. float: 1
  626. idouble: 1
  627. ifloat: 1
  628. Test "y1 (8.0) == -0.15806046173124749426":
  629. double: 1
  630. float: 2
  631. idouble: 1
  632. ifloat: 2
  633. # yn
  634. Test "yn (0, 0.7) == -0.19066492933739506743":
  635. double: 2
  636. float: 1
  637. idouble: 2
  638. ifloat: 1
  639. Test "yn (0, 1.0) == 0.088256964215676957983":
  640. double: 2
  641. float: 1
  642. idouble: 2
  643. ifloat: 1
  644. Test "yn (0, 1.5) == 0.38244892379775884396":
  645. double: 2
  646. float: 1
  647. idouble: 2
  648. ifloat: 1
  649. Test "yn (0, 10.0) == 0.055671167283599391424":
  650. float: 1
  651. ifloat: 1
  652. Test "yn (0, 8.0) == 0.22352148938756622053":
  653. double: 1
  654. float: 1
  655. idouble: 1
  656. ifloat: 1
  657. Test "yn (1, 0.1) == -6.4589510947020269877":
  658. double: 1
  659. idouble: 1
  660. Test "yn (1, 0.7) == -1.1032498719076333697":
  661. double: 1
  662. float: 1
  663. idouble: 1
  664. ifloat: 1
  665. Test "yn (1, 1.5) == -0.41230862697391129595":
  666. float: 1
  667. ifloat: 1
  668. Test "yn (1, 10.0) == 0.24901542420695388392":
  669. double: 3
  670. float: 1
  671. idouble: 3
  672. ifloat: 1
  673. Test "yn (1, 2.0) == -0.10703243154093754689":
  674. double: 1
  675. float: 1
  676. idouble: 1
  677. ifloat: 1
  678. Test "yn (1, 8.0) == -0.15806046173124749426":
  679. double: 1
  680. float: 2
  681. idouble: 1
  682. ifloat: 2
  683. Test "yn (10, 0.1) == -0.11831335132045197885e19":
  684. double: 2
  685. float: 2
  686. idouble: 2
  687. ifloat: 2
  688. Test "yn (10, 0.7) == -0.42447194260703866924e10":
  689. double: 3
  690. idouble: 3
  691. Test "yn (10, 1.0) == -0.12161801427868918929e9":
  692. double: 1
  693. idouble: 1
  694. Test "yn (10, 10.0) == -0.35981415218340272205":
  695. double: 1
  696. float: 1
  697. idouble: 1
  698. ifloat: 1
  699. Test "yn (10, 2.0) == -129184.54220803928264":
  700. double: 2
  701. idouble: 2
  702. Test "yn (3, 0.1) == -5099.3323786129048894":
  703. double: 1
  704. float: 1
  705. idouble: 1
  706. ifloat: 1
  707. Test "yn (3, 0.7) == -15.819479052819633505":
  708. double: 3
  709. float: 1
  710. idouble: 3
  711. ifloat: 1
  712. Test "yn (3, 10.0) == -0.25136265718383732978":
  713. double: 1
  714. float: 1
  715. idouble: 1
  716. ifloat: 1
  717. Test "yn (3, 2.0) == -1.1277837768404277861":
  718. double: 1
  719. idouble: 1
  720. # Maximal error of functions:
  721. Function: "asin":
  722. double: 1
  723. float: 2
  724. idouble: 1
  725. ifloat: 2
  726. Function: "atan2":
  727. float: 4
  728. ifloat: 4
  729. Function: "atanh":
  730. double: 1
  731. idouble: 1
  732. Function: "cabs":
  733. double: 1
  734. float: 1
  735. idouble: 1
  736. ifloat: 1
  737. Function: Real part of "cacos":
  738. double: 1
  739. float: 1
  740. idouble: 1
  741. ifloat: 1
  742. Function: Imaginary part of "cacos":
  743. float: 1
  744. ifloat: 1
  745. Function: Real part of "cacosh":
  746. double: 1
  747. float: 7
  748. idouble: 1
  749. ifloat: 7
  750. Function: Imaginary part of "cacosh":
  751. double: 1
  752. float: 3
  753. idouble: 1
  754. ifloat: 3
  755. Function: Real part of "casin":
  756. double: 3
  757. float: 2
  758. idouble: 3
  759. ifloat: 2
  760. Function: Imaginary part of "casin":
  761. float: 1
  762. ifloat: 1
  763. Function: Real part of "casinh":
  764. double: 5
  765. float: 1
  766. idouble: 5
  767. ifloat: 1
  768. Function: Imaginary part of "casinh":
  769. double: 3
  770. float: 6
  771. idouble: 3
  772. ifloat: 6
  773. Function: Real part of "catan":
  774. float: 4
  775. ifloat: 4
  776. Function: Imaginary part of "catan":
  777. double: 1
  778. float: 1
  779. idouble: 1
  780. ifloat: 1
  781. Function: Real part of "catanh":
  782. double: 4
  783. float: 1
  784. idouble: 4
  785. ifloat: 1
  786. Function: Imaginary part of "catanh":
  787. double: 1
  788. float: 6
  789. idouble: 1
  790. ifloat: 6
  791. Function: "cbrt":
  792. double: 1
  793. idouble: 1
  794. Function: Real part of "ccos":
  795. double: 1
  796. idouble: 1
  797. Function: Imaginary part of "ccos":
  798. double: 1
  799. float: 1
  800. idouble: 1
  801. ifloat: 1
  802. Function: Real part of "ccosh":
  803. double: 1
  804. float: 1
  805. idouble: 1
  806. ifloat: 1
  807. Function: Imaginary part of "ccosh":
  808. double: 1
  809. float: 1
  810. idouble: 1
  811. ifloat: 1
  812. Function: Real part of "cexp":
  813. double: 1
  814. float: 1
  815. idouble: 1
  816. ifloat: 1
  817. Function: Imaginary part of "cexp":
  818. float: 1
  819. ifloat: 1
  820. Function: Imaginary part of "clog":
  821. double: 1
  822. float: 3
  823. idouble: 1
  824. ifloat: 3
  825. Function: Real part of "clog10":
  826. double: 1
  827. float: 1
  828. idouble: 1
  829. ifloat: 1
  830. Function: Imaginary part of "clog10":
  831. double: 1
  832. float: 5
  833. idouble: 1
  834. ifloat: 5
  835. Function: "cos":
  836. double: 2
  837. float: 1
  838. idouble: 2
  839. ifloat: 1
  840. Function: Real part of "cpow":
  841. double: 1
  842. float: 4
  843. idouble: 1
  844. ifloat: 4
  845. Function: Imaginary part of "cpow":
  846. double: 1.1031
  847. float: 2
  848. idouble: 1.1031
  849. ifloat: 2
  850. Function: Imaginary part of "csin":
  851. float: 1
  852. ifloat: 1
  853. Function: Real part of "csinh":
  854. float: 1
  855. ifloat: 1
  856. Function: Imaginary part of "csinh":
  857. double: 1
  858. float: 1
  859. idouble: 1
  860. ifloat: 1
  861. Function: Real part of "csqrt":
  862. double: 1
  863. float: 1
  864. idouble: 1
  865. ifloat: 1
  866. Function: Imaginary part of "csqrt":
  867. float: 1
  868. ifloat: 1
  869. Function: Real part of "ctan":
  870. double: 1
  871. float: 1
  872. idouble: 1
  873. ifloat: 1
  874. Function: Imaginary part of "ctan":
  875. double: 1
  876. float: 1
  877. idouble: 1
  878. ifloat: 1
  879. Function: Real part of "ctanh":
  880. double: 2
  881. float: 2
  882. idouble: 2
  883. ifloat: 2
  884. Function: Imaginary part of "ctanh":
  885. double: 2
  886. float: 1
  887. idouble: 2
  888. ifloat: 1
  889. Function: "erfc":
  890. double: 24
  891. float: 12
  892. idouble: 24
  893. ifloat: 12
  894. Function: "exp10":
  895. double: 6
  896. float: 2
  897. idouble: 6
  898. ifloat: 2
  899. Function: "expm1":
  900. float: 1
  901. ifloat: 1
  902. Function: "fmod":
  903. double: 2
  904. float: 1
  905. idouble: 2
  906. ifloat: 1
  907. Function: "hypot":
  908. double: 1
  909. float: 1
  910. idouble: 1
  911. ifloat: 1
  912. Function: "j0":
  913. double: 2
  914. float: 2
  915. idouble: 2
  916. ifloat: 2
  917. Function: "j1":
  918. double: 1
  919. float: 2
  920. idouble: 1
  921. ifloat: 2
  922. Function: "jn":
  923. double: 6
  924. float: 4
  925. idouble: 6
  926. ifloat: 4
  927. Function: "lgamma":
  928. double: 1
  929. float: 2
  930. idouble: 1
  931. ifloat: 2
  932. Function: "log":
  933. double: 1
  934. float: 1
  935. idouble: 1
  936. ifloat: 1
  937. Function: "log10":
  938. double: 1
  939. float: 1
  940. idouble: 1
  941. ifloat: 1
  942. Function: "log1p":
  943. double: 1
  944. float: 1
  945. idouble: 1
  946. ifloat: 1
  947. Function: "log2":
  948. double: 1
  949. float: 1
  950. idouble: 1
  951. ifloat: 1
  952. Function: "sincos":
  953. double: 1
  954. float: 1
  955. idouble: 1
  956. ifloat: 1
  957. Function: "sinh":
  958. double: 1
  959. float: 1
  960. idouble: 1
  961. ifloat: 1
  962. Function: "tan":
  963. double: 0.5
  964. idouble: 0.5
  965. Function: "tanh":
  966. double: 1
  967. float: 1
  968. idouble: 1
  969. ifloat: 1
  970. Function: "tgamma":
  971. double: 1
  972. float: 1
  973. idouble: 1
  974. ifloat: 1
  975. Function: "y0":
  976. double: 2
  977. float: 1
  978. idouble: 2
  979. ifloat: 1
  980. Function: "y1":
  981. double: 3
  982. float: 2
  983. idouble: 3
  984. ifloat: 2
  985. Function: "yn":
  986. double: 3
  987. float: 2
  988. idouble: 3
  989. ifloat: 2
  990. # end of automatic generation