cacosh.S 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739
  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 "cacosh.c"
  38. .text
  39. ..TXTST0:
  40. # -- Begin cacoshf
  41. .text
  42. .align 16,0x90
  43. .globl cacoshf
  44. cacoshf:
  45. # parameter 1: %xmm0
  46. ..B1.1:
  47. .cfi_startproc
  48. ..___tag_value_cacoshf.1:
  49. ..L2:
  50. subq $24, %rsp
  51. .cfi_def_cfa_offset 32
  52. cvtps2pd %xmm0, %xmm1
  53. movaps %xmm1, %xmm0
  54. unpckhpd %xmm1, %xmm1
  55. ..___tag_value_cacoshf.4:
  56. call cacosh@PLT
  57. ..___tag_value_cacoshf.5:
  58. ..B1.10:
  59. unpcklpd %xmm1, %xmm0
  60. ..B1.2:
  61. cvtpd2ps %xmm0, %xmm0
  62. movsd %xmm0, 4(%rsp)
  63. movzwl 6(%rsp), %eax
  64. testl $32640, %eax
  65. jne ..B1.4
  66. ..B1.3:
  67. testl $8388607, 4(%rsp)
  68. jne ..B1.6
  69. ..B1.4:
  70. movzwl 10(%rsp), %eax
  71. testl $32640, %eax
  72. jne ..B1.7
  73. ..B1.5:
  74. testl $8388607, 8(%rsp)
  75. je ..B1.7
  76. ..B1.6:
  77. movss .L_2il0floatpacket.12(%rip), %xmm0
  78. mulss %xmm0, %xmm0
  79. movss %xmm0, (%rsp)
  80. movsd 4(%rsp), %xmm0
  81. ..B1.7:
  82. addq $24, %rsp
  83. .cfi_def_cfa_offset 8
  84. ret
  85. .align 16,0x90
  86. .cfi_endproc
  87. .type cacoshf,@function
  88. .size cacoshf,.-cacoshf
  89. .data
  90. # -- End cacoshf
  91. .text
  92. # -- Begin cacosh
  93. .text
  94. .align 16,0x90
  95. .globl cacosh
  96. cacosh:
  97. # parameter 1: %xmm0
  98. ..B2.1:
  99. .cfi_startproc
  100. ..___tag_value_cacosh.8:
  101. ..L9:
  102. pushq %r13
  103. .cfi_def_cfa_offset 16
  104. .cfi_offset 13, -16
  105. xorb %r13b, %r13b
  106. subq $160, %rsp
  107. .cfi_def_cfa_offset 176
  108. movsd %xmm0, 136(%rsp)
  109. movsd %xmm1, 144(%rsp)
  110. ..B2.2:
  111. fnstcw 154(%rsp)
  112. ..B2.3:
  113. movzwl 142(%rsp), %edx
  114. andl $32752, %edx
  115. shrl $4, %edx
  116. cmpl $2047, %edx
  117. jge ..B2.36
  118. ..B2.4:
  119. testl %edx, %edx
  120. jle ..B2.62
  121. ..B2.5:
  122. movzwl 150(%rsp), %eax
  123. andl $32752, %eax
  124. shrl $4, %eax
  125. cmpl $2047, %eax
  126. jge ..B2.37
  127. ..B2.6:
  128. testl %eax, %eax
  129. jle ..B2.60
  130. ..B2.7:
  131. movzwl 154(%rsp), %edx
  132. movl %edx, %eax
  133. andl $768, %eax
  134. cmpl $768, %eax
  135. je ..B2.11
  136. ..B2.8:
  137. orl $-64768, %edx
  138. movw %dx, 152(%rsp)
  139. ..B2.9:
  140. fldcw 152(%rsp)
  141. ..B2.10:
  142. movb $1, %r13b
  143. ..B2.11:
  144. fldt .L_2il0floatpacket.13(%rip)
  145. lea BcrossA(%rip), %rax
  146. movsd 136(%rsp), %xmm0
  147. fld %st(0)
  148. fldt .L_2il0floatpacket.14(%rip)
  149. movsd %xmm0, 128(%rsp)
  150. fldt (%rax)
  151. andps .L_2il0floatpacket.17(%rip), %xmm0
  152. movsd %xmm0, (%rsp)
  153. fldl (%rsp)
  154. movsd 144(%rsp), %xmm1
  155. fadd %st, %st(3)
  156. movsd %xmm1, 120(%rsp)
  157. andps .L_2il0floatpacket.17(%rip), %xmm1
  158. movsd %xmm1, (%rsp)
  159. fxch %st(3)
  160. fstpt 104(%rsp)
  161. fldt 104(%rsp)
  162. fxch %st(3)
  163. fsubr %st, %st(4)
  164. fxch %st(4)
  165. fstpt 88(%rsp)
  166. fldt 88(%rsp)
  167. fxch %st(3)
  168. fmul %st(0), %st
  169. fxch %st(3)
  170. fmul %st(0), %st
  171. fldl (%rsp)
  172. fld %st(0)
  173. fmul %st(1), %st
  174. fadd %st, %st(5)
  175. fxch %st(5)
  176. fsqrt
  177. fld %st(0)
  178. fxch %st(3)
  179. fadd %st(6), %st
  180. fsqrt
  181. fstpt 72(%rsp)
  182. fldt 72(%rsp)
  183. faddp %st, %st(3)
  184. fxch %st(4)
  185. fmulp %st, %st(2)
  186. fld %st(5)
  187. fdiv %st(2), %st
  188. fxch %st(3)
  189. fcomip %st(3), %st
  190. jbe ..B2.13
  191. ..B2.12:
  192. fstp %st(0)
  193. addq $-16, %rsp
  194. .cfi_def_cfa_offset 192
  195. fxch %st(1)
  196. fstpt (%rsp)
  197. fxch %st(3)
  198. fstpl 80(%rsp)
  199. fstpt 16(%rsp)
  200. fstpt 32(%rsp)
  201. fstpt 48(%rsp)
  202. call acosl@PLT
  203. ..B2.84:
  204. fldt 48(%rsp)
  205. fldt 32(%rsp)
  206. fldt 16(%rsp)
  207. fldl 80(%rsp)
  208. addq $16, %rsp
  209. .cfi_def_cfa_offset 176
  210. jmp ..B2.16
  211. ..B2.13:
  212. fstp %st(2)
  213. fldt .L_2il0floatpacket.13(%rip)
  214. fcomip %st(5), %st
  215. jb ..B2.15
  216. ..B2.14:
  217. fstp %st(1)
  218. fldt .L_2il0floatpacket.14(%rip)
  219. addq $-32, %rsp
  220. .cfi_def_cfa_offset 208
  221. fld %st(2)
  222. fld %st(2)
  223. fadd %st(6), %st
  224. fmulp %st, %st(2)
  225. fldt 136(%rsp)
  226. faddp %st, %st(1)
  227. fdivr %st(4), %st
  228. fldt 104(%rsp)
  229. fldt 120(%rsp)
  230. faddp %st, %st(1)
  231. faddp %st, %st(1)
  232. fmulp %st, %st(1)
  233. fsqrt
  234. fstpt (%rsp)
  235. fxch %st(3)
  236. fstpt 16(%rsp)
  237. fldt 16(%rsp)
  238. fstpl 96(%rsp)
  239. fstpt 32(%rsp)
  240. fstpt 48(%rsp)
  241. fstpt 64(%rsp)
  242. call atan2l@PLT
  243. jmp ..B2.86
  244. .cfi_def_cfa_offset 176
  245. ..B2.15:
  246. fxch %st(2)
  247. fstpt (%rsp)
  248. fldt (%rsp)
  249. addq $-32, %rsp
  250. .cfi_def_cfa_offset 208
  251. fld %st(2)
  252. fadd %st(5), %st
  253. fldt 136(%rsp)
  254. faddp %st, %st(2)
  255. fdiv %st, %st(1)
  256. fldt 104(%rsp)
  257. fldt 120(%rsp)
  258. fsubrp %st, %st(1)
  259. fdivrp %st, %st(1)
  260. faddp %st, %st(1)
  261. fldt .L_2il0floatpacket.14(%rip)
  262. fmulp %st, %st(1)
  263. fsqrt
  264. fmulp %st, %st(1)
  265. fstpt (%rsp)
  266. fxch %st(2)
  267. fstpt 16(%rsp)
  268. fldt 16(%rsp)
  269. fstpl 96(%rsp)
  270. fstpt 48(%rsp)
  271. fstpt 64(%rsp)
  272. fldt 32(%rsp)
  273. fstpt 32(%rsp)
  274. call atan2l@PLT
  275. ..B2.86:
  276. fldt 64(%rsp)
  277. fldt 48(%rsp)
  278. fldt 32(%rsp)
  279. fldl 96(%rsp)
  280. addq $32, %rsp
  281. .cfi_def_cfa_offset 176
  282. ..B2.16:
  283. lea AcrossA(%rip), %rax
  284. fldt (%rax)
  285. fcomip %st(4), %st
  286. jb ..B2.21
  287. ..B2.17:
  288. fldt 104(%rsp)
  289. faddp %st, %st(2)
  290. fldt .L_2il0floatpacket.13(%rip)
  291. fcomip %st(1), %st
  292. fstp %st(0)
  293. jbe ..B2.19
  294. ..B2.18:
  295. fldt 72(%rsp)
  296. fxch %st(1)
  297. fdivr %st(2), %st
  298. fldt 88(%rsp)
  299. faddp %st, %st(2)
  300. fxch %st(1)
  301. fdivrp %st, %st(2)
  302. faddp %st, %st(1)
  303. fldt .L_2il0floatpacket.14(%rip)
  304. fmulp %st, %st(1)
  305. jmp ..B2.20
  306. ..B2.19:
  307. fldt 88(%rsp)
  308. fxch %st(1)
  309. fdivrp %st, %st(2)
  310. fldt 72(%rsp)
  311. fsubp %st, %st(1)
  312. faddp %st, %st(1)
  313. fldt .L_2il0floatpacket.14(%rip)
  314. fmulp %st, %st(1)
  315. ..B2.20:
  316. fldt .L_2il0floatpacket.13(%rip)
  317. addq $-16, %rsp
  318. .cfi_def_cfa_offset 192
  319. faddp %st, %st(2)
  320. fmul %st, %st(1)
  321. fxch %st(1)
  322. fsqrt
  323. faddp %st, %st(1)
  324. fstpt (%rsp)
  325. fstpt 16(%rsp)
  326. call log1pl@PLT
  327. jmp ..B2.88
  328. .cfi_def_cfa_offset 176
  329. ..B2.21:
  330. fstp %st(1)
  331. fstp %st(1)
  332. fstp %st(0)
  333. fldt .L_2il0floatpacket.13(%rip)
  334. fld %st(1)
  335. fmul %st(2), %st
  336. addq $-16, %rsp
  337. .cfi_def_cfa_offset 192
  338. fsubp %st, %st(1)
  339. fsqrt
  340. faddp %st, %st(1)
  341. fstpt (%rsp)
  342. fstpt 16(%rsp)
  343. call logl@PLT
  344. ..B2.88:
  345. fldt 16(%rsp)
  346. addq $16, %rsp
  347. .cfi_def_cfa_offset 176
  348. ..B2.22:
  349. lea ZEROA(%rip), %rax
  350. movsd (%rax), %xmm0
  351. comisd 128(%rsp), %xmm0
  352. jbe ..B2.24
  353. ..B2.23:
  354. fldt .L_2il0floatpacket.15(%rip)
  355. lea PIBY2HIA(%rip), %rax
  356. lea PIBY2LOA(%rip), %rdx
  357. fldl (%rax)
  358. faddl (%rdx)
  359. fmulp %st, %st(1)
  360. fsubp %st, %st(1)
  361. ..B2.24:
  362. comisd 120(%rsp), %xmm0
  363. jbe ..B2.26
  364. ..B2.25:
  365. fldt .L_2il0floatpacket.16(%rip)
  366. fmulp %st, %st(1)
  367. ..B2.26:
  368. movb 151(%rsp), %al
  369. lea ones(%rip), %rdx
  370. andb $-128, %al
  371. shrb $7, %al
  372. fxch %st(1)
  373. fstpl (%rsp)
  374. movsd (%rsp), %xmm0
  375. fstpl (%rsp)
  376. movsd (%rsp), %xmm1
  377. andps .L_2il0floatpacket.17(%rip), %xmm1
  378. andps .L_2il0floatpacket.17(%rip), %xmm0
  379. movsd %xmm0, 16(%rsp)
  380. movzbl %al, %ecx
  381. movzwl 22(%rsp), %esi
  382. testl $32752, %esi
  383. mulsd (%rdx,%rcx,8), %xmm1
  384. movsd %xmm1, 24(%rsp)
  385. jne ..B2.29
  386. ..B2.27:
  387. testl $1048575, 20(%rsp)
  388. jne ..B2.32
  389. ..B2.28:
  390. cmpl $0, 16(%rsp)
  391. jne ..B2.32
  392. ..B2.29:
  393. movzwl 30(%rsp), %eax
  394. testl $32752, %eax
  395. jne ..B2.33
  396. ..B2.30:
  397. testl $1048575, 28(%rsp)
  398. jne ..B2.32
  399. ..B2.31:
  400. cmpl $0, 24(%rsp)
  401. je ..B2.33
  402. ..B2.32:
  403. lea _LDB_MIN_NORMAL(%rip), %rax
  404. fldt (%rax)
  405. fmul %st(0), %st
  406. fstpt 48(%rsp)
  407. ..B2.33:
  408. testb %r13b, %r13b
  409. je ..B2.35
  410. ..B2.34:
  411. fldcw 154(%rsp)
  412. ..B2.35:
  413. movsd 16(%rsp), %xmm0
  414. movsd 24(%rsp), %xmm1
  415. addq $160, %rsp
  416. .cfi_def_cfa_offset 16
  417. .cfi_restore 13
  418. popq %r13
  419. .cfi_def_cfa_offset 8
  420. ret
  421. .cfi_def_cfa_offset 176
  422. .cfi_offset 13, -16
  423. ..B2.36:
  424. movzwl 150(%rsp), %eax
  425. andl $32752, %eax
  426. shrl $4, %eax
  427. ..B2.37:
  428. testl %eax, %eax
  429. jne ..B2.47
  430. ..B2.38:
  431. testl $1048575, 148(%rsp)
  432. jne ..B2.47
  433. ..B2.39:
  434. cmpl $0, 144(%rsp)
  435. jne ..B2.47
  436. ..B2.40:
  437. cmpl $2047, %edx
  438. jl ..B2.43
  439. ..B2.41:
  440. testl $1048575, 140(%rsp)
  441. jne ..B2.47
  442. ..B2.42:
  443. cmpl $0, 136(%rsp)
  444. jne ..B2.47
  445. ..B2.43:
  446. cmpl $1023, %edx
  447. jl ..B2.45
  448. ..B2.44:
  449. movb 143(%rsp), %r13b
  450. andb $-128, %r13b
  451. shrb $7, %r13b
  452. movsd 136(%rsp), %xmm0
  453. movzbl %r13b, %eax
  454. lea ones(%rip), %r13
  455. movsd (%r13,%rax,8), %xmm1
  456. mulsd %xmm1, %xmm0
  457. movsd %xmm1, (%rsp)
  458. call acosh@PLT
  459. ..B2.90:
  460. movsd %xmm0, 16(%rsp)
  461. movsd (%rsp), %xmm0
  462. call acos@PLT
  463. ..B2.89:
  464. lea 24(%rsp), %rcx
  465. jmp ..B2.46
  466. ..B2.45:
  467. movsd 136(%rsp), %xmm0
  468. movq $0, 16(%rsp)
  469. call acos@PLT
  470. ..B2.91:
  471. lea ones(%rip), %r13
  472. lea 24(%rsp), %rcx
  473. ..B2.46:
  474. movb 151(%rsp), %al
  475. andb $-128, %al
  476. shrb $7, %al
  477. movzbl %al, %edx
  478. mulsd (%r13,%rdx,8), %xmm0
  479. movsd %xmm0, (%rcx)
  480. movsd 16(%rsp), %xmm0
  481. movhpd 24(%rsp), %xmm0
  482. jmp ..B2.59
  483. ..B2.47:
  484. testl %edx, %edx
  485. jne ..B2.54
  486. ..B2.48:
  487. testl $1048575, 140(%rsp)
  488. jne ..B2.55
  489. ..B2.49:
  490. cmpl $0, 136(%rsp)
  491. jne ..B2.55
  492. ..B2.50:
  493. cmpl $2047, %eax
  494. jl ..B2.53
  495. ..B2.51:
  496. testl $1048575, 148(%rsp)
  497. jne ..B2.55
  498. ..B2.52:
  499. cmpl $0, 144(%rsp)
  500. jne ..B2.55
  501. ..B2.53:
  502. movb 151(%rsp), %al
  503. lea ones(%rip), %rdx
  504. andb $-128, %al
  505. shrb $7, %al
  506. movsd 144(%rsp), %xmm1
  507. movsd %xmm1, (%rsp)
  508. movzbl %al, %ecx
  509. movsd (%rdx,%rcx,8), %xmm0
  510. mulsd %xmm1, %xmm0
  511. call asinh@PLT
  512. ..B2.93:
  513. movsd %xmm0, 16(%rsp)
  514. movsd 136(%rsp), %xmm1
  515. movsd (%rsp), %xmm0
  516. call atan2@PLT
  517. jmp ..B2.94
  518. ..B2.54:
  519. cmpl $2047, %edx
  520. je ..B2.72
  521. ..B2.55:
  522. cmpl $2047, %eax
  523. je ..B2.68
  524. ..B2.96:
  525. cmpl $2047, %edx
  526. ..B2.56:
  527. je ..B2.65
  528. ..B2.57:
  529. movsd 144(%rsp), %xmm0
  530. movaps %xmm0, %xmm1
  531. mulsd %xmm0, %xmm1
  532. movsd %xmm1, 16(%rsp)
  533. movsd 136(%rsp), %xmm1
  534. ..B2.58:
  535. call atan2@PLT
  536. ..B2.94:
  537. movsd %xmm0, 24(%rsp)
  538. movsd 16(%rsp), %xmm0
  539. movhpd 24(%rsp), %xmm0
  540. ..B2.59:
  541. movaps %xmm0, %xmm1
  542. unpckhpd %xmm0, %xmm1
  543. addq $160, %rsp
  544. .cfi_def_cfa_offset 16
  545. .cfi_restore 13
  546. popq %r13
  547. .cfi_def_cfa_offset 8
  548. ret
  549. .cfi_def_cfa_offset 176
  550. .cfi_offset 13, -16
  551. ..B2.60:
  552. testl $1048575, 148(%rsp)
  553. jne ..B2.7
  554. ..B2.61:
  555. cmpl $0, 144(%rsp)
  556. jne ..B2.7
  557. jmp ..B2.37
  558. ..B2.62:
  559. testl $1048575, 140(%rsp)
  560. jne ..B2.5
  561. ..B2.63:
  562. cmpl $0, 136(%rsp)
  563. jne ..B2.5
  564. jmp ..B2.36
  565. ..B2.65:
  566. testl $1048575, 140(%rsp)
  567. jne ..B2.57
  568. ..B2.66:
  569. cmpl $0, 136(%rsp)
  570. jne ..B2.57
  571. ..B2.67:
  572. movsd 136(%rsp), %xmm1
  573. movaps %xmm1, %xmm0
  574. mulsd %xmm1, %xmm0
  575. movsd %xmm0, 16(%rsp)
  576. movsd 144(%rsp), %xmm0
  577. jmp ..B2.58
  578. ..B2.68:
  579. testl $1048575, 148(%rsp)
  580. jne ..B2.70
  581. ..B2.69:
  582. cmpl $0, 144(%rsp)
  583. je ..B2.95
  584. ..B2.70:
  585. cmpl $2047, %edx
  586. jge ..B2.56
  587. ..B2.71:
  588. movsd 144(%rsp), %xmm0
  589. mulsd %xmm0, %xmm0
  590. unpcklpd %xmm0, %xmm0
  591. movsd %xmm0, 16(%rsp)
  592. movhpd %xmm0, 24(%rsp)
  593. jmp ..B2.59
  594. ..B2.72:
  595. testl $1048575, 140(%rsp)
  596. jne ..B2.74
  597. ..B2.73:
  598. cmpl $0, 136(%rsp)
  599. je ..B2.75
  600. ..B2.74:
  601. cmpl $2047, %eax
  602. je ..B2.79
  603. ..B2.75:
  604. testl $1048575, 140(%rsp)
  605. jne ..B2.77
  606. ..B2.76:
  607. cmpl $0, 136(%rsp)
  608. je ..B2.55
  609. ..B2.77:
  610. cmpl $2047, %eax
  611. jge ..B2.55
  612. ..B2.78:
  613. movsd 136(%rsp), %xmm0
  614. mulsd %xmm0, %xmm0
  615. unpcklpd %xmm0, %xmm0
  616. movsd %xmm0, 16(%rsp)
  617. movhpd %xmm0, 24(%rsp)
  618. jmp ..B2.59
  619. ..B2.79:
  620. testl $1048575, 148(%rsp)
  621. jne ..B2.81
  622. ..B2.80:
  623. cmpl $0, 144(%rsp)
  624. je ..B2.75
  625. ..B2.81:
  626. movsd 144(%rsp), %xmm1
  627. movsd 136(%rsp), %xmm0
  628. mulsd %xmm0, %xmm0
  629. mulsd %xmm1, %xmm1
  630. unpcklpd %xmm1, %xmm0
  631. movsd %xmm0, 16(%rsp)
  632. movhpd %xmm0, 24(%rsp)
  633. jmp ..B2.59
  634. ..B2.95:
  635. cmpl $2047, %edx
  636. je ..B2.65
  637. jmp ..B2.57
  638. .align 16,0x90
  639. .cfi_endproc
  640. .type cacosh,@function
  641. .size cacosh,.-cacosh
  642. .data
  643. # -- End cacosh
  644. .section .rodata, "a"
  645. .align 16
  646. .align 16
  647. .L_2il0floatpacket.13:
  648. .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00
  649. .type .L_2il0floatpacket.13,@object
  650. .size .L_2il0floatpacket.13,16
  651. .align 16
  652. .L_2il0floatpacket.14:
  653. .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xfe,0x3f,0x00,0x00,0x00,0x00,0x00,0x00
  654. .type .L_2il0floatpacket.14,@object
  655. .size .L_2il0floatpacket.14,16
  656. .align 16
  657. .L_2il0floatpacket.15:
  658. .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00
  659. .type .L_2il0floatpacket.15,@object
  660. .size .L_2il0floatpacket.15,16
  661. .align 16
  662. .L_2il0floatpacket.16:
  663. .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00
  664. .type .L_2il0floatpacket.16,@object
  665. .size .L_2il0floatpacket.16,16
  666. .align 16
  667. .L_2il0floatpacket.17:
  668. .long 0xffffffff,0x7fffffff,0x00000000,0x00000000
  669. .type .L_2il0floatpacket.17,@object
  670. .size .L_2il0floatpacket.17,16
  671. .align 16
  672. BcrossA:
  673. .long 3621516424
  674. .long 2756080513
  675. .long 16382
  676. .long 0
  677. .type BcrossA,@object
  678. .size BcrossA,16
  679. .align 16
  680. AcrossA:
  681. .long 0
  682. .long 3221225472
  683. .long 16383
  684. .long 0
  685. .type AcrossA,@object
  686. .size AcrossA,16
  687. .align 16
  688. ZEROA:
  689. .long 0
  690. .long 0
  691. .type ZEROA,@object
  692. .size ZEROA,8
  693. .space 8, 0x00 # pad
  694. .align 16
  695. PIBY2HIA:
  696. .long 1413754136
  697. .long 1073291771
  698. .type PIBY2HIA,@object
  699. .size PIBY2HIA,8
  700. .space 8, 0x00 # pad
  701. .align 16
  702. PIBY2LOA:
  703. .long 856972295
  704. .long 1016178214
  705. .type PIBY2LOA,@object
  706. .size PIBY2LOA,8
  707. .space 8, 0x00 # pad
  708. .align 16
  709. _LDB_MIN_NORMAL:
  710. .word 0
  711. .word 0
  712. .word 0
  713. .word 32768
  714. .word 1
  715. .word 0
  716. .word 0
  717. .word 0
  718. .type _LDB_MIN_NORMAL,@object
  719. .size _LDB_MIN_NORMAL,16
  720. .align 8
  721. ones:
  722. .long 0x00000000,0x3ff00000
  723. .long 0x00000000,0xbff00000
  724. .type ones,@object
  725. .size ones,16
  726. .align 4
  727. .L_2il0floatpacket.12:
  728. .long 0x00800000
  729. .type .L_2il0floatpacket.12,@object
  730. .size .L_2il0floatpacket.12,4
  731. .data
  732. .section .note.GNU-stack, ""
  733. // -- Begin DWARF2 SEGMENT .eh_frame
  734. .section .eh_frame,"a",@progbits
  735. .eh_frame_seg:
  736. .align 1
  737. # End