clog10l.S 25 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000
  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 "clog10l.c"
  38. .text
  39. ..TXTST0:
  40. # -- Begin clog10l
  41. .text
  42. .align 16,0x90
  43. .globl clog10l
  44. clog10l:
  45. # parameter 1: 352 + %rsp
  46. ..B1.1:
  47. .cfi_startproc
  48. ..___tag_value_clog10l.1:
  49. ..L2:
  50. pushq %r12
  51. .cfi_def_cfa_offset 16
  52. .cfi_offset 12, -16
  53. pushq %r13
  54. .cfi_def_cfa_offset 24
  55. .cfi_offset 13, -24
  56. pushq %r15
  57. .cfi_def_cfa_offset 32
  58. .cfi_offset 15, -32
  59. pushq %rbx
  60. .cfi_def_cfa_offset 40
  61. .cfi_offset 3, -40
  62. subq $312, %rsp
  63. .cfi_def_cfa_offset 352
  64. xorb %r12b, %r12b
  65. fldt .L_2il0floatpacket.8(%rip)
  66. movq %fs:40, %rax
  67. xorq %rsp, %rax
  68. movq %rax, 304(%rsp)
  69. fstpt 272(%rsp)
  70. fldt 272(%rsp)
  71. fstpt 288(%rsp)
  72. ..B1.2:
  73. fnstcw 82(%rsp)
  74. ..B1.3:
  75. movzwl 82(%rsp), %edx
  76. movl %edx, %eax
  77. andl $768, %eax
  78. cmpl $768, %eax
  79. je ..B1.7
  80. ..B1.4:
  81. orl $-64768, %edx
  82. movw %dx, 80(%rsp)
  83. ..B1.5:
  84. fldcw 80(%rsp)
  85. ..B1.6:
  86. movb $1, %r12b
  87. ..B1.7:
  88. movzwl 360(%rsp), %edx
  89. andl $32767, %edx
  90. movzwl 376(%rsp), %eax
  91. andl $32767, %eax
  92. cmpl $32767, %edx
  93. jge ..B1.46
  94. ..B1.8:
  95. cmpl $32767, %eax
  96. jge ..B1.82
  97. ..B1.9:
  98. testl %edx, %edx
  99. jne ..B1.15
  100. ..B1.10:
  101. cmpl $0, 356(%rsp)
  102. jne ..B1.15
  103. ..B1.11:
  104. cmpl $0, 352(%rsp)
  105. jne ..B1.15
  106. ..B1.12:
  107. testl %eax, %eax
  108. jne ..B1.15
  109. ..B1.13:
  110. cmpl $0, 372(%rsp)
  111. jne ..B1.15
  112. ..B1.14:
  113. cmpl $0, 368(%rsp)
  114. je ..B1.45
  115. ..B1.15:
  116. fldt 352(%rsp)
  117. lea 368(%rsp), %rbx
  118. fld %st(0)
  119. fabs
  120. fstpt 16(%rsp)
  121. fldt 16(%rsp)
  122. fldt (%rbx)
  123. fld %st(0)
  124. fabs
  125. fstpt (%rsp)
  126. fldt (%rsp)
  127. movzwl 24(%rsp), %eax
  128. movzwl 8(%rsp), %edx
  129. andl $32767, %eax
  130. andl $32767, %edx
  131. cmpl %edx, %eax
  132. jl ..B1.20
  133. ..B1.16:
  134. jne ..B1.21
  135. ..B1.17:
  136. movl 20(%rsp), %edx
  137. movl 4(%rsp), %ecx
  138. cmpl %ecx, %edx
  139. jb ..B1.20
  140. ..B1.18:
  141. jne ..B1.21
  142. ..B1.19:
  143. movl 16(%rsp), %edx
  144. cmpl (%rsp), %edx
  145. jae ..B1.21
  146. ..B1.20:
  147. fstpt 16(%rsp)
  148. fldt 16(%rsp)
  149. movzwl 24(%rsp), %eax
  150. fxch %st(2)
  151. fstpt (%rsp)
  152. fldt (%rsp)
  153. andl $32767, %eax
  154. ..B1.21:
  155. cmpl $16382, %eax
  156. jg ..B1.26
  157. ..B1.22:
  158. jne ..B1.42
  159. ..B1.23:
  160. lea 16+_CONSTANTS(%rip), %rcx
  161. movl 20(%rsp), %edx
  162. cmpl 4(%rcx), %edx
  163. ja ..B1.26
  164. ..B1.24:
  165. jne ..B1.42
  166. ..B1.25:
  167. movl (%rcx), %edx
  168. cmpl 16(%rsp), %edx
  169. ja ..B1.42
  170. ..B1.26:
  171. cmpl $16383, %eax
  172. jl ..B1.31
  173. ..B1.27:
  174. jne ..B1.42
  175. ..B1.28:
  176. lea 32+_CONSTANTS(%rip), %rcx
  177. movl 20(%rsp), %edx
  178. cmpl 4(%rcx), %edx
  179. jb ..B1.31
  180. ..B1.29:
  181. jne ..B1.42
  182. ..B1.30:
  183. movl 16(%rsp), %edx
  184. cmpl (%rcx), %edx
  185. ja ..B1.42
  186. ..B1.31:
  187. movzwl 8(%rsp), %esi
  188. andl $32767, %esi
  189. cmpl $8256, %esi
  190. jg ..B1.36
  191. ..B1.32:
  192. jne ..B1.37
  193. ..B1.33:
  194. lea 48+_CONSTANTS(%rip), %rcx
  195. movl 4(%rsp), %edx
  196. cmpl 4(%rcx), %edx
  197. ja ..B1.36
  198. ..B1.34:
  199. jne ..B1.37
  200. ..B1.35:
  201. movl (%rsp), %edx
  202. cmpl (%rcx), %edx
  203. jbe ..B1.37
  204. ..B1.36:
  205. fld %st(2)
  206. lea _CONSTANTS(%rip), %rdx
  207. fmul %st(3), %st
  208. fld %st(1)
  209. fmul %st(2), %st
  210. faddp %st, %st(1)
  211. fldt .L_2il0floatpacket.10(%rip)
  212. fsubr %st, %st(1)
  213. fxch %st(1)
  214. fabs
  215. fldt (%rdx)
  216. fcomip %st(1), %st
  217. fstp %st(0)
  218. ja ..B1.38
  219. jmp ..B1.83
  220. ..B1.37:
  221. fldt .L_2il0floatpacket.10(%rip)
  222. fld %st(3)
  223. fmul %st(4), %st
  224. lea _CONSTANTS(%rip), %rdx
  225. fsub %st(1), %st
  226. fabs
  227. fldt (%rdx)
  228. fcomip %st(1), %st
  229. fstp %st(0)
  230. jbe ..B1.83
  231. ..B1.38:
  232. fstp %st(2)
  233. cmpl $16183, %esi
  234. jl ..B1.40
  235. ..B1.39:
  236. fldt .L_2il0floatpacket.9(%rip)
  237. fld %st(3)
  238. fmul %st(1), %st
  239. lea 16+_Q1(%rip), %rax
  240. fxch %st(5)
  241. fstpt (%rsp)
  242. fld %st(3)
  243. lea _Q1(%rip), %rdx
  244. fsubr %st(5), %st
  245. lea 96+_CONSTANTS(%rip), %r15
  246. fsubrp %st, %st(5)
  247. fld %st(4)
  248. lea 112+_CONSTANTS(%rip), %r13
  249. fmul %st(5), %st
  250. fld %st(2)
  251. fmulp %st, %st(2)
  252. fxch %st(4)
  253. fsub %st(5), %st
  254. fld %st(2)
  255. fsubr %st(2), %st
  256. fsubrp %st, %st(2)
  257. fld %st(1)
  258. fmul %st(2), %st
  259. fxch %st(2)
  260. fsubr %st, %st(3)
  261. fldt .L_2il0floatpacket.13(%rip)
  262. fmul %st, %st(1)
  263. fxch %st(1)
  264. fmul %st(4), %st
  265. fstpt 32(%rsp)
  266. fldt 32(%rsp)
  267. fxch %st(4)
  268. fmul %st(0), %st
  269. fstpt 48(%rsp)
  270. fld %st(5)
  271. fadd %st(3), %st
  272. fsub %st, %st(6)
  273. fxch %st(6)
  274. fsubrp %st, %st(3)
  275. fmulp %st, %st(6)
  276. fmul %st, %st(5)
  277. fxch %st(3)
  278. fsubrp %st, %st(4)
  279. fld %st(3)
  280. fadd %st(1), %st
  281. fld %st(0)
  282. fsub %st(5), %st
  283. fsubr %st, %st(2)
  284. fld %st(1)
  285. fsubp %st, %st(1)
  286. fsubrp %st, %st(5)
  287. fxch %st(4)
  288. faddp %st, %st(1)
  289. fld %st(3)
  290. fadd %st(5), %st
  291. fld %st(0)
  292. faddp %st, %st(3)
  293. fld %st(2)
  294. fxch %st(4)
  295. fmul %st(0), %st
  296. fstpt 16(%rsp)
  297. fldt 16(%rsp)
  298. faddp %st, %st(4)
  299. fxch %st(3)
  300. fstpt 64(%rsp)
  301. fldt 64(%rsp)
  302. fldt 48(%rsp)
  303. faddp %st, %st(1)
  304. fldt (%rax)
  305. fmul %st(1), %st
  306. fldt (%rdx)
  307. faddp %st, %st(1)
  308. fld %st(1)
  309. fmul %st(2), %st
  310. fmulp %st, %st(1)
  311. fld %st(4)
  312. fsub %st(6), %st
  313. fsubr %st, %st(7)
  314. fsubr %st(5), %st
  315. fsubrp %st, %st(6)
  316. fxch %st(5)
  317. faddp %st, %st(6)
  318. fxch %st(5)
  319. faddp %st, %st(1)
  320. fld %st(1)
  321. fsub %st(3), %st
  322. fldt 32(%rsp)
  323. fsub %st(1), %st
  324. fxch %st(1)
  325. fsubr %st(3), %st
  326. fsubrp %st, %st(4)
  327. faddp %st, %st(3)
  328. faddp %st, %st(2)
  329. fld %st(3)
  330. fldt 64(%rsp)
  331. fld %st(0)
  332. fsub %st(3), %st
  333. fldt 16(%rsp)
  334. fsub %st(1), %st
  335. fxch %st(1)
  336. fsubr %st(2), %st
  337. fsubrp %st, %st(4)
  338. faddp %st, %st(3)
  339. fxch %st(2)
  340. faddp %st, %st(3)
  341. fld %st(4)
  342. fsub %st(2), %st
  343. fldt 48(%rsp)
  344. fsub %st(1), %st
  345. fxch %st(1)
  346. fsubr %st(6), %st
  347. fsubrp %st, %st(3)
  348. faddp %st, %st(2)
  349. fxch %st(1)
  350. faddp %st, %st(2)
  351. fxch %st(1)
  352. faddp %st, %st(2)
  353. fldt .L_2il0floatpacket.9(%rip)
  354. fld %st(0)
  355. fmul %st(4), %st
  356. fsub %st, %st(2)
  357. fsubp %st, %st(2)
  358. fxch %st(1)
  359. fsubr %st, %st(3)
  360. fxch %st(2)
  361. faddp %st, %st(3)
  362. fldt (%r15)
  363. fld %st(0)
  364. fmul %st(3), %st
  365. fldt (%r13)
  366. fld %st(0)
  367. fmul %st(6), %st
  368. fxch %st(1)
  369. fmulp %st, %st(5)
  370. faddp %st, %st(4)
  371. fxch %st(1)
  372. fmulp %st, %st(4)
  373. fxch %st(3)
  374. faddp %st, %st(2)
  375. fxch %st(1)
  376. faddp %st, %st(2)
  377. fldt .L_2il0floatpacket.11(%rip)
  378. fmulp %st, %st(2)
  379. fxch %st(1)
  380. fstpt 272(%rsp)
  381. fldt (%rsp)
  382. jmp ..B1.49
  383. ..B1.40:
  384. cmpl $16383, %eax
  385. je ..B1.56
  386. ..B1.41:
  387. fstp %st(0)
  388. fldt .L_2il0floatpacket.9(%rip)
  389. fld %st(2)
  390. fmul %st(1), %st
  391. fld %st(3)
  392. lea 16+_Q1(%rip), %rax
  393. fsubr %st(1), %st
  394. lea _Q1(%rip), %rdx
  395. fsubrp %st, %st(1)
  396. fld %st(0)
  397. lea 96+_CONSTANTS(%rip), %r15
  398. lea 112+_CONSTANTS(%rip), %r13
  399. fmul %st(1), %st
  400. fsubp %st, %st(3)
  401. fsubr %st, %st(3)
  402. fldt .L_2il0floatpacket.13(%rip)
  403. fmulp %st, %st(1)
  404. fmul %st(3), %st
  405. fld %st(0)
  406. fld %st(3)
  407. fxch %st(5)
  408. fmul %st(0), %st
  409. fadd %st, %st(1)
  410. fxch %st(1)
  411. fadd %st, %st(5)
  412. fxch %st(4)
  413. fsubr %st(5), %st
  414. fxch %st(2)
  415. fsubr %st(4), %st
  416. fsubrp %st, %st(1)
  417. fxch %st(1)
  418. fsubrp %st, %st(3)
  419. faddp %st, %st(2)
  420. fld %st(2)
  421. fmul %st(3), %st
  422. fldt (%rax)
  423. fmul %st(4), %st
  424. fldt (%rdx)
  425. faddp %st, %st(1)
  426. fmulp %st, %st(1)
  427. faddp %st, %st(2)
  428. fld %st(0)
  429. fmul %st(3), %st
  430. fld %st(3)
  431. fsubr %st(1), %st
  432. fsubrp %st, %st(1)
  433. fsubr %st, %st(3)
  434. fxch %st(2)
  435. faddp %st, %st(3)
  436. fldt (%r15)
  437. fld %st(0)
  438. fmul %st(3), %st
  439. fldt (%r13)
  440. fld %st(0)
  441. fmul %st(6), %st
  442. fxch %st(1)
  443. fmulp %st, %st(5)
  444. faddp %st, %st(4)
  445. fxch %st(1)
  446. fmulp %st, %st(4)
  447. fxch %st(3)
  448. faddp %st, %st(2)
  449. fxch %st(1)
  450. faddp %st, %st(2)
  451. fldt .L_2il0floatpacket.11(%rip)
  452. fmulp %st, %st(2)
  453. fxch %st(1)
  454. fstpt 272(%rsp)
  455. fxch %st(1)
  456. jmp ..B1.49
  457. ..B1.42:
  458. fstp %st(0)
  459. fstp %st(1)
  460. addq $-32, %rsp
  461. .cfi_def_cfa_offset 384
  462. lea 64(%rsp), %rdi
  463. fxch %st(1)
  464. fstpt (%rsp)
  465. fstpt 16(%rsp)
  466. ..___tag_value_clog10l.13:
  467. call __libm_hypot2l_k80@PLT
  468. ..___tag_value_clog10l.14:
  469. ..B1.78:
  470. addq $32, %rsp
  471. .cfi_def_cfa_offset 352
  472. ..B1.43:
  473. fldt .L_2il0floatpacket.11(%rip)
  474. lea 160+_CONSTANTS(%rip), %rax
  475. lea 176+_CONSTANTS(%rip), %rdx
  476. fmulp %st, %st(1)
  477. fldt (%rax)
  478. fmul %st(1), %st
  479. fstpt 16(%rsp)
  480. fldt (%rdx)
  481. fmulp %st, %st(1)
  482. fstpt (%rsp)
  483. addq $-32, %rsp
  484. .cfi_def_cfa_offset 384
  485. fldt 64(%rsp)
  486. lea 128(%rsp), %rdi
  487. fstpt (%rsp)
  488. fldt -48(%rdi)
  489. fstpt 16(%rsp)
  490. ..___tag_value_clog10l.17:
  491. call __libm_logl_k80@PLT
  492. ..___tag_value_clog10l.18:
  493. ..B1.79:
  494. addq $32, %rsp
  495. .cfi_def_cfa_offset 352
  496. ..B1.44:
  497. fldt .L_2il0floatpacket.11(%rip)
  498. lea 96+_CONSTANTS(%rip), %r15
  499. fldt 96(%rsp)
  500. lea 112+_CONSTANTS(%rip), %r13
  501. fxch %st(2)
  502. fmulp %st, %st(1)
  503. fmul %st, %st(1)
  504. fldt 112(%rsp)
  505. fmulp %st, %st(1)
  506. fldt .L_2il0floatpacket.9(%rip)
  507. fld %st(0)
  508. fmul %st(3), %st
  509. fld %st(0)
  510. fsub %st(4), %st
  511. fsubrp %st, %st(1)
  512. fsubr %st, %st(3)
  513. fxch %st(2)
  514. faddp %st, %st(3)
  515. fldt (%r15)
  516. fld %st(0)
  517. fmul %st(3), %st
  518. fldt (%r13)
  519. fld %st(0)
  520. fmul %st(6), %st
  521. fxch %st(1)
  522. fmulp %st, %st(5)
  523. faddp %st, %st(4)
  524. fxch %st(1)
  525. fmulp %st, %st(4)
  526. fxch %st(3)
  527. faddp %st, %st(2)
  528. fldt 16(%rsp)
  529. fld %st(0)
  530. fadd %st(4), %st
  531. fsub %st, %st(1)
  532. fxch %st(1)
  533. fsubrp %st, %st(4)
  534. fxch %st(2)
  535. faddp %st, %st(3)
  536. fldt (%rsp)
  537. faddp %st, %st(3)
  538. fxch %st(2)
  539. faddp %st, %st(1)
  540. fstpt 272(%rsp)
  541. fldt 352(%rsp)
  542. jmp ..B1.49
  543. ..B1.45:
  544. fldt .L_2il0floatpacket.9(%rip)
  545. lea 368(%rsp), %rbx
  546. movsd .L_2il0floatpacket.12(%rip), %xmm1
  547. pxor %xmm0, %xmm0
  548. divsd %xmm0, %xmm1
  549. movsd %xmm1, (%rsp)
  550. lea 96+_CONSTANTS(%rip), %r15
  551. fldl (%rsp)
  552. lea 112+_CONSTANTS(%rip), %r13
  553. fstpt 272(%rsp)
  554. fldt -16(%rbx)
  555. jmp ..B1.49
  556. ..B1.46:
  557. je ..B1.70
  558. ..B1.47:
  559. cmpl $32767, %eax
  560. je ..B1.64
  561. ..B1.48:
  562. fldt .L_2il0floatpacket.9(%rip)
  563. lea 368(%rsp), %rbx
  564. lea 64+_CONSTANTS(%rip), %rax
  565. lea 96+_CONSTANTS(%rip), %r15
  566. lea 112+_CONSTANTS(%rip), %r13
  567. fldt (%rax)
  568. fmul %st(0), %st
  569. fstpt 272(%rsp)
  570. fldt -16(%rbx)
  571. ..B1.49:
  572. fldt .L_2il0floatpacket.8(%rip)
  573. lea 224(%rsp), %rdi
  574. xorl %eax, %eax
  575. lea 176(%rsp), %rsi
  576. movl %eax, -16(%rsi)
  577. lea 128(%rsp), %rdx
  578. fstpt 16(%rdx)
  579. fldt 16(%rdx)
  580. fxch %st(1)
  581. fstpt (%rdx)
  582. movl %eax, 80(%rdx)
  583. fstpt 64(%rdx)
  584. fstpt -112(%rdx)
  585. fldt (%rbx)
  586. fstpt 48(%rdx)
  587. ..___tag_value_clog10l.20:
  588. call __libm_atan2l_k80@PLT
  589. ..___tag_value_clog10l.21:
  590. ..B1.50:
  591. fldt 16(%rsp)
  592. fldt 224(%rsp)
  593. fmul %st, %st(1)
  594. fld %st(0)
  595. movl 256(%rsp), %edi
  596. fsubr %st(2), %st
  597. fsubrp %st, %st(2)
  598. fsub %st(1), %st
  599. fldt 240(%rsp)
  600. addq $-32, %rsp
  601. .cfi_def_cfa_offset 384
  602. faddp %st, %st(1)
  603. fldt (%r15)
  604. fld %st(0)
  605. fmul %st(3), %st
  606. fstpt (%rsp)
  607. fldt (%r13)
  608. fld %st(0)
  609. fmul %st(3), %st
  610. fxch %st(1)
  611. fmulp %st, %st(4)
  612. faddp %st, %st(3)
  613. fmulp %st, %st(1)
  614. faddp %st, %st(1)
  615. fstpt 16(%rsp)
  616. ..___tag_value_clog10l.23:
  617. call __libm_scalbl_k80@PLT
  618. ..___tag_value_clog10l.24:
  619. ..B1.80:
  620. addq $32, %rsp
  621. .cfi_def_cfa_offset 352
  622. ..B1.51:
  623. fstpt 288(%rsp)
  624. testb %r12b, %r12b
  625. je ..B1.53
  626. ..B1.52:
  627. fldcw 82(%rsp)
  628. ..B1.53:
  629. movq 304(%rsp), %rax
  630. xorq %rsp, %rax
  631. cmpq %fs:40, %rax
  632. jne ..B1.63
  633. ..B1.54:
  634. fldt 272(%rsp)
  635. fldt 288(%rsp)
  636. movq 304(%rsp), %rax
  637. xorq %rsp, %rax
  638. cmpq %fs:40, %rax
  639. jne ..B1.62
  640. ..B1.55:
  641. addq $312, %rsp
  642. .cfi_def_cfa_offset 40
  643. .cfi_restore 3
  644. popq %rbx
  645. .cfi_def_cfa_offset 32
  646. .cfi_restore 15
  647. popq %r15
  648. .cfi_def_cfa_offset 24
  649. .cfi_restore 13
  650. popq %r13
  651. .cfi_def_cfa_offset 16
  652. .cfi_restore 12
  653. popq %r12
  654. .cfi_def_cfa_offset 8
  655. fxch %st(1)
  656. ret
  657. .cfi_def_cfa_offset 352
  658. .cfi_offset 3, -40
  659. .cfi_offset 12, -16
  660. .cfi_offset 13, -24
  661. .cfi_offset 15, -32
  662. ..B1.56:
  663. cmpl $-2147483648, 20(%rsp)
  664. jne ..B1.41
  665. ..B1.57:
  666. cmpl $0, 16(%rsp)
  667. jne ..B1.41
  668. ..B1.58:
  669. fstp %st(2)
  670. fstp %st(0)
  671. cmpq $0, (%rsp)
  672. jne ..B1.60
  673. ..B1.59:
  674. fstp %st(0)
  675. fldt .L_2il0floatpacket.8(%rip)
  676. lea 96+_CONSTANTS(%rip), %r15
  677. fstpt 272(%rsp)
  678. lea 112+_CONSTANTS(%rip), %r13
  679. fldt .L_2il0floatpacket.9(%rip)
  680. fxch %st(1)
  681. jmp ..B1.49
  682. ..B1.60:
  683. fstp %st(1)
  684. fldt .L_2il0floatpacket.13(%rip)
  685. lea 144+_CONSTANTS(%rip), %r13
  686. fldt (%r13)
  687. lea 112+_CONSTANTS(%rip), %r13
  688. fmulp %st, %st(2)
  689. fxch %st(1)
  690. fstpt (%rsp)
  691. fldt .L_2il0floatpacket.9(%rip)
  692. movzwl 8(%rsp), %eax
  693. movl %eax, %r15d
  694. andl $-32768, %eax
  695. fld %st(0)
  696. orl $-49153, %eax
  697. fld %st(1)
  698. movw %ax, 8(%rsp)
  699. andl $32767, %r15d
  700. fldt (%rsp)
  701. addq $-32, %rsp
  702. .cfi_def_cfa_offset 384
  703. fmul %st, %st(2)
  704. fld %st(0)
  705. fsubr %st(3), %st
  706. fsubrp %st, %st(3)
  707. fld %st(2)
  708. lea -33167(%r15,%r15), %edi
  709. fmul %st(3), %st
  710. lea 96+_CONSTANTS(%rip), %r15
  711. fmul %st, %st(2)
  712. fld %st(2)
  713. fsub %st(1), %st
  714. fsubrp %st, %st(3)
  715. fsub %st(2), %st
  716. fxch %st(1)
  717. fsub %st(3), %st
  718. fmul %st, %st(3)
  719. fxch %st(5)
  720. fmulp %st, %st(3)
  721. fld %st(4)
  722. fmulp %st, %st(5)
  723. fxch %st(2)
  724. faddp %st, %st(4)
  725. fxch %st(3)
  726. faddp %st, %st(1)
  727. fldt (%r15)
  728. fld %st(0)
  729. fmul %st(4), %st
  730. fstpt (%rsp)
  731. fldt (%r13)
  732. fld %st(0)
  733. fmul %st(3), %st
  734. fxch %st(1)
  735. fmulp %st, %st(5)
  736. faddp %st, %st(4)
  737. fmulp %st, %st(1)
  738. faddp %st, %st(2)
  739. fxch %st(1)
  740. fstpt 16(%rsp)
  741. fstpt 48(%rsp)
  742. ..___tag_value_clog10l.41:
  743. call __libm_scalbl_k80@PLT
  744. ..___tag_value_clog10l.42:
  745. ..B1.81:
  746. fldt 48(%rsp)
  747. addq $32, %rsp
  748. .cfi_def_cfa_offset 352
  749. ..B1.61:
  750. fxch %st(1)
  751. fstpt 272(%rsp)
  752. fldt 352(%rsp)
  753. jmp ..B1.49
  754. ..B1.62:
  755. fstp %st(1)
  756. fstp %st(0)
  757. call __stack_chk_fail@PLT
  758. ..B1.63:
  759. call __stack_chk_fail@PLT
  760. ..B1.64:
  761. cmpl $-2147483648, 372(%rsp)
  762. jne ..B1.66
  763. ..B1.65:
  764. cmpl $0, 368(%rsp)
  765. je ..B1.48
  766. ..B1.66:
  767. cmpl $32767, %edx
  768. je ..B1.68
  769. ..B1.67:
  770. fldt .L_2il0floatpacket.9(%rip)
  771. lea 368(%rsp), %rbx
  772. fldt (%rbx)
  773. lea 96+_CONSTANTS(%rip), %r15
  774. fmul %st(0), %st
  775. lea 112+_CONSTANTS(%rip), %r13
  776. fstpt 272(%rsp)
  777. fldt -16(%rbx)
  778. jmp ..B1.49
  779. ..B1.68:
  780. movq $0x8000000000000000, %rax
  781. cmpq 352(%rsp), %rax
  782. jne ..B1.67
  783. ..B1.69:
  784. fldt 352(%rsp)
  785. lea 368(%rsp), %rbx
  786. fld %st(0)
  787. lea 96+_CONSTANTS(%rip), %r15
  788. fmul %st(1), %st
  789. lea 112+_CONSTANTS(%rip), %r13
  790. fstpt 272(%rsp)
  791. fldt .L_2il0floatpacket.9(%rip)
  792. fxch %st(1)
  793. jmp ..B1.49
  794. ..B1.70:
  795. cmpl $-2147483648, 356(%rsp)
  796. jne ..B1.72
  797. ..B1.71:
  798. cmpl $0, 352(%rsp)
  799. je ..B1.47
  800. ..B1.72:
  801. cmpl $32767, %eax
  802. je ..B1.74
  803. ..B1.73:
  804. fldt 352(%rsp)
  805. lea 368(%rsp), %rbx
  806. fldt (%rbx)
  807. lea 96+_CONSTANTS(%rip), %r15
  808. fmul %st(1), %st
  809. lea 112+_CONSTANTS(%rip), %r13
  810. fstpt 272(%rsp)
  811. fldt .L_2il0floatpacket.9(%rip)
  812. fxch %st(1)
  813. jmp ..B1.49
  814. ..B1.74:
  815. movq $0x8000000000000000, %rax
  816. cmpq 368(%rsp), %rax
  817. jne ..B1.73
  818. ..B1.75:
  819. fldt .L_2il0floatpacket.9(%rip)
  820. lea 368(%rsp), %rbx
  821. fldt (%rbx)
  822. lea 96+_CONSTANTS(%rip), %r15
  823. fmul %st(0), %st
  824. lea 112+_CONSTANTS(%rip), %r13
  825. fstpt 272(%rsp)
  826. fldt -16(%rbx)
  827. jmp ..B1.49
  828. ..B1.82:
  829. cmpl $32767, %edx
  830. je ..B1.70
  831. jmp ..B1.47
  832. ..B1.83:
  833. fstp %st(0)
  834. jmp ..B1.42
  835. .align 16,0x90
  836. .cfi_endproc
  837. .type clog10l,@function
  838. .size clog10l,.-clog10l
  839. .data
  840. # -- End clog10l
  841. .section .rodata, "a"
  842. .align 16
  843. .align 16
  844. .L_2il0floatpacket.8:
  845. .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
  846. .type .L_2il0floatpacket.8,@object
  847. .size .L_2il0floatpacket.8,16
  848. .align 16
  849. .L_2il0floatpacket.9:
  850. .byte 0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x80,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00
  851. .type .L_2il0floatpacket.9,@object
  852. .size .L_2il0floatpacket.9,16
  853. .align 16
  854. .L_2il0floatpacket.10:
  855. .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00
  856. .type .L_2il0floatpacket.10,@object
  857. .size .L_2il0floatpacket.10,16
  858. .align 16
  859. .L_2il0floatpacket.11:
  860. .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xfe,0x3f,0x00,0x00,0x00,0x00,0x00,0x00
  861. .type .L_2il0floatpacket.11,@object
  862. .size .L_2il0floatpacket.11,16
  863. .align 16
  864. .L_2il0floatpacket.13:
  865. .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00
  866. .type .L_2il0floatpacket.13,@object
  867. .size .L_2il0floatpacket.13,16
  868. .align 8
  869. .L_2il0floatpacket.12:
  870. .long 0x00000000,0xbff00000
  871. .type .L_2il0floatpacket.12,@object
  872. .size .L_2il0floatpacket.12,8
  873. .align 2
  874. _CONSTANTS:
  875. .word 0
  876. .word 0
  877. .word 0
  878. .word 32768
  879. .word 16358
  880. .word 0
  881. .word 0
  882. .word 0
  883. .word 37342
  884. .word 47265
  885. .word 62214
  886. .word 46340
  887. .word 16382
  888. .word 0
  889. .word 0
  890. .word 0
  891. .word 64512
  892. .word 65535
  893. .word 31
  894. .word 32768
  895. .word 16383
  896. .word 0
  897. .word 0
  898. .word 0
  899. .word 0
  900. .word 0
  901. .word 0
  902. .word 32768
  903. .word 8256
  904. .word 0
  905. .word 0
  906. .word 0
  907. .word 0
  908. .word 0
  909. .word 0
  910. .word 32768
  911. .word 32767
  912. .word 0
  913. .word 0
  914. .word 0
  915. .word 0
  916. .word 0
  917. .word 0
  918. .word 32768
  919. .word 1
  920. .word 0
  921. .word 0
  922. .word 0
  923. .word 0
  924. .word 0
  925. .word 55465
  926. .word 56923
  927. .word 16381
  928. .word 0
  929. .word 0
  930. .word 0
  931. .word 43711
  932. .word 54638
  933. .word 50772
  934. .word 56481
  935. .word 16347
  936. .word 0
  937. .word 0
  938. .word 0
  939. .word 0
  940. .word 0
  941. .word 0
  942. .word 49152
  943. .word 16446
  944. .word 0
  945. .word 0
  946. .word 0
  947. .word 0
  948. .word 0
  949. .word 0
  950. .word 32768
  951. .word 16583
  952. .word 0
  953. .word 0
  954. .word 0
  955. .word 0
  956. .word 0
  957. .word 39557
  958. .word 39456
  959. .word 16381
  960. .word 0
  961. .word 0
  962. .word 0
  963. .word 51839
  964. .word 3796
  965. .word 3310
  966. .word 34305
  967. .word 49112
  968. .word 0
  969. .word 0
  970. .word 0
  971. .type _CONSTANTS,@object
  972. .size _CONSTANTS,192
  973. .align 2
  974. _Q1:
  975. .word 3134
  976. .word 0
  977. .word 0
  978. .word 32768
  979. .word 49150
  980. .word 0
  981. .word 0
  982. .word 0
  983. .word 49331
  984. .word 43690
  985. .word 43690
  986. .word 43690
  987. .word 16381
  988. .word 0
  989. .word 0
  990. .word 0
  991. .type _Q1,@object
  992. .size _Q1,32
  993. .data
  994. .section .note.GNU-stack, ""
  995. // -- Begin DWARF2 SEGMENT .eh_frame
  996. .section .eh_frame,"a",@progbits
  997. .eh_frame_seg:
  998. .align 1
  999. # End