acosl.S 30 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366
  1. /*
  2. * Math library
  3. *
  4. * Copyright (C) 2016 Intel Corporation. All rights reserved.
  5. *
  6. * Redistribution and use in source and binary forms, with or without
  7. * modification, are permitted provided that the following conditions
  8. * are met:
  9. *
  10. * * Redistributions of source code must retain the above copyright
  11. * notice, this list of conditions and the following disclaimer.
  12. * * Redistributions in binary form must reproduce the above copyright
  13. * notice, this list of conditions and the following disclaimer in
  14. * the documentation and/or other materials provided with the
  15. * distribution.
  16. * * Neither the name of Intel Corporation nor the names of its
  17. * contributors may be used to endorse or promote products derived
  18. * from this software without specific prior written permission.
  19. *
  20. * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  21. * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  22. * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  23. * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
  24. * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  25. * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  26. * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  27. * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  28. * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  29. * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  30. * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  31. *
  32. *
  33. * Author Name <jingwei.zhang@intel.com>
  34. * History:
  35. * 03-14-2016 Initial version. numerics svn rev. 12864
  36. */
  37. .file "acosl.c"
  38. .text
  39. ..TXTST0:
  40. # -- Begin acosl
  41. .text
  42. .align 16,0x90
  43. .globl acosl
  44. acosl:
  45. # parameter 1: 96 + %rsp
  46. ..B1.1:
  47. .cfi_startproc
  48. ..___tag_value_acosl.1:
  49. ..L2:
  50. subq $88, %rsp
  51. .cfi_def_cfa_offset 96
  52. xorb %cl, %cl
  53. ..B1.2:
  54. fnstcw 82(%rsp)
  55. ..B1.3:
  56. movb 105(%rsp), %dl
  57. movzwl 104(%rsp), %edi
  58. andb $-128, %dl
  59. andl $32767, %edi
  60. shrb $7, %dl
  61. movzwl 82(%rsp), %eax
  62. cmpl $16383, %edi
  63. jge ..B1.60
  64. ..B1.4:
  65. cmpl $16382, %edi
  66. jge ..B1.47
  67. ..B1.5:
  68. cmpl $16376, %edi
  69. jge ..B1.37
  70. ..B1.6:
  71. cmpl $16371, %edi
  72. jge ..B1.30
  73. ..B1.7:
  74. cmpl $16365, %edi
  75. jge ..B1.23
  76. ..B1.8:
  77. cmpl $16308, %edi
  78. jge ..B1.16
  79. ..B1.9:
  80. movl %eax, %edx
  81. andl $768, %edx
  82. cmpl $768, %edx
  83. je ..B1.13
  84. ..B1.10:
  85. orl $-64768, %eax
  86. movw %ax, 80(%rsp)
  87. ..B1.11:
  88. fldcw 80(%rsp)
  89. ..B1.12:
  90. movb $1, %cl
  91. ..B1.13:
  92. fldt 96(%rsp)
  93. lea 16+_pi_02(%rip), %rax
  94. lea _pi_02(%rip), %rdx
  95. testb %cl, %cl
  96. fldt (%rax)
  97. fsubp %st, %st(1)
  98. fldt (%rdx)
  99. faddp %st, %st(1)
  100. fstpt (%rsp)
  101. je ..B1.15
  102. ..B1.14:
  103. fldcw 82(%rsp)
  104. ..B1.15:
  105. fldt (%rsp)
  106. addq $88, %rsp
  107. .cfi_def_cfa_offset 8
  108. ret
  109. .cfi_def_cfa_offset 96
  110. ..B1.16:
  111. movl %eax, %edx
  112. andl $768, %edx
  113. cmpl $768, %edx
  114. je ..B1.20
  115. ..B1.17:
  116. orl $-64768, %eax
  117. movw %ax, 80(%rsp)
  118. ..B1.18:
  119. fldcw 80(%rsp)
  120. ..B1.19:
  121. movb $1, %cl
  122. ..B1.20:
  123. fldt 96(%rsp)
  124. lea _P4(%rip), %rax
  125. lea 16+_pi_02(%rip), %rdx
  126. lea _pi_02(%rip), %rsi
  127. testb %cl, %cl
  128. fldt (%rax)
  129. fmul %st(1), %st
  130. fmul %st(1), %st
  131. fmul %st(1), %st
  132. faddp %st, %st(1)
  133. fldt (%rdx)
  134. fsubp %st, %st(1)
  135. fldt (%rsi)
  136. faddp %st, %st(1)
  137. fstpt (%rsp)
  138. je ..B1.22
  139. ..B1.21:
  140. fldcw 82(%rsp)
  141. ..B1.22:
  142. fldt (%rsp)
  143. addq $88, %rsp
  144. .cfi_def_cfa_offset 8
  145. ret
  146. .cfi_def_cfa_offset 96
  147. ..B1.23:
  148. movl %eax, %edx
  149. andl $768, %edx
  150. cmpl $768, %edx
  151. je ..B1.27
  152. ..B1.24:
  153. orl $-64768, %eax
  154. movw %ax, 80(%rsp)
  155. ..B1.25:
  156. fldcw 80(%rsp)
  157. ..B1.26:
  158. movb $1, %cl
  159. ..B1.27:
  160. fldt 96(%rsp)
  161. lea 16+_P3(%rip), %rax
  162. fld %st(0)
  163. lea _P3(%rip), %rdx
  164. fmul %st(1), %st
  165. lea 16+_pi_02(%rip), %rsi
  166. fldt (%rax)
  167. lea _pi_02(%rip), %rdi
  168. fmul %st(1), %st
  169. testb %cl, %cl
  170. fldt (%rdx)
  171. faddp %st, %st(1)
  172. fmulp %st, %st(1)
  173. fmul %st(1), %st
  174. faddp %st, %st(1)
  175. fldt (%rsi)
  176. fsubp %st, %st(1)
  177. fldt (%rdi)
  178. faddp %st, %st(1)
  179. fstpt (%rsp)
  180. je ..B1.29
  181. ..B1.28:
  182. fldcw 82(%rsp)
  183. ..B1.29:
  184. fldt (%rsp)
  185. addq $88, %rsp
  186. .cfi_def_cfa_offset 8
  187. ret
  188. .cfi_def_cfa_offset 96
  189. ..B1.30:
  190. movl %eax, %edx
  191. andl $768, %edx
  192. cmpl $768, %edx
  193. je ..B1.34
  194. ..B1.31:
  195. orl $-64768, %eax
  196. movw %ax, 80(%rsp)
  197. ..B1.32:
  198. fldcw 80(%rsp)
  199. ..B1.33:
  200. movb $1, %cl
  201. ..B1.34:
  202. fldt 96(%rsp)
  203. lea _TWO_32H(%rip), %rax
  204. fld %st(0)
  205. lea 48+_P2(%rip), %rdx
  206. fmul %st(1), %st
  207. lea 16+_P2(%rip), %rsi
  208. fld %st(0)
  209. lea 32+_P2(%rip), %rdi
  210. fmul %st(1), %st
  211. fld %st(2)
  212. lea _P2(%rip), %r8
  213. fld %st(3)
  214. fldl (%rax)
  215. lea 16+_pi_02(%rip), %r9
  216. fmul %st(5), %st
  217. lea _pi_02(%rip), %r10
  218. testb %cl, %cl
  219. fadd %st, %st(2)
  220. fsubrp %st, %st(2)
  221. fsub %st(1), %st
  222. fldt (%rdx)
  223. fmul %st(3), %st
  224. fldt (%rsi)
  225. faddp %st, %st(1)
  226. fmul %st(3), %st
  227. fldt (%rdi)
  228. fmulp %st, %st(4)
  229. fldt (%r8)
  230. faddp %st, %st(4)
  231. fxch %st(4)
  232. fmulp %st, %st(3)
  233. fxch %st(2)
  234. faddp %st, %st(3)
  235. fxch %st(3)
  236. fmulp %st, %st(2)
  237. faddp %st, %st(1)
  238. fldt (%r9)
  239. fsubp %st, %st(1)
  240. fldt (%r10)
  241. fsubp %st, %st(2)
  242. faddp %st, %st(1)
  243. fstpt (%rsp)
  244. je ..B1.36
  245. ..B1.35:
  246. fldcw 82(%rsp)
  247. ..B1.36:
  248. fldt (%rsp)
  249. addq $88, %rsp
  250. .cfi_def_cfa_offset 8
  251. ret
  252. .cfi_def_cfa_offset 96
  253. ..B1.37:
  254. movl %eax, %edx
  255. andl $768, %edx
  256. cmpl $768, %edx
  257. je ..B1.41
  258. ..B1.38:
  259. orl $-64768, %eax
  260. movw %ax, 80(%rsp)
  261. ..B1.39:
  262. fldcw 80(%rsp)
  263. ..B1.40:
  264. movzwl 104(%rsp), %edi
  265. movb $1, %cl
  266. andl $32767, %edi
  267. ..B1.41:
  268. fldt 96(%rsp)
  269. lea _TWO_52H(%rip), %rax
  270. fld %st(0)
  271. cmpl $16381, %edi
  272. fxch %st(1)
  273. fstpt (%rsp)
  274. fldt (%rsp)
  275. fldl (%rax)
  276. fmul %st, %st(2)
  277. fstpt 32(%rsp)
  278. fld %st(0)
  279. fadd %st(2), %st
  280. fsubp %st, %st(2)
  281. fld %st(1)
  282. fld %st(1)
  283. fsub %st(3), %st
  284. fmul %st, %st(1)
  285. fmul %st, %st(2)
  286. fxch %st(2)
  287. faddp %st, %st(1)
  288. fld %st(0)
  289. fld %st(3)
  290. fmul %st(4), %st
  291. fadd %st, %st(1)
  292. fxch %st(1)
  293. fstpt 64(%rsp)
  294. fldt 64(%rsp)
  295. fld %st(2)
  296. fmul %st(2), %st
  297. fxch %st(1)
  298. fmul %st(3), %st
  299. faddp %st, %st(1)
  300. fstpt 48(%rsp)
  301. fldt 48(%rsp)
  302. fld %st(1)
  303. fmul %st(2), %st
  304. fadd %st, %st(1)
  305. fxch %st(3)
  306. fstpt 16(%rsp)
  307. jge ..B1.43
  308. ..B1.42:
  309. fstp %st(2)
  310. lea 176+_P1(%rip), %rax
  311. lea 144+_P1(%rip), %rdx
  312. lea 112+_P1(%rip), %rsi
  313. lea 80+_P1(%rip), %rdi
  314. lea 160+_P1(%rip), %r10
  315. lea 48+_P1(%rip), %r8
  316. lea 128+_P1(%rip), %r11
  317. lea 16+_P1(%rip), %r9
  318. fldt (%rax)
  319. lea 96+_P1(%rip), %rax
  320. fmul %st(2), %st
  321. fldt (%rdx)
  322. lea 64+_P1(%rip), %rdx
  323. faddp %st, %st(1)
  324. fmul %st(2), %st
  325. fldt (%rsi)
  326. lea 32+_P1(%rip), %rsi
  327. faddp %st, %st(1)
  328. fmul %st(2), %st
  329. fldt (%rdi)
  330. lea _P1(%rip), %rdi
  331. faddp %st, %st(1)
  332. fmul %st(2), %st
  333. fldt (%r8)
  334. lea 192+_P1(%rip), %r8
  335. faddp %st, %st(1)
  336. fmul %st(2), %st
  337. fldt (%r9)
  338. faddp %st, %st(1)
  339. fmul %st(2), %st
  340. fldt (%r10)
  341. fmul %st(3), %st
  342. fldt (%r11)
  343. faddp %st, %st(1)
  344. fmul %st(3), %st
  345. fldt (%rax)
  346. faddp %st, %st(1)
  347. fmul %st(3), %st
  348. fldt (%rdx)
  349. faddp %st, %st(1)
  350. fmul %st(3), %st
  351. fldt (%rsi)
  352. faddp %st, %st(1)
  353. fmulp %st, %st(3)
  354. fldt (%rdi)
  355. faddp %st, %st(3)
  356. fldt 64(%rsp)
  357. fmulp %st, %st(3)
  358. faddp %st, %st(2)
  359. fldt 16(%rsp)
  360. fldt (%r8)
  361. fmul %st, %st(1)
  362. fxch %st(1)
  363. faddp %st, %st(3)
  364. fmulp %st, %st(1)
  365. fxch %st(1)
  366. jmp ..B1.44
  367. ..B1.43:
  368. lea 272+_P(%rip), %rax
  369. lea 240+_P(%rip), %rdx
  370. lea 208+_P(%rip), %rsi
  371. lea 176+_P(%rip), %rdi
  372. lea 144+_P(%rip), %r8
  373. lea 112+_P(%rip), %r9
  374. lea 80+_P(%rip), %r10
  375. lea 48+_P(%rip), %r11
  376. fldt (%rax)
  377. lea 16+_P(%rip), %rax
  378. fmul %st(1), %st
  379. fldt (%rdx)
  380. lea 256+_P(%rip), %rdx
  381. faddp %st, %st(1)
  382. fmul %st(1), %st
  383. fldt (%rsi)
  384. lea 224+_P(%rip), %rsi
  385. faddp %st, %st(1)
  386. fmul %st(1), %st
  387. fldt (%rdi)
  388. lea 192+_P(%rip), %rdi
  389. faddp %st, %st(1)
  390. fmul %st(1), %st
  391. fldt (%r8)
  392. lea 160+_P(%rip), %r8
  393. faddp %st, %st(1)
  394. fmul %st(1), %st
  395. fldt (%r9)
  396. lea 128+_P(%rip), %r9
  397. faddp %st, %st(1)
  398. fmul %st(1), %st
  399. fldt (%r10)
  400. lea 96+_P(%rip), %r10
  401. faddp %st, %st(1)
  402. fmul %st(1), %st
  403. fldt (%r11)
  404. lea 64+_P(%rip), %r11
  405. faddp %st, %st(1)
  406. fmul %st(1), %st
  407. fldt (%rax)
  408. lea 32+_P(%rip), %rax
  409. faddp %st, %st(1)
  410. fmul %st(1), %st
  411. fldt (%rdx)
  412. lea _P(%rip), %rdx
  413. fmul %st(2), %st
  414. fldt (%rsi)
  415. lea 304+_P(%rip), %rsi
  416. faddp %st, %st(1)
  417. fmul %st(2), %st
  418. fldt (%rdi)
  419. lea 288+_P(%rip), %rdi
  420. faddp %st, %st(1)
  421. fmul %st(2), %st
  422. fldt (%r8)
  423. faddp %st, %st(1)
  424. fmul %st(2), %st
  425. fldt (%r9)
  426. faddp %st, %st(1)
  427. fmul %st(2), %st
  428. fldt (%r10)
  429. faddp %st, %st(1)
  430. fmul %st(2), %st
  431. fldt (%r11)
  432. faddp %st, %st(1)
  433. fmul %st(2), %st
  434. fldt (%rax)
  435. faddp %st, %st(1)
  436. fmulp %st, %st(2)
  437. fldt (%rdx)
  438. faddp %st, %st(2)
  439. fldt 64(%rsp)
  440. fmulp %st, %st(2)
  441. faddp %st, %st(1)
  442. fldt 48(%rsp)
  443. fldt 16(%rsp)
  444. fldt (%rsi)
  445. fmul %st, %st(2)
  446. fxch %st(2)
  447. faddp %st, %st(3)
  448. fxch %st(1)
  449. fmulp %st, %st(4)
  450. fldt (%rdi)
  451. fmul %st, %st(3)
  452. fxch %st(3)
  453. faddp %st, %st(4)
  454. fld %st(3)
  455. fxch %st(3)
  456. fmulp %st, %st(1)
  457. faddp %st, %st(1)
  458. fldt 32(%rsp)
  459. fmul %st(3), %st
  460. fadd %st, %st(2)
  461. fsubrp %st, %st(2)
  462. fxch %st(1)
  463. fsubr %st, %st(2)
  464. fxch %st(2)
  465. faddp %st, %st(1)
  466. ..B1.44:
  467. fldt (%rsp)
  468. lea _pi_02(%rip), %rax
  469. fmulp %st, %st(1)
  470. fld %st(2)
  471. fmul %st(2), %st
  472. lea 16+_pi_02(%rip), %rdx
  473. testb %cl, %cl
  474. faddp %st, %st(1)
  475. faddp %st, %st(2)
  476. fmul %st(2), %st
  477. faddp %st, %st(2)
  478. fldt (%rax)
  479. fld %st(0)
  480. fsubr %st(3), %st
  481. fchs
  482. fsub %st, %st(1)
  483. fxch %st(3)
  484. faddp %st, %st(1)
  485. fldt (%rdx)
  486. fsubp %st, %st(2)
  487. fsubrp %st, %st(1)
  488. faddp %st, %st(1)
  489. fstpt 16(%rsp)
  490. je ..B1.46
  491. ..B1.45:
  492. fldcw 82(%rsp)
  493. ..B1.46:
  494. fldt 16(%rsp)
  495. addq $88, %rsp
  496. .cfi_def_cfa_offset 8
  497. ret
  498. .cfi_def_cfa_offset 96
  499. ..B1.47:
  500. movl %eax, %esi
  501. andl $768, %esi
  502. cmpl $768, %esi
  503. je ..B1.51
  504. ..B1.48:
  505. orl $-64768, %eax
  506. movw %ax, 80(%rsp)
  507. ..B1.49:
  508. fldcw 80(%rsp)
  509. ..B1.50:
  510. movb $1, %cl
  511. ..B1.51:
  512. fldt 96(%rsp)
  513. lea _ones(%rip), %rsi
  514. fldt .L_2il0floatpacket.0(%rip)
  515. lea _TWO_32H(%rip), %rdi
  516. movzbl %dl, %eax
  517. lea _TWO_52H(%rip), %r8
  518. fldl (%rdi)
  519. fxch %st(2)
  520. fmull (%rsi,%rax,8)
  521. fldl (%r8)
  522. fstpt 16(%rsp)
  523. fldt 16(%rsp)
  524. fxch %st(1)
  525. fsubrl (%rsi)
  526. fmul %st(2), %st
  527. fmul %st, %st(3)
  528. fld %st(0)
  529. fadd %st(4), %st
  530. fsubp %st, %st(4)
  531. fld %st(3)
  532. fxch %st(1)
  533. fsub %st(4), %st
  534. fadd %st, %st(1)
  535. fxch %st(1)
  536. fsqrt
  537. fmul %st, %st(2)
  538. fld %st(2)
  539. fadd %st(1), %st
  540. fsubp %st, %st(3)
  541. fld %st(2)
  542. fmul %st(3), %st
  543. fsubr %st, %st(5)
  544. fld %st(3)
  545. fxch %st(2)
  546. fsub %st(4), %st
  547. fmul %st, %st(2)
  548. fxch %st(2)
  549. fsubrp %st, %st(6)
  550. fxch %st(2)
  551. faddp %st, %st(5)
  552. fld %st(2)
  553. fadd %st(1), %st
  554. fdivrp %st, %st(5)
  555. faddp %st, %st(4)
  556. fxch %st(3)
  557. fmulp %st, %st(2)
  558. fld %st(0)
  559. fadd %st(2), %st
  560. fld %st(0)
  561. fmul %st(3), %st
  562. fld %st(2)
  563. fmul %st(4), %st
  564. faddp %st, %st(1)
  565. fld %st(0)
  566. fadd %st(5), %st
  567. fstpt 48(%rsp)
  568. fldt 48(%rsp)
  569. fld %st(1)
  570. fmul %st(6), %st
  571. fxch %st(1)
  572. fmul %st(2), %st
  573. faddp %st, %st(1)
  574. fstpt 32(%rsp)
  575. fldt 32(%rsp)
  576. fxch %st(1)
  577. fstpt (%rsp)
  578. fld %st(4)
  579. fmul %st(5), %st
  580. fadd %st, %st(1)
  581. fxch %st(2)
  582. fstpt 64(%rsp)
  583. fldt 64(%rsp)
  584. fstpt 96(%rsp)
  585. fldt 96(%rsp)
  586. fldt .L_2il0floatpacket.1(%rip)
  587. fcomip %st(1), %st
  588. fstp %st(0)
  589. jbe ..B1.53
  590. ..B1.52:
  591. fstp %st(1)
  592. lea 176+_P1(%rip), %rax
  593. lea 144+_P1(%rip), %rsi
  594. lea 112+_P1(%rip), %rdi
  595. lea 80+_P1(%rip), %r8
  596. lea 160+_P1(%rip), %r11
  597. lea 48+_P1(%rip), %r9
  598. lea 16+_P1(%rip), %r10
  599. fldt (%rax)
  600. lea 128+_P1(%rip), %rax
  601. fmul %st(1), %st
  602. fldt (%rsi)
  603. lea 96+_P1(%rip), %rsi
  604. faddp %st, %st(1)
  605. fmul %st(1), %st
  606. fldt (%rdi)
  607. lea 64+_P1(%rip), %rdi
  608. faddp %st, %st(1)
  609. fmul %st(1), %st
  610. fldt (%r8)
  611. lea 32+_P1(%rip), %r8
  612. faddp %st, %st(1)
  613. fmul %st(1), %st
  614. fldt (%r9)
  615. lea _P1(%rip), %r9
  616. faddp %st, %st(1)
  617. fmul %st(1), %st
  618. fldt (%r10)
  619. lea 192+_P1(%rip), %r10
  620. faddp %st, %st(1)
  621. fmul %st(1), %st
  622. fldt (%r11)
  623. fmul %st(2), %st
  624. fldt (%rax)
  625. faddp %st, %st(1)
  626. fmul %st(2), %st
  627. fldt (%rsi)
  628. faddp %st, %st(1)
  629. fmul %st(2), %st
  630. fldt (%rdi)
  631. faddp %st, %st(1)
  632. fmul %st(2), %st
  633. fldt (%r8)
  634. faddp %st, %st(1)
  635. fmulp %st, %st(2)
  636. fldt (%r9)
  637. faddp %st, %st(2)
  638. fldt 48(%rsp)
  639. fmulp %st, %st(2)
  640. faddp %st, %st(1)
  641. fldt (%rsp)
  642. fldt (%r10)
  643. fmul %st, %st(1)
  644. fxch %st(1)
  645. faddp %st, %st(2)
  646. fmulp %st, %st(4)
  647. fxch %st(3)
  648. jmp ..B1.54
  649. ..B1.53:
  650. lea 272+_P(%rip), %rax
  651. lea 240+_P(%rip), %rsi
  652. lea 208+_P(%rip), %rdi
  653. lea 176+_P(%rip), %r8
  654. lea 144+_P(%rip), %r9
  655. lea 112+_P(%rip), %r10
  656. lea 80+_P(%rip), %r11
  657. fldt (%rax)
  658. lea 48+_P(%rip), %rax
  659. fmul %st(1), %st
  660. fldt (%rsi)
  661. lea 16+_P(%rip), %rsi
  662. faddp %st, %st(1)
  663. fmul %st(1), %st
  664. fldt (%rdi)
  665. lea 256+_P(%rip), %rdi
  666. faddp %st, %st(1)
  667. fmul %st(1), %st
  668. fldt (%r8)
  669. lea 224+_P(%rip), %r8
  670. faddp %st, %st(1)
  671. fmul %st(1), %st
  672. fldt (%r9)
  673. lea 192+_P(%rip), %r9
  674. faddp %st, %st(1)
  675. fmul %st(1), %st
  676. fldt (%r10)
  677. lea 160+_P(%rip), %r10
  678. faddp %st, %st(1)
  679. fmul %st(1), %st
  680. fldt (%r11)
  681. lea 128+_P(%rip), %r11
  682. faddp %st, %st(1)
  683. fmul %st(1), %st
  684. fldt (%rax)
  685. lea 96+_P(%rip), %rax
  686. faddp %st, %st(1)
  687. fmul %st(1), %st
  688. fldt (%rsi)
  689. lea 64+_P(%rip), %rsi
  690. faddp %st, %st(1)
  691. fmul %st(1), %st
  692. fldt (%rdi)
  693. lea 32+_P(%rip), %rdi
  694. fmul %st(2), %st
  695. fldt (%r8)
  696. lea _P(%rip), %r8
  697. faddp %st, %st(1)
  698. fmul %st(2), %st
  699. fldt (%r9)
  700. lea 304+_P(%rip), %r9
  701. faddp %st, %st(1)
  702. fmul %st(2), %st
  703. fldt (%r10)
  704. lea 288+_P(%rip), %r10
  705. faddp %st, %st(1)
  706. fmul %st(2), %st
  707. fldt (%r11)
  708. faddp %st, %st(1)
  709. fmul %st(2), %st
  710. fldt (%rax)
  711. faddp %st, %st(1)
  712. fmul %st(2), %st
  713. fldt (%rsi)
  714. faddp %st, %st(1)
  715. fmul %st(2), %st
  716. fldt (%rdi)
  717. faddp %st, %st(1)
  718. fmulp %st, %st(2)
  719. fldt (%r8)
  720. faddp %st, %st(2)
  721. fldt 48(%rsp)
  722. fmulp %st, %st(2)
  723. faddp %st, %st(1)
  724. fldt 32(%rsp)
  725. fldt (%rsp)
  726. fldt (%r9)
  727. fmul %st, %st(2)
  728. fxch %st(2)
  729. faddp %st, %st(3)
  730. fxch %st(1)
  731. fmulp %st, %st(3)
  732. fldt (%r10)
  733. fmul %st, %st(1)
  734. fxch %st(1)
  735. faddp %st, %st(2)
  736. fmulp %st, %st(5)
  737. fxch %st(4)
  738. faddp %st, %st(1)
  739. fld %st(0)
  740. fldt 16(%rsp)
  741. fmul %st(2), %st
  742. fadd %st, %st(1)
  743. fsubrp %st, %st(1)
  744. fsubr %st, %st(1)
  745. fxch %st(1)
  746. faddp %st, %st(4)
  747. ..B1.54:
  748. fldt 64(%rsp)
  749. testb %dl, %dl
  750. fmulp %st, %st(4)
  751. fld %st(2)
  752. fmul %st(1), %st
  753. faddp %st, %st(4)
  754. fxch %st(3)
  755. faddp %st, %st(2)
  756. fmul %st, %st(2)
  757. fld %st(0)
  758. fadd %st(3), %st
  759. je ..B1.56
  760. ..B1.55:
  761. fstp %st(3)
  762. fstp %st(0)
  763. fldt .L_2il0floatpacket.2(%rip)
  764. lea _pi_00(%rip), %rax
  765. lea 16+_pi_00(%rip), %rdx
  766. fmul %st, %st(2)
  767. fmulp %st, %st(1)
  768. fldt (%rax)
  769. fld %st(0)
  770. fadd %st(3), %st
  771. fsub %st, %st(1)
  772. fxch %st(1)
  773. fsubrp %st, %st(3)
  774. fldt (%rdx)
  775. faddp %st, %st(2)
  776. fxch %st(2)
  777. faddp %st, %st(1)
  778. faddp %st, %st(1)
  779. fstpt (%rsp)
  780. jmp ..B1.57
  781. ..B1.56:
  782. fldt .L_2il0floatpacket.3(%rip)
  783. fxch %st(1)
  784. fsub %st, %st(2)
  785. fxch %st(2)
  786. fsubrp %st, %st(4)
  787. fxch %st(3)
  788. faddp %st, %st(2)
  789. faddp %st, %st(1)
  790. fmulp %st, %st(1)
  791. fstpt (%rsp)
  792. ..B1.57:
  793. testb %cl, %cl
  794. je ..B1.59
  795. ..B1.58:
  796. fldcw 82(%rsp)
  797. ..B1.59:
  798. fldt (%rsp)
  799. addq $88, %rsp
  800. .cfi_def_cfa_offset 8
  801. ret
  802. .cfi_def_cfa_offset 96
  803. ..B1.60:
  804. movl %eax, %esi
  805. andl $768, %esi
  806. cmpl $768, %esi
  807. je ..B1.64
  808. ..B1.61:
  809. orl $-64768, %eax
  810. movw %ax, 80(%rsp)
  811. ..B1.62:
  812. fldcw 80(%rsp)
  813. ..B1.63:
  814. movzwl 104(%rsp), %edi
  815. movb $1, %cl
  816. andl $32767, %edi
  817. ..B1.64:
  818. cmpl $32767, %edi
  819. jne ..B1.68
  820. ..B1.65:
  821. cmpl $-2147483648, 100(%rsp)
  822. jne ..B1.67
  823. ..B1.66:
  824. cmpl $0, 96(%rsp)
  825. je ..B1.74
  826. ..B1.67:
  827. fldt 96(%rsp)
  828. lea _ones(%rip), %rax
  829. fmull (%rax)
  830. fstpt 8(%rsp)
  831. jmp ..B1.75
  832. ..B1.68:
  833. cmpl $16383, %edi
  834. jne ..B1.74
  835. ..B1.69:
  836. cmpl $-2147483648, 100(%rsp)
  837. jne ..B1.74
  838. ..B1.70:
  839. cmpl $0, 96(%rsp)
  840. jne ..B1.74
  841. ..B1.71:
  842. testb %dl, %dl
  843. je ..B1.73
  844. ..B1.72:
  845. lea _pi_0l(%rip), %rax
  846. lea _small_value_80(%rip), %rdx
  847. fldt (%rax)
  848. fldt (%rdx)
  849. fsubrp %st, %st(1)
  850. fstpt 8(%rsp)
  851. jmp ..B1.75
  852. ..B1.73:
  853. lea _zeros(%rip), %rax
  854. fldl (%rax)
  855. fstpt 8(%rsp)
  856. jmp ..B1.75
  857. ..B1.74:
  858. lea _infs(%rip), %rax
  859. lea _zeros(%rip), %rdx
  860. movsd (%rax), %xmm0
  861. mulsd (%rdx), %xmm0
  862. movsd %xmm0, (%rsp)
  863. fldl (%rsp)
  864. fstpt 8(%rsp)
  865. ..B1.75:
  866. testb %cl, %cl
  867. je ..B1.77
  868. ..B1.76:
  869. fldcw 82(%rsp)
  870. ..B1.77:
  871. fldt 8(%rsp)
  872. addq $88, %rsp
  873. .cfi_def_cfa_offset 8
  874. ret
  875. .align 16,0x90
  876. .cfi_endproc
  877. .type acosl,@function
  878. .size acosl,.-acosl
  879. .data
  880. # -- End acosl
  881. .section .rodata, "a"
  882. .align 16
  883. .align 16
  884. .L_2il0floatpacket.0:
  885. .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xfe,0x3f,0x00,0x00,0x00,0x00,0x00,0x00
  886. .type .L_2il0floatpacket.0,@object
  887. .size .L_2il0floatpacket.0,16
  888. .align 16
  889. .L_2il0floatpacket.1:
  890. .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xfd,0x3f,0x00,0x00,0x00,0x00,0x00,0x00
  891. .type .L_2il0floatpacket.1,@object
  892. .size .L_2il0floatpacket.1,16
  893. .align 16
  894. .L_2il0floatpacket.2:
  895. .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0xc0,0x00,0x00,0x00,0x00,0x00,0x00
  896. .type .L_2il0floatpacket.2,@object
  897. .size .L_2il0floatpacket.2,16
  898. .align 16
  899. .L_2il0floatpacket.3:
  900. .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00
  901. .type .L_2il0floatpacket.3,@object
  902. .size .L_2il0floatpacket.3,16
  903. .align 4
  904. _TWO_32H:
  905. .long 0
  906. .long 1106771968
  907. .type _TWO_32H,@object
  908. .size _TWO_32H,8
  909. .align 4
  910. _TWO_52H:
  911. .long 0
  912. .long 1127743488
  913. .type _TWO_52H,@object
  914. .size _TWO_52H,8
  915. .align 4
  916. _ones:
  917. .long 0
  918. .long 1072693248
  919. .long 0
  920. .long 3220176896
  921. .type _ones,@object
  922. .size _ones,16
  923. .align 4
  924. _zeros:
  925. .long 0
  926. .long 0
  927. .long 0
  928. .long 2147483648
  929. .type _zeros,@object
  930. .size _zeros,16
  931. .align 4
  932. _infs:
  933. .long 0
  934. .long 2146435072
  935. .long 0
  936. .long 4293918720
  937. .type _infs,@object
  938. .size _infs,16
  939. .align 2
  940. _pi_02:
  941. .word 0
  942. .word 0
  943. .word 55970
  944. .word 51471
  945. .word 16383
  946. .word 0
  947. .word 0
  948. .word 0
  949. .word 35374
  950. .word 4889
  951. .word 2259
  952. .word 34211
  953. .word 16349
  954. .word 0
  955. .word 0
  956. .word 0
  957. .type _pi_02,@object
  958. .size _pi_02,32
  959. .align 2
  960. _P4:
  961. .word 43691
  962. .word 44938
  963. .word 43690
  964. .word 43690
  965. .word 16380
  966. .word 0
  967. .word 0
  968. .word 0
  969. .type _P4,@object
  970. .size _P4,16
  971. .align 2
  972. _P3:
  973. .word 36763
  974. .word 43690
  975. .word 43690
  976. .word 43690
  977. .word 16380
  978. .word 0
  979. .word 0
  980. .word 0
  981. .word 40704
  982. .word 58046
  983. .word 39460
  984. .word 39321
  985. .word 16379
  986. .word 0
  987. .word 0
  988. .word 0
  989. .type _P3,@object
  990. .size _P3,32
  991. .align 2
  992. _P2:
  993. .word 43688
  994. .word 43690
  995. .word 43690
  996. .word 43690
  997. .word 16380
  998. .word 0
  999. .word 0
  1000. .word 0
  1001. .word 20771
  1002. .word 39331
  1003. .word 39321
  1004. .word 39321
  1005. .word 16379
  1006. .word 0
  1007. .word 0
  1008. .word 0
  1009. .word 23807
  1010. .word 53798
  1011. .word 28073
  1012. .word 46811
  1013. .word 16378
  1014. .word 0
  1015. .word 0
  1016. .word 0
  1017. .word 35198
  1018. .word 7516
  1019. .word 54204
  1020. .word 63722
  1021. .word 16377
  1022. .word 0
  1023. .word 0
  1024. .word 0
  1025. .type _P2,@object
  1026. .size _P2,64
  1027. .align 2
  1028. _P1:
  1029. .word 43589
  1030. .word 43690
  1031. .word 43690
  1032. .word 43690
  1033. .word 16368
  1034. .word 0
  1035. .word 0
  1036. .word 0
  1037. .word 39364
  1038. .word 39321
  1039. .word 39321
  1040. .word 39321
  1041. .word 16379
  1042. .word 0
  1043. .word 0
  1044. .word 0
  1045. .word 17602
  1046. .word 56173
  1047. .word 28086
  1048. .word 46811
  1049. .word 16378
  1050. .word 0
  1051. .word 0
  1052. .word 0
  1053. .word 47501
  1054. .word 58414
  1055. .word 36408
  1056. .word 63715
  1057. .word 16377
  1058. .word 0
  1059. .word 0
  1060. .word 0
  1061. .word 27078
  1062. .word 6583
  1063. .word 53620
  1064. .word 46917
  1065. .word 16377
  1066. .word 0
  1067. .word 0
  1068. .word 0
  1069. .word 39781
  1070. .word 21053
  1071. .word 25224
  1072. .word 36391
  1073. .word 16377
  1074. .word 0
  1075. .word 0
  1076. .word 0
  1077. .word 46568
  1078. .word 6235
  1079. .word 50749
  1080. .word 58572
  1081. .word 16376
  1082. .word 0
  1083. .word 0
  1084. .word 0
  1085. .word 41318
  1086. .word 51558
  1087. .word 37628
  1088. .word 48452
  1089. .word 16376
  1090. .word 0
  1091. .word 0
  1092. .word 0
  1093. .word 55026
  1094. .word 7893
  1095. .word 43866
  1096. .word 40925
  1097. .word 16376
  1098. .word 0
  1099. .word 0
  1100. .word 0
  1101. .word 43387
  1102. .word 19951
  1103. .word 2911
  1104. .word 35445
  1105. .word 16376
  1106. .word 0
  1107. .word 0
  1108. .word 0
  1109. .word 32572
  1110. .word 59281
  1111. .word 11243
  1112. .word 56666
  1113. .word 16375
  1114. .word 0
  1115. .word 0
  1116. .word 0
  1117. .word 49800
  1118. .word 50337
  1119. .word 42707
  1120. .word 39184
  1121. .word 16376
  1122. .word 0
  1123. .word 0
  1124. .word 0
  1125. .word 0
  1126. .word 0
  1127. .word 0
  1128. .word 43680
  1129. .word 16380
  1130. .word 0
  1131. .word 0
  1132. .word 0
  1133. .type _P1,@object
  1134. .size _P1,208
  1135. .align 2
  1136. _P:
  1137. .word 42691
  1138. .word 43690
  1139. .word 43690
  1140. .word 43690
  1141. .word 16368
  1142. .word 0
  1143. .word 0
  1144. .word 0
  1145. .word 4317
  1146. .word 52400
  1147. .word 52428
  1148. .word 52428
  1149. .word 49134
  1150. .word 0
  1151. .word 0
  1152. .word 0
  1153. .word 26206
  1154. .word 56172
  1155. .word 28086
  1156. .word 46811
  1157. .word 16378
  1158. .word 0
  1159. .word 0
  1160. .word 0
  1161. .word 36130
  1162. .word 58514
  1163. .word 36408
  1164. .word 63715
  1165. .word 16377
  1166. .word 0
  1167. .word 0
  1168. .word 0
  1169. .word 21592
  1170. .word 8113
  1171. .word 53620
  1172. .word 46917
  1173. .word 16377
  1174. .word 0
  1175. .word 0
  1176. .word 0
  1177. .word 3093
  1178. .word 49950
  1179. .word 25215
  1180. .word 36391
  1181. .word 16377
  1182. .word 0
  1183. .word 0
  1184. .word 0
  1185. .word 21499
  1186. .word 24428
  1187. .word 51889
  1188. .word 58572
  1189. .word 16376
  1190. .word 0
  1191. .word 0
  1192. .word 0
  1193. .word 54828
  1194. .word 41264
  1195. .word 61120
  1196. .word 48451
  1197. .word 16376
  1198. .word 0
  1199. .word 0
  1200. .word 0
  1201. .word 10243
  1202. .word 1489
  1203. .word 39717
  1204. .word 40940
  1205. .word 16376
  1206. .word 0
  1207. .word 0
  1208. .word 0
  1209. .word 51433
  1210. .word 46039
  1211. .word 63564
  1212. .word 35220
  1213. .word 16376
  1214. .word 0
  1215. .word 0
  1216. .word 0
  1217. .word 60402
  1218. .word 39286
  1219. .word 25675
  1220. .word 60826
  1221. .word 16375
  1222. .word 0
  1223. .word 0
  1224. .word 0
  1225. .word 34219
  1226. .word 36833
  1227. .word 44839
  1228. .word 57547
  1229. .word 16375
  1230. .word 0
  1231. .word 0
  1232. .word 0
  1233. .word 13013
  1234. .word 26091
  1235. .word 19721
  1236. .word 60832
  1237. .word 16374
  1238. .word 0
  1239. .word 0
  1240. .word 0
  1241. .word 22353
  1242. .word 41544
  1243. .word 55443
  1244. .word 55735
  1245. .word 16376
  1246. .word 0
  1247. .word 0
  1248. .word 0
  1249. .word 14948
  1250. .word 7038
  1251. .word 38091
  1252. .word 38339
  1253. .word 49145
  1254. .word 0
  1255. .word 0
  1256. .word 0
  1257. .word 61727
  1258. .word 61480
  1259. .word 15906
  1260. .word 51927
  1261. .word 16378
  1262. .word 0
  1263. .word 0
  1264. .word 0
  1265. .word 13386
  1266. .word 23084
  1267. .word 64443
  1268. .word 55906
  1269. .word 49146
  1270. .word 0
  1271. .word 0
  1272. .word 0
  1273. .word 17499
  1274. .word 23573
  1275. .word 43947
  1276. .word 42761
  1277. .word 16378
  1278. .word 0
  1279. .word 0
  1280. .word 0
  1281. .word 0
  1282. .word 0
  1283. .word 0
  1284. .word 43680
  1285. .word 16380
  1286. .word 0
  1287. .word 0
  1288. .word 0
  1289. .word 0
  1290. .word 0
  1291. .word 0
  1292. .word 39328
  1293. .word 16379
  1294. .word 0
  1295. .word 0
  1296. .word 0
  1297. .type _P,@object
  1298. .size _P,320
  1299. .align 2
  1300. _pi_00:
  1301. .word 0
  1302. .word 0
  1303. .word 55970
  1304. .word 51471
  1305. .word 16384
  1306. .word 0
  1307. .word 0
  1308. .word 0
  1309. .word 35374
  1310. .word 4889
  1311. .word 2259
  1312. .word 34211
  1313. .word 16350
  1314. .word 0
  1315. .word 0
  1316. .word 0
  1317. .type _pi_00,@object
  1318. .size _pi_00,32
  1319. .align 2
  1320. _pi_0l:
  1321. .word 49717
  1322. .word 8552
  1323. .word 55970
  1324. .word 51471
  1325. .word 16384
  1326. .word 0
  1327. .word 0
  1328. .word 0
  1329. .word 49717
  1330. .word 8552
  1331. .word 55970
  1332. .word 51471
  1333. .word 49152
  1334. .word 0
  1335. .word 0
  1336. .word 0
  1337. .type _pi_0l,@object
  1338. .size _pi_0l,32
  1339. .align 2
  1340. _small_value_80:
  1341. .word 0
  1342. .word 0
  1343. .word 0
  1344. .word 32768
  1345. .word 6383
  1346. .word 0
  1347. .word 0
  1348. .word 0
  1349. .word 0
  1350. .word 0
  1351. .word 0
  1352. .word 32768
  1353. .word 39151
  1354. .word 0
  1355. .word 0
  1356. .word 0
  1357. .type _small_value_80,@object
  1358. .size _small_value_80,32
  1359. .data
  1360. .section .note.GNU-stack, ""
  1361. // -- Begin DWARF2 SEGMENT .eh_frame
  1362. .section .eh_frame,"a",@progbits
  1363. .eh_frame_seg:
  1364. .align 1
  1365. # End