libm_tancot_huge.S 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800
  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 "libm_tancot_huge.c"
  38. .text
  39. ..TXTST0:
  40. # -- Begin __libm_tancot_huge
  41. .text
  42. .align 16,0x90
  43. .hidden __libm_tancot_huge
  44. .globl __libm_tancot_huge
  45. __libm_tancot_huge:
  46. # parameter 1: 8 + %ebp
  47. # parameter 2: 16 + %ebp
  48. # parameter 3: 20 + %ebp
  49. ..B1.1:
  50. ..L1:
  51. pushl %ebp
  52. movl %esp, %ebp
  53. andl $-64, %esp
  54. pushl %esi
  55. pushl %edi
  56. pushl %ebx
  57. subl $116, %esp
  58. movl 16(%ebp), %eax
  59. movl 20(%ebp), %edx
  60. movl %eax, 28(%esp)
  61. movl %edx, 32(%esp)
  62. movl %gs:20, %ecx
  63. xorl %esp, %ecx
  64. movl %ecx, 64(%esp)
  65. ..B1.2:
  66. fnstcw 14(%esp)
  67. ..B1.3:
  68. movl 12(%ebp), %edx
  69. movl %edx, %eax
  70. andl $2147483647, %eax
  71. shrl $31, %edx
  72. movl %edx, 44(%esp)
  73. cmpl $1104150528, %eax
  74. call ..L2
  75. ..L2:
  76. popl %ebx
  77. lea _GLOBAL_OFFSET_TABLE_+[. - ..L2](%ebx), %ebx
  78. jae ..B1.14
  79. ..B1.4:
  80. fldl 8(%ebp)
  81. fabs
  82. movzwl 14(%esp), %ecx
  83. movl %ecx, %edx
  84. andl $768, %edx
  85. fstpt 16(%esp)
  86. fldt 16(%esp)
  87. cmpl $768, %edx
  88. fstl 8(%ebp)
  89. fldl _Pi4Inv@GOTOFF(%ebx)
  90. fmulp %st, %st(1)
  91. fstpl (%esp)
  92. je ..B1.46
  93. ..B1.5:
  94. orl $-64768, %ecx
  95. movw %cx, 12(%esp)
  96. ..B1.6:
  97. fldcw 12(%esp)
  98. ..B1.7:
  99. fldl 8(%ebp)
  100. movl $1, %esi
  101. fstpt 16(%esp)
  102. ..B1.8:
  103. movl (%esp), %edx
  104. movl 4(%esp), %ecx
  105. movl %ecx, %edi
  106. movl %edx, 8(%esp)
  107. movl %ecx, %edx
  108. andl $1048575, %edx
  109. shrl $20, %edi
  110. orl $1048576, %edx
  111. cmpl $1094713344, %ecx
  112. jae ..B1.10
  113. ..B1.9:
  114. movl %edi, %ecx
  115. negl %ecx
  116. addl $19, %ecx
  117. shrl %cl, %edx
  118. jmp ..B1.11
  119. ..B1.10:
  120. lea 13(%edi), %ecx
  121. negl %edi
  122. addl $19, %edi
  123. shll %cl, %edx
  124. movl %edi, %ecx
  125. movl 8(%esp), %edi
  126. shrl %cl, %edi
  127. orl %edi, %edx
  128. ..B1.11:
  129. lea 1(%edx), %ecx
  130. andl $-2, %ecx
  131. movl %ecx, (%esp)
  132. cmpl $1094713344, %eax
  133. fildl (%esp)
  134. jae ..B1.13
  135. ..B1.12:
  136. fldl _Pi4x3@GOTOFF(%ebx)
  137. fmul %st(1), %st
  138. fldl 8+_Pi4x3@GOTOFF(%ebx)
  139. fmul %st(2), %st
  140. fxch %st(2)
  141. fmull 16+_Pi4x3@GOTOFF(%ebx)
  142. fldt 16(%esp)
  143. faddp %st, %st(2)
  144. fxch %st(2)
  145. faddp %st, %st(1)
  146. faddp %st, %st(1)
  147. fstpt 16(%esp)
  148. jmp ..B1.20
  149. ..B1.13:
  150. fldl _Pi4x4@GOTOFF(%ebx)
  151. fmul %st(1), %st
  152. fldl 8+_Pi4x4@GOTOFF(%ebx)
  153. fmul %st(2), %st
  154. fldl 16+_Pi4x4@GOTOFF(%ebx)
  155. fmul %st(3), %st
  156. fxch %st(3)
  157. fmull 24+_Pi4x4@GOTOFF(%ebx)
  158. fldt 16(%esp)
  159. faddp %st, %st(3)
  160. fxch %st(1)
  161. faddp %st, %st(2)
  162. fxch %st(2)
  163. faddp %st, %st(1)
  164. faddp %st, %st(1)
  165. fstpt 16(%esp)
  166. jmp ..B1.20
  167. ..B1.14:
  168. movzwl 14(%esp), %edx
  169. movl %edx, %eax
  170. andl $768, %eax
  171. cmpl $768, %eax
  172. je ..B1.51
  173. ..B1.15:
  174. orl $-64768, %edx
  175. movw %dx, 12(%esp)
  176. ..B1.16:
  177. fldcw 12(%esp)
  178. ..B1.17:
  179. movl $1, %esi
  180. ..B1.18:
  181. fldl 8(%ebp)
  182. addl $-32, %esp
  183. fabs
  184. lea 80(%esp), %eax
  185. fstpt (%esp)
  186. movl $0, 12(%esp)
  187. movl %eax, 16(%esp)
  188. call __libm_reduce_pi04l
  189. ..B1.54:
  190. movl %eax, %edx
  191. addl $32, %esp
  192. ..B1.19:
  193. fldl 48(%esp)
  194. faddl 56(%esp)
  195. fstpt 16(%esp)
  196. ..B1.20:
  197. movl 32(%esp), %eax
  198. andl $3, %eax
  199. cmpl $3, %eax
  200. jne ..B1.28
  201. ..B1.21:
  202. fldl _ones@GOTOFF(%ebx)
  203. incl %edx
  204. fldt 16(%esp)
  205. testb $2, %dl
  206. fld %st(0)
  207. fmul %st(1), %st
  208. fld %st(0)
  209. fmul %st(1), %st
  210. fxch %st(2)
  211. fdivr %st, %st(3)
  212. fxch %st(1)
  213. fstpt (%esp)
  214. fldt (%esp)
  215. fldt 36+_TP@GOTOFF(%ebx)
  216. fmul %st(1), %st
  217. fldt 24+_TP@GOTOFF(%ebx)
  218. faddp %st, %st(1)
  219. fmul %st(1), %st
  220. fldt 12+_TP@GOTOFF(%ebx)
  221. faddp %st, %st(1)
  222. fmul %st(1), %st
  223. fldt _TP@GOTOFF(%ebx)
  224. faddp %st, %st(1)
  225. fldt 36+_TQ@GOTOFF(%ebx)
  226. fmul %st(2), %st
  227. fldt 24+_TQ@GOTOFF(%ebx)
  228. faddp %st, %st(1)
  229. fmul %st(2), %st
  230. fldt 12+_TQ@GOTOFF(%ebx)
  231. faddp %st, %st(1)
  232. fmul %st(2), %st
  233. fldt _TQ@GOTOFF(%ebx)
  234. faddp %st, %st(1)
  235. fstpt 32(%esp)
  236. fldt 132+_GP@GOTOFF(%ebx)
  237. fmul %st(4), %st
  238. fldt 120+_GP@GOTOFF(%ebx)
  239. fmul %st(5), %st
  240. fldt 108+_GP@GOTOFF(%ebx)
  241. faddp %st, %st(2)
  242. fxch %st(1)
  243. fmul %st(5), %st
  244. fldt 96+_GP@GOTOFF(%ebx)
  245. faddp %st, %st(2)
  246. fxch %st(1)
  247. fmul %st(5), %st
  248. fldt 84+_GP@GOTOFF(%ebx)
  249. faddp %st, %st(2)
  250. fxch %st(1)
  251. fmul %st(5), %st
  252. fldt 72+_GP@GOTOFF(%ebx)
  253. faddp %st, %st(2)
  254. fxch %st(1)
  255. fmul %st(5), %st
  256. fldt 60+_GP@GOTOFF(%ebx)
  257. faddp %st, %st(2)
  258. fxch %st(1)
  259. fmul %st(5), %st
  260. fldt 48+_GP@GOTOFF(%ebx)
  261. faddp %st, %st(2)
  262. fxch %st(1)
  263. fmul %st(5), %st
  264. fldt 36+_GP@GOTOFF(%ebx)
  265. faddp %st, %st(2)
  266. fxch %st(1)
  267. fmul %st(5), %st
  268. fldt 24+_GP@GOTOFF(%ebx)
  269. faddp %st, %st(2)
  270. fxch %st(1)
  271. fmulp %st, %st(5)
  272. fldt 12+_GP@GOTOFF(%ebx)
  273. faddp %st, %st(1)
  274. fmulp %st, %st(2)
  275. fxch %st(1)
  276. fmul %st(2), %st
  277. fldt _GP@GOTOFF(%ebx)
  278. faddp %st, %st(4)
  279. fxch %st(2)
  280. fmulp %st, %st(3)
  281. fxch %st(2)
  282. faddp %st, %st(1)
  283. fldt 32(%esp)
  284. je ..B1.23
  285. ..B1.22:
  286. fldt (%esp)
  287. fxch %st(1)
  288. fdivrp %st, %st(3)
  289. fmulp %st, %st(2)
  290. fldt 16(%esp)
  291. movl 44(%esp), %eax
  292. xorl $1, %eax
  293. fmul %st, %st(2)
  294. fldl _ones@GOTOFF(%ebx,%eax,8)
  295. fmul %st, %st(2)
  296. fmul %st, %st(4)
  297. fmul %st, %st(3)
  298. fmulp %st, %st(1)
  299. faddp %st, %st(2)
  300. fxch %st(1)
  301. fstpt (%esp)
  302. faddp %st, %st(1)
  303. fstpt 32(%esp)
  304. jmp ..B1.24
  305. ..B1.23:
  306. fdivrp %st, %st(2)
  307. fldt (%esp)
  308. fmulp %st, %st(2)
  309. fldt 16(%esp)
  310. fmul %st, %st(2)
  311. movl 44(%esp), %eax
  312. fldl _ones@GOTOFF(%ebx,%eax,8)
  313. fmul %st, %st(3)
  314. fmul %st, %st(2)
  315. fmul %st, %st(1)
  316. fxch %st(1)
  317. faddp %st, %st(3)
  318. fxch %st(2)
  319. fstpt 32(%esp)
  320. fxch %st(2)
  321. fmulp %st, %st(1)
  322. faddp %st, %st(1)
  323. fstpt (%esp)
  324. ..B1.24:
  325. testl %esi, %esi
  326. je ..B1.26
  327. ..B1.25:
  328. fldcw 14(%esp)
  329. ..B1.26:
  330. fldt 32(%esp)
  331. fldt (%esp)
  332. movl 28(%esp), %eax
  333. fstpl 8(%eax)
  334. fstpl (%eax)
  335. movl 64(%esp), %edx
  336. xorl %esp, %edx
  337. cmpl %gs:20, %edx
  338. jne ..B1.47
  339. ..B1.27:
  340. addl $116, %esp
  341. popl %ebx
  342. popl %edi
  343. popl %esi
  344. movl %ebp, %esp
  345. popl %ebp
  346. ret
  347. ..B1.28:
  348. testb $2, 32(%esp)
  349. je ..B1.36
  350. ..B1.29:
  351. fldt 16(%esp)
  352. incl %edx
  353. testb $2, %dl
  354. fmul %st(0), %st
  355. je ..B1.31
  356. ..B1.30:
  357. fldl _ones@GOTOFF(%ebx)
  358. fld %st(1)
  359. fmul %st(2), %st
  360. fldt 16(%esp)
  361. fdivr %st, %st(2)
  362. fldt 132+_GP@GOTOFF(%ebx)
  363. fmul %st(2), %st
  364. fldt 120+_GP@GOTOFF(%ebx)
  365. fmul %st(3), %st
  366. fldt 108+_GP@GOTOFF(%ebx)
  367. movl 44(%esp), %eax
  368. faddp %st, %st(2)
  369. fxch %st(1)
  370. fmul %st(3), %st
  371. xorl $1, %eax
  372. fldt 96+_GP@GOTOFF(%ebx)
  373. faddp %st, %st(2)
  374. fxch %st(1)
  375. fmul %st(3), %st
  376. fldt 84+_GP@GOTOFF(%ebx)
  377. faddp %st, %st(2)
  378. fxch %st(1)
  379. fmul %st(3), %st
  380. fldt 72+_GP@GOTOFF(%ebx)
  381. faddp %st, %st(2)
  382. fxch %st(1)
  383. fmul %st(3), %st
  384. fldt 60+_GP@GOTOFF(%ebx)
  385. faddp %st, %st(2)
  386. fxch %st(1)
  387. fmul %st(3), %st
  388. fldt 48+_GP@GOTOFF(%ebx)
  389. faddp %st, %st(2)
  390. fxch %st(1)
  391. fmul %st(3), %st
  392. fldt 36+_GP@GOTOFF(%ebx)
  393. faddp %st, %st(2)
  394. fxch %st(1)
  395. fmul %st(3), %st
  396. fldt 24+_GP@GOTOFF(%ebx)
  397. faddp %st, %st(2)
  398. fxch %st(1)
  399. fmulp %st, %st(3)
  400. fldt 12+_GP@GOTOFF(%ebx)
  401. faddp %st, %st(1)
  402. fmulp %st, %st(4)
  403. fldt _GP@GOTOFF(%ebx)
  404. faddp %st, %st(2)
  405. fmul %st, %st(1)
  406. fmulp %st, %st(3)
  407. faddp %st, %st(2)
  408. fldl _ones@GOTOFF(%ebx,%eax,8)
  409. fmul %st, %st(2)
  410. fmulp %st, %st(1)
  411. faddp %st, %st(1)
  412. fstpt 16(%esp)
  413. jmp ..B1.32
  414. ..B1.31:
  415. fldt 36+_TP@GOTOFF(%ebx)
  416. fmul %st(1), %st
  417. fldt 24+_TP@GOTOFF(%ebx)
  418. movl 44(%esp), %eax
  419. faddp %st, %st(1)
  420. fmul %st(1), %st
  421. fldt 36+_TQ@GOTOFF(%ebx)
  422. fmul %st(2), %st
  423. fldt 24+_TQ@GOTOFF(%ebx)
  424. faddp %st, %st(1)
  425. fmul %st(2), %st
  426. fldt 12+_TQ@GOTOFF(%ebx)
  427. faddp %st, %st(1)
  428. fmul %st(2), %st
  429. fldt _TQ@GOTOFF(%ebx)
  430. faddp %st, %st(1)
  431. fldt 12+_TP@GOTOFF(%ebx)
  432. faddp %st, %st(2)
  433. fxch %st(1)
  434. fmul %st(2), %st
  435. fldt _TP@GOTOFF(%ebx)
  436. faddp %st, %st(1)
  437. fdivp %st, %st(1)
  438. fmulp %st, %st(1)
  439. fldl _ones@GOTOFF(%ebx,%eax,8)
  440. fldt 16(%esp)
  441. fmul %st, %st(2)
  442. fxch %st(1)
  443. fmul %st, %st(2)
  444. fmulp %st, %st(1)
  445. faddp %st, %st(1)
  446. fstpt 16(%esp)
  447. ..B1.32:
  448. testl %esi, %esi
  449. je ..B1.34
  450. ..B1.33:
  451. fldcw 14(%esp)
  452. ..B1.34:
  453. fldt 16(%esp)
  454. movl 28(%esp), %eax
  455. fstpl (%eax)
  456. movl 64(%esp), %edx
  457. xorl %esp, %edx
  458. cmpl %gs:20, %edx
  459. jne ..B1.47
  460. ..B1.35:
  461. addl $116, %esp
  462. popl %ebx
  463. popl %edi
  464. popl %esi
  465. movl %ebp, %esp
  466. popl %ebp
  467. ret
  468. ..B1.36:
  469. testb $1, 32(%esp)
  470. je ..B1.44
  471. ..B1.37:
  472. fldt 16(%esp)
  473. incl %edx
  474. testb $2, %dl
  475. fmul %st(0), %st
  476. fstpt (%esp)
  477. je ..B1.39
  478. ..B1.38:
  479. fldt 36+_TP@GOTOFF(%ebx)
  480. fldt 24+_TP@GOTOFF(%ebx)
  481. fldt 12+_TP@GOTOFF(%ebx)
  482. fldt _TP@GOTOFF(%ebx)
  483. fldt 36+_TQ@GOTOFF(%ebx)
  484. fldt 24+_TQ@GOTOFF(%ebx)
  485. fldt 12+_TQ@GOTOFF(%ebx)
  486. fldt (%esp)
  487. fmul %st, %st(7)
  488. movl 44(%esp), %eax
  489. fxch %st(6)
  490. faddp %st, %st(7)
  491. fxch %st(5)
  492. fmul %st, %st(6)
  493. xorl $1, %eax
  494. fxch %st(4)
  495. faddp %st, %st(6)
  496. fxch %st(3)
  497. fmul %st, %st(5)
  498. fxch %st(2)
  499. faddp %st, %st(5)
  500. fmul %st(1), %st
  501. faddp %st, %st(2)
  502. fmul %st, %st(1)
  503. fxch %st(2)
  504. faddp %st, %st(1)
  505. fmul %st(1), %st
  506. fldt _TQ@GOTOFF(%ebx)
  507. faddp %st, %st(1)
  508. fdivrp %st, %st(2)
  509. fmulp %st, %st(1)
  510. fldl _ones@GOTOFF(%ebx,%eax,8)
  511. fldt 16(%esp)
  512. fmul %st, %st(2)
  513. fxch %st(1)
  514. fmul %st, %st(2)
  515. fmulp %st, %st(1)
  516. faddp %st, %st(1)
  517. fstpt (%esp)
  518. jmp ..B1.40
  519. ..B1.39:
  520. fldl _ones@GOTOFF(%ebx)
  521. fldt 16(%esp)
  522. fdivr %st, %st(1)
  523. fldt (%esp)
  524. fld %st(0)
  525. fmul %st(1), %st
  526. fldt 132+_GP@GOTOFF(%ebx)
  527. fmul %st(1), %st
  528. fldt 120+_GP@GOTOFF(%ebx)
  529. fmul %st(2), %st
  530. fldt 108+_GP@GOTOFF(%ebx)
  531. movl 44(%esp), %eax
  532. faddp %st, %st(2)
  533. fxch %st(1)
  534. fmul %st(2), %st
  535. fldt 96+_GP@GOTOFF(%ebx)
  536. faddp %st, %st(2)
  537. fxch %st(1)
  538. fmul %st(2), %st
  539. fldt 84+_GP@GOTOFF(%ebx)
  540. faddp %st, %st(2)
  541. fxch %st(1)
  542. fmul %st(2), %st
  543. fldt 72+_GP@GOTOFF(%ebx)
  544. faddp %st, %st(2)
  545. fxch %st(1)
  546. fmul %st(2), %st
  547. fldt 60+_GP@GOTOFF(%ebx)
  548. faddp %st, %st(2)
  549. fxch %st(1)
  550. fmul %st(2), %st
  551. fldt 48+_GP@GOTOFF(%ebx)
  552. faddp %st, %st(2)
  553. fxch %st(1)
  554. fmul %st(2), %st
  555. fldt 36+_GP@GOTOFF(%ebx)
  556. faddp %st, %st(2)
  557. fxch %st(1)
  558. fmul %st(2), %st
  559. fldt 24+_GP@GOTOFF(%ebx)
  560. faddp %st, %st(2)
  561. fxch %st(1)
  562. fmulp %st, %st(2)
  563. fldt 12+_GP@GOTOFF(%ebx)
  564. faddp %st, %st(1)
  565. fmulp %st, %st(2)
  566. fldt _GP@GOTOFF(%ebx)
  567. faddp %st, %st(1)
  568. fmul %st(2), %st
  569. fxch %st(1)
  570. fmulp %st, %st(2)
  571. faddp %st, %st(1)
  572. fldl _ones@GOTOFF(%ebx,%eax,8)
  573. fmul %st, %st(1)
  574. fmulp %st, %st(2)
  575. faddp %st, %st(1)
  576. fstpt (%esp)
  577. ..B1.40:
  578. testl %esi, %esi
  579. je ..B1.42
  580. ..B1.41:
  581. fldcw 14(%esp)
  582. ..B1.42:
  583. fldt (%esp)
  584. movl 28(%esp), %eax
  585. fstpl 8(%eax)
  586. movl 64(%esp), %edx
  587. xorl %esp, %edx
  588. cmpl %gs:20, %edx
  589. jne ..B1.47
  590. ..B1.43:
  591. addl $116, %esp
  592. popl %ebx
  593. popl %edi
  594. popl %esi
  595. movl %ebp, %esp
  596. popl %ebp
  597. ret
  598. ..B1.44:
  599. movl 64(%esp), %eax
  600. xorl %esp, %eax
  601. cmpl %gs:20, %eax
  602. jne ..B1.47
  603. ..B1.45:
  604. addl $116, %esp
  605. popl %ebx
  606. popl %edi
  607. popl %esi
  608. movl %ebp, %esp
  609. popl %ebp
  610. ret
  611. ..B1.46:
  612. xorl %esi, %esi
  613. jmp ..B1.8
  614. ..B1.47:
  615. call __stack_chk_fail@PLT
  616. ..B1.51:
  617. xorl %esi, %esi
  618. jmp ..B1.18
  619. .align 16,0x90
  620. .type __libm_tancot_huge,@function
  621. .size __libm_tancot_huge,.-__libm_tancot_huge
  622. .data
  623. # -- End __libm_tancot_huge
  624. .section .rodata, "a"
  625. .align 16
  626. .align 16
  627. _Pi4Inv:
  628. .long 1841940611
  629. .long 1072979760
  630. .type _Pi4Inv,@object
  631. .size _Pi4Inv,8
  632. .space 8, 0x00 # pad
  633. .align 16
  634. _Pi4x3:
  635. .long 1413754880
  636. .long 3219726843
  637. .long 993632256
  638. .long 1027030475
  639. .long 3773204808
  640. .long 3129236486
  641. .type _Pi4x3,@object
  642. .size _Pi4x3,24
  643. .space 8, 0x00 # pad
  644. .align 16
  645. _Pi4x4:
  646. .long 1413480448
  647. .long 3219726843
  648. .long 442499072
  649. .long 3183522913
  650. .long 771751936
  651. .long 3146979722
  652. .long 622873025
  653. .long 3110831002
  654. .type _Pi4x4,@object
  655. .size _Pi4x4,32
  656. .align 16
  657. _ones:
  658. .long 0
  659. .long 1072693248
  660. .long 0
  661. .long 3220176896
  662. .type _ones,@object
  663. .size _ones,16
  664. .align 16
  665. _TP:
  666. .word 19670
  667. .word 44908
  668. .word 50960
  669. .word 50786
  670. .word 49149
  671. .word 0
  672. .word 19206
  673. .word 45228
  674. .word 54194
  675. .word 52268
  676. .word 16377
  677. .word 0
  678. .word 227
  679. .word 51280
  680. .word 43560
  681. .word 38195
  682. .word 49139
  683. .word 0
  684. .word 12272
  685. .word 18029
  686. .word 6715
  687. .word 45670
  688. .word 16357
  689. .word 0
  690. .type _TP,@object
  691. .size _TP,48
  692. .align 16
  693. _TQ:
  694. .word 14748
  695. .word 33681
  696. .word 5452
  697. .word 38090
  698. .word 49151
  699. .word 0
  700. .word 46755
  701. .word 50026
  702. .word 17634
  703. .word 35372
  704. .word 16382
  705. .word 0
  706. .word 46863
  707. .word 53352
  708. .word 42702
  709. .word 59869
  710. .word 49145
  711. .word 0
  712. .word 33295
  713. .word 20942
  714. .word 32118
  715. .word 39935
  716. .word 16371
  717. .word 0
  718. .type _TQ,@object
  719. .size _TQ,48
  720. .align 16
  721. _GP:
  722. .word 43691
  723. .word 43690
  724. .word 43690
  725. .word 43690
  726. .word 49149
  727. .word 0
  728. .word 46639
  729. .word 2912
  730. .word 24758
  731. .word 46603
  732. .word 49145
  733. .word 0
  734. .word 57255
  735. .word 2218
  736. .word 21984
  737. .word 35507
  738. .word 49142
  739. .word 0
  740. .word 34208
  741. .word 43033
  742. .word 48281
  743. .word 56811
  744. .word 49138
  745. .word 0
  746. .word 28773
  747. .word 27191
  748. .word 31071
  749. .word 45908
  750. .word 49135
  751. .word 0
  752. .word 43257
  753. .word 33777
  754. .word 11976
  755. .word 37184
  756. .word 49132
  757. .word 0
  758. .word 62410
  759. .word 35990
  760. .word 36363
  761. .word 60269
  762. .word 49128
  763. .word 0
  764. .word 13659
  765. .word 55568
  766. .word 26569
  767. .word 48851
  768. .word 49125
  769. .word 0
  770. .word 10347
  771. .word 46238
  772. .word 47188
  773. .word 39576
  774. .word 49122
  775. .word 0
  776. .word 2161
  777. .word 6703
  778. .word 25719
  779. .word 64708
  780. .word 49118
  781. .word 0
  782. .word 42329
  783. .word 7593
  784. .word 44754
  785. .word 47734
  786. .word 49115
  787. .word 0
  788. .word 163
  789. .word 32746
  790. .word 39875
  791. .word 61957
  792. .word 49112
  793. .word 0
  794. .type _GP,@object
  795. .size _GP,144
  796. .data
  797. .hidden __libm_reduce_pi04l
  798. .section .note.GNU-stack, ""
  799. # End