catanhl.S 75 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875
  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 "catanhl.c"
  38. .text
  39. ..TXTST0:
  40. # -- Begin catanhl
  41. .text
  42. .align 16,0x90
  43. .globl catanhl
  44. catanhl:
  45. # parameter 1: 12 + %ebp
  46. ..B1.1:
  47. ..L1:
  48. pushl %ebp
  49. movl %esp, %ebp
  50. andl $-64, %esp
  51. pushl %esi
  52. pushl %edi
  53. pushl %ebx
  54. subl $52, %esp
  55. call ..L2
  56. ..L2:
  57. popl %ebx
  58. lea _GLOBAL_OFFSET_TABLE_+[. - ..L2](%ebx), %ebx
  59. movl %gs:20, %edx
  60. movl 8(%ebp), %esi
  61. xorl %esp, %edx
  62. fldt .L_2il0floatpacket.17@GOTOFF(%ebx)
  63. movl %edx, 28(%esp)
  64. fstpt 4(%esp)
  65. fldt 4(%esp)
  66. fstpt 16(%esp)
  67. ..B1.2:
  68. fnstcw 2(%esp)
  69. ..B1.3:
  70. movzwl 2(%esp), %ecx
  71. movl %ecx, %edx
  72. andl $768, %edx
  73. cmpl $768, %edx
  74. je ..B1.54
  75. ..B1.4:
  76. orl $-64768, %ecx
  77. movw %cx, (%esp)
  78. ..B1.5:
  79. fldcw (%esp)
  80. ..B1.6:
  81. movl $1, %edi
  82. ..B1.7:
  83. movzwl 20(%ebp), %ecx
  84. andl $32767, %ecx
  85. cmpl $32767, %ecx
  86. jge ..B1.14
  87. ..B1.8:
  88. testl %ecx, %ecx
  89. jle ..B1.34
  90. ..B1.9:
  91. movzwl 32(%ebp), %edx
  92. andl $32767, %edx
  93. cmpl $32767, %edx
  94. jge ..B1.15
  95. ..B1.10:
  96. testl %edx, %edx
  97. jle ..B1.32
  98. ..B1.11:
  99. fldt 12(%ebp)
  100. addl $-32, %esp
  101. fstpt (%esp)
  102. fldt 24(%ebp)
  103. fstpt 12(%esp)
  104. call recatanhl
  105. ..B1.57:
  106. addl $32, %esp
  107. ..B1.12:
  108. fldt 24(%ebp)
  109. fxch %st(1)
  110. fstpt 4(%esp)
  111. addl $-32, %esp
  112. fldt 12(%ebp)
  113. fstpt (%esp)
  114. fstpt 12(%esp)
  115. call imcatanhl
  116. ..B1.58:
  117. addl $32, %esp
  118. ..B1.13:
  119. fstpt 16(%esp)
  120. jmp ..B1.28
  121. ..B1.14:
  122. movzwl 32(%ebp), %edx
  123. andl $32767, %edx
  124. ..B1.15:
  125. cmpl $32767, %ecx
  126. je ..B1.46
  127. ..B1.16:
  128. cmpl $32767, %edx
  129. je ..B1.40
  130. ..B1.17:
  131. cmpl $32767, %edx
  132. jge ..B1.27
  133. ..B1.18:
  134. movl 16(%ebp), %edx
  135. testl %edx, %edx
  136. jne ..B1.20
  137. ..B1.19:
  138. cmpl $0, 12(%ebp)
  139. je ..B1.27
  140. ..B1.20:
  141. cmpl $16383, %ecx
  142. jge ..B1.22
  143. ..B1.21:
  144. fldt 12(%ebp)
  145. addl $-16, %esp
  146. fstpt (%esp)
  147. call atanhl@PLT
  148. ..B1.59:
  149. fldt 48+_CONSTANTS@GOTOFF(%ebx)
  150. addl $16, %esp
  151. movzbl 33(%ebp), %ecx
  152. andl $128, %ecx
  153. shrl $7, %ecx
  154. fxch %st(1)
  155. fstpt 4(%esp)
  156. lea (,%ecx,8), %edx
  157. lea (%edx,%ecx,4), %edx
  158. fldt _CONSTANTS@GOTOFF(%ebx,%edx)
  159. fmulp %st, %st(1)
  160. fstpt 16(%esp)
  161. jmp ..B1.28
  162. ..B1.22:
  163. je ..B1.37
  164. ..B1.23:
  165. cmpl $32767, %ecx
  166. jl ..B1.25
  167. ..B1.24:
  168. fldt 48+_CONSTANTS@GOTOFF(%ebx)
  169. movzbl 21(%ebp), %ecx
  170. andl $128, %ecx
  171. shrl $7, %ecx
  172. lea (,%ecx,8), %edx
  173. lea (%edx,%ecx,4), %edx
  174. movzbl 33(%ebp), %ecx
  175. fldt _CONSTANTS@GOTOFF(%ebx,%edx)
  176. andl $128, %ecx
  177. fmulp %st, %st(1)
  178. shrl $7, %ecx
  179. fstpt 4(%esp)
  180. addl $-16, %esp
  181. lea (,%ecx,8), %edx
  182. lea (%edx,%ecx,4), %edx
  183. fldt _CONSTANTS@GOTOFF(%ebx,%edx)
  184. fstpt (%esp)
  185. call asinl@PLT
  186. jmp ..B1.63
  187. ..B1.25:
  188. fldt 12(%ebp)
  189. addl $-32, %esp
  190. fstpt (%esp)
  191. fldt 24(%ebp)
  192. fstpt 12(%esp)
  193. call recatanhl
  194. ..B1.61:
  195. addl $32, %esp
  196. ..B1.26:
  197. movzbl 33(%ebp), %ecx
  198. andl $128, %ecx
  199. shrl $7, %ecx
  200. fstpt 4(%esp)
  201. addl $-16, %esp
  202. lea (,%ecx,8), %edx
  203. lea (%edx,%ecx,4), %edx
  204. fldt _CONSTANTS@GOTOFF(%ebx,%edx)
  205. fstpt (%esp)
  206. call asinl@PLT
  207. jmp ..B1.63
  208. ..B1.27:
  209. fldt 48+_CONSTANTS@GOTOFF(%ebx)
  210. fldt 24(%ebp)
  211. movzbl 21(%ebp), %ecx
  212. andl $128, %ecx
  213. shrl $7, %ecx
  214. lea (,%ecx,8), %edx
  215. lea (%edx,%ecx,4), %edx
  216. fldt _CONSTANTS@GOTOFF(%ebx,%edx)
  217. fmulp %st, %st(2)
  218. fxch %st(1)
  219. fstpt 4(%esp)
  220. addl $-16, %esp
  221. fstpt (%esp)
  222. call atanl@PLT
  223. ..B1.63:
  224. addl $16, %esp
  225. fstpt 16(%esp)
  226. ..B1.28:
  227. testl %edi, %edi
  228. je ..B1.30
  229. ..B1.29:
  230. fldcw 2(%esp)
  231. ..B1.30:
  232. movl 4(%esp), %edx
  233. movl %edx, (%esi)
  234. movl 16(%esp), %edx
  235. movl %edx, 12(%esi)
  236. movl 20(%esp), %edx
  237. movl %edx, 16(%esi)
  238. movl 8(%esp), %ecx
  239. movl 12(%esp), %edi
  240. movl 24(%esp), %edx
  241. movl %ecx, 4(%esi)
  242. movl %edi, 8(%esi)
  243. movl %edx, 20(%esi)
  244. movl 28(%esp), %edx
  245. xorl %esp, %edx
  246. cmpl %gs:20, %edx
  247. jne ..B1.39
  248. ..B1.31:
  249. movl %esi, %eax
  250. addl $52, %esp
  251. popl %ebx
  252. popl %edi
  253. popl %esi
  254. movl %ebp, %esp
  255. popl %ebp
  256. ret $4
  257. ..B1.32:
  258. cmpl $0, 28(%ebp)
  259. jne ..B1.11
  260. ..B1.33:
  261. cmpl $0, 24(%ebp)
  262. jne ..B1.11
  263. jmp ..B1.15
  264. ..B1.34:
  265. cmpl $0, 16(%ebp)
  266. jne ..B1.9
  267. ..B1.35:
  268. cmpl $0, 12(%ebp)
  269. jne ..B1.9
  270. jmp ..B1.14
  271. ..B1.37:
  272. cmpl $-2147483648, %edx
  273. jne ..B1.23
  274. ..B1.38:
  275. cmpl $0, 12(%ebp)
  276. je ..B1.21
  277. jmp ..B1.23
  278. ..B1.39:
  279. call __stack_chk_fail@PLT
  280. ..B1.40:
  281. cmpl $-2147483648, 28(%ebp)
  282. jne ..B1.42
  283. ..B1.41:
  284. cmpl $0, 24(%ebp)
  285. je ..B1.17
  286. ..B1.42:
  287. cmpl $32767, %ecx
  288. jge ..B1.17
  289. ..B1.43:
  290. cmpl $0, 16(%ebp)
  291. jne ..B1.45
  292. ..B1.44:
  293. cmpl $0, 12(%ebp)
  294. je ..B1.17
  295. ..B1.45:
  296. fldt 24(%ebp)
  297. fmul %st(0), %st
  298. fstpt 4(%esp)
  299. fldt 4(%esp)
  300. fstpt 16(%esp)
  301. jmp ..B1.28
  302. ..B1.46:
  303. cmpl $-2147483648, 16(%ebp)
  304. jne ..B1.48
  305. ..B1.47:
  306. cmpl $0, 12(%ebp)
  307. je ..B1.16
  308. ..B1.48:
  309. cmpl $32767, %edx
  310. jge ..B1.50
  311. ..B1.49:
  312. fldt 12(%ebp)
  313. fmul %st(0), %st
  314. fstpt 4(%esp)
  315. fldt 4(%esp)
  316. fstpt 16(%esp)
  317. jmp ..B1.28
  318. ..B1.50:
  319. cmpl $-2147483648, 28(%ebp)
  320. jne ..B1.53
  321. ..B1.51:
  322. cmpl $0, 24(%ebp)
  323. jne ..B1.53
  324. ..B1.52:
  325. fldt 12(%ebp)
  326. fmul %st(0), %st
  327. fstpt 12(%ebp)
  328. fldt 48+_CONSTANTS@GOTOFF(%ebx)
  329. fstpt 4(%esp)
  330. addl $-16, %esp
  331. fldt 24(%ebp)
  332. fstpt (%esp)
  333. call atanl@PLT
  334. jmp ..B1.63
  335. ..B1.53:
  336. fldt 12(%ebp)
  337. fmul %st(0), %st
  338. fstpt 4(%esp)
  339. fldt 24(%ebp)
  340. fmul %st(0), %st
  341. fstpt 16(%esp)
  342. jmp ..B1.28
  343. ..B1.54:
  344. xorl %edi, %edi
  345. jmp ..B1.7
  346. .align 16,0x90
  347. .type catanhl,@function
  348. .size catanhl,.-catanhl
  349. .data
  350. # -- End catanhl
  351. .text
  352. # -- Begin recatanhl
  353. .text
  354. .align 16,0x90
  355. recatanhl:
  356. # parameter 1: 8 + %ebp
  357. # parameter 2: 20 + %ebp
  358. ..B2.1:
  359. ..L3:
  360. pushl %ebp
  361. movl %esp, %ebp
  362. andl $-64, %esp
  363. pushl %esi
  364. pushl %edi
  365. pushl %ebx
  366. subl $436, %esp
  367. fldt 8(%ebp)
  368. call ..L4
  369. ..L4:
  370. popl %edx
  371. lea _GLOBAL_OFFSET_TABLE_+[. - ..L4](%edx), %edx
  372. movl %edx, 76(%esp)
  373. movl %gs:20, %eax
  374. fldt 48+_CONSTANTS@GOTOFF(%edx)
  375. xorl %esp, %eax
  376. movl %eax, 388(%esp)
  377. movl $0, 160(%esp)
  378. fstpt 32(%esp)
  379. fldt 32(%esp)
  380. fxch %st(1)
  381. fstpt 136(%esp)
  382. fstpt 148(%esp)
  383. addl $4, %esp
  384. lea 132(%esp), %ecx
  385. pushl %ecx
  386. call __libm_normalizel_k80
  387. ..B2.2:
  388. fldt 20(%ebp)
  389. movl $0, 188(%esp)
  390. fstpt 164(%esp)
  391. fldt 32(%esp)
  392. fstpt 176(%esp)
  393. addl $4, %esp
  394. lea 160(%esp), %eax
  395. pushl %eax
  396. call __libm_normalizel_k80
  397. ..B2.3:
  398. fldt 32(%esp)
  399. xorl %esi, %esi
  400. movl 76(%esp), %eax
  401. movzwl 144(%esp), %ecx
  402. movl %ecx, %ebx
  403. andl $32767, %ebx
  404. movl %esi, 216(%esp)
  405. cmpl $8383, %ebx
  406. fstpt 204(%esp)
  407. fldt _CONSTANTS@GOTOFF(%eax)
  408. fstpt 192(%esp)
  409. jl ..B2.7
  410. ..B2.4:
  411. cmpl $24383, %ebx
  412. jg ..B2.7
  413. ..B2.5:
  414. movzwl 200(%esp), %edx
  415. movl %edx, 44(%esp)
  416. andl $32767, %edx
  417. cmpl $8383, %edx
  418. jl ..B2.7
  419. ..B2.6:
  420. cmpl $24383, %edx
  421. jle ..B2.10
  422. ..B2.7:
  423. addl $4, %esp
  424. lea 132(%esp), %eax
  425. pushl %eax
  426. call __libm_normalizel_k80
  427. ..B2.8:
  428. addl $4, %esp
  429. lea 188(%esp), %eax
  430. pushl %eax
  431. call __libm_normalizel_k80
  432. ..B2.9:
  433. movzwl 144(%esp), %ecx
  434. movl %ecx, %ebx
  435. movzwl 200(%esp), %edx
  436. andl $32767, %ebx
  437. movl 216(%esp), %esi
  438. movl %edx, 44(%esp)
  439. andl $32767, %edx
  440. ..B2.10:
  441. movl 160(%esp), %eax
  442. movl %eax, 48(%esp)
  443. lea (%ebx,%eax), %edi
  444. movl %edi, 32(%esp)
  445. lea -134(%esi,%edx), %eax
  446. cmpl %eax, %edi
  447. jle ..B2.27
  448. ..B2.11:
  449. movl 140(%esp), %eax
  450. lea 134(%esi,%edx), %edi
  451. cmpl 32(%esp), %edi
  452. jle ..B2.28
  453. ..B2.12:
  454. testl %eax, %eax
  455. jne ..B2.14
  456. ..B2.13:
  457. cmpl $0, 136(%esp)
  458. je ..B2.29
  459. ..B2.14:
  460. cmpl $0, 196(%esp)
  461. jne ..B2.16
  462. ..B2.15:
  463. cmpl $0, 192(%esp)
  464. je ..B2.28
  465. ..B2.16:
  466. cmpl 48(%esp), %esi
  467. je ..B2.18
  468. ..B2.17:
  469. fldt 136(%esp)
  470. fldt 148(%esp)
  471. movl 48(%esp), %eax
  472. subl %esi, %eax
  473. andb $127, 41(%esp)
  474. addl $16383, %eax
  475. movzwl 40(%esp), %edx
  476. andl $32767, %eax
  477. andl $-32768, %edx
  478. orl %eax, %edx
  479. movw %dx, 40(%esp)
  480. movl $-2147483648, 36(%esp)
  481. movl $0, 32(%esp)
  482. fldt 32(%esp)
  483. fmul %st, %st(2)
  484. movl %esi, 160(%esp)
  485. fxch %st(2)
  486. fstpt 136(%esp)
  487. fldt 136(%esp)
  488. fxch %st(2)
  489. fmulp %st, %st(1)
  490. fstpt 148(%esp)
  491. fldt 148(%esp)
  492. movzwl 144(%esp), %ecx
  493. jmp ..B2.19
  494. ..B2.18:
  495. fldt 136(%esp)
  496. fldt 148(%esp)
  497. ..B2.19:
  498. fldt 192(%esp)
  499. andl $32767, %ecx
  500. movl 44(%esp), %eax
  501. fld %st(2)
  502. andl $32767, %eax
  503. fadd %st(1), %st
  504. movl %esi, 244(%esp)
  505. cmpl %eax, %ecx
  506. jg ..B2.24
  507. ..B2.20:
  508. jne ..B2.25
  509. ..B2.21:
  510. movl 140(%esp), %eax
  511. movl 196(%esp), %edx
  512. cmpl %edx, %eax
  513. ja ..B2.24
  514. ..B2.22:
  515. jne ..B2.25
  516. ..B2.23:
  517. movl 136(%esp), %eax
  518. cmpl 192(%esp), %eax
  519. jbe ..B2.25
  520. ..B2.24:
  521. fldt 204(%esp)
  522. fxch %st(1)
  523. fsubr %st, %st(4)
  524. fxch %st(4)
  525. faddp %st, %st(2)
  526. faddp %st, %st(1)
  527. faddp %st, %st(1)
  528. fxch %st(1)
  529. jmp ..B2.26
  530. ..B2.25:
  531. fsubr %st, %st(1)
  532. fxch %st(1)
  533. faddp %st, %st(3)
  534. fxch %st(1)
  535. faddp %st, %st(2)
  536. fldt 204(%esp)
  537. faddp %st, %st(2)
  538. ..B2.26:
  539. fld %st(1)
  540. fadd %st(1), %st
  541. fstpt 220(%esp)
  542. fldt 220(%esp)
  543. fsubrp %st, %st(1)
  544. faddp %st, %st(1)
  545. fstpt 232(%esp)
  546. jmp ..B2.33
  547. ..B2.27:
  548. movl 140(%esp), %eax
  549. ..B2.28:
  550. testl %eax, %eax
  551. jne ..B2.30
  552. ..B2.162:
  553. cmpl $0, 136(%esp)
  554. ..B2.29:
  555. je ..B2.31
  556. ..B2.30:
  557. lea -16517(%esi,%edx), %ecx
  558. movl 48(%esp), %edx
  559. lea -16383(%edx,%ebx), %ebx
  560. cmpl %ebx, %ecx
  561. jl ..B2.32
  562. ..B2.31:
  563. movl 192(%esp), %eax
  564. movl %eax, 220(%esp)
  565. movl 196(%esp), %edx
  566. movl 200(%esp), %ecx
  567. movl 204(%esp), %ebx
  568. movl 208(%esp), %esi
  569. movl 212(%esp), %edi
  570. movl 216(%esp), %eax
  571. movl %edx, 224(%esp)
  572. movl %ecx, 228(%esp)
  573. movl %ebx, 232(%esp)
  574. movl %esi, 236(%esp)
  575. movl %edi, 240(%esp)
  576. movl %eax, 244(%esp)
  577. jmp ..B2.33
  578. ..B2.32:
  579. movl %eax, 224(%esp)
  580. movl 136(%esp), %edx
  581. movl 144(%esp), %eax
  582. movl 148(%esp), %ecx
  583. movl 152(%esp), %ebx
  584. movl 156(%esp), %esi
  585. movl 48(%esp), %edi
  586. movl %edx, 220(%esp)
  587. movl %eax, 228(%esp)
  588. movl %ecx, 232(%esp)
  589. movl %ebx, 236(%esp)
  590. movl %esi, 240(%esp)
  591. movl %edi, 244(%esp)
  592. ..B2.33:
  593. movzwl 228(%esp), %eax
  594. andl $32767, %eax
  595. cmpl $8383, %eax
  596. jl ..B2.35
  597. ..B2.34:
  598. cmpl $24383, %eax
  599. jle ..B2.37
  600. ..B2.35:
  601. addl $4, %esp
  602. lea 216(%esp), %ebx
  603. pushl %ebx
  604. call __libm_normalizel_k80
  605. ..B2.36:
  606. addl $4, %esp
  607. pushl %ebx
  608. call __libm_normalizel_k80
  609. ..B2.37:
  610. fldt 220(%esp)
  611. movl 76(%esp), %edx
  612. fld %st(0)
  613. fld %st(1)
  614. fld %st(2)
  615. fldt 232(%esp)
  616. fmulp %st, %st(4)
  617. movl 244(%esp), %eax
  618. fxch %st(3)
  619. fadd %st(0), %st
  620. fldt 60+_CONSTANTS@GOTOFF(%edx)
  621. addl %eax, %eax
  622. fmul %st, %st(3)
  623. movl %eax, 272(%esp)
  624. fxch %st(2)
  625. fsub %st(3), %st
  626. movzwl 172(%esp), %eax
  627. faddp %st, %st(3)
  628. fld %st(2)
  629. andl $32767, %eax
  630. fmul %st(3), %st
  631. fxch %st(3)
  632. fsubr %st, %st(4)
  633. fmul %st(4), %st
  634. cmpl $8383, %eax
  635. fadd %st(0), %st
  636. fxch %st(2)
  637. fstpt 48(%esp)
  638. fxch %st(3)
  639. fmul %st(0), %st
  640. fld %st(1)
  641. fadd %st(3), %st
  642. fsub %st, %st(3)
  643. fxch %st(3)
  644. fchs
  645. faddp %st, %st(2)
  646. faddp %st, %st(1)
  647. faddp %st, %st(2)
  648. fld %st(1)
  649. fadd %st(1), %st
  650. fstpt 248(%esp)
  651. fldt 248(%esp)
  652. fsubrp %st, %st(1)
  653. faddp %st, %st(1)
  654. fstpt 260(%esp)
  655. jl ..B2.39
  656. ..B2.38:
  657. cmpl $24383, %eax
  658. jle ..B2.41
  659. ..B2.39:
  660. addl $4, %esp
  661. lea 160(%esp), %eax
  662. pushl %eax
  663. call __libm_normalizel_k80
  664. ..B2.40:
  665. addl $4, %esp
  666. lea 160(%esp), %eax
  667. pushl %eax
  668. call __libm_normalizel_k80
  669. ..B2.41:
  670. fldt 164(%esp)
  671. fld %st(0)
  672. fld %st(1)
  673. fldt 48(%esp)
  674. fldt 176(%esp)
  675. fmul %st(4), %st
  676. movzwl 256(%esp), %ecx
  677. movl %ecx, %ebx
  678. andl $32767, %ebx
  679. fadd %st(0), %st
  680. fxch %st(4)
  681. fmulp %st, %st(1)
  682. movl 188(%esp), %esi
  683. fsubr %st, %st(2)
  684. addl %esi, %esi
  685. faddp %st, %st(2)
  686. fld %st(1)
  687. cmpl $8383, %ebx
  688. fmul %st(2), %st
  689. fxch %st(1)
  690. fsub %st(2), %st
  691. fmul %st, %st(2)
  692. movl %esi, 300(%esp)
  693. fxch %st(2)
  694. fadd %st(0), %st
  695. fld %st(0)
  696. fadd %st(2), %st
  697. fsub %st, %st(2)
  698. fxch %st(2)
  699. fchs
  700. faddp %st, %st(1)
  701. fxch %st(2)
  702. fmul %st(0), %st
  703. faddp %st, %st(2)
  704. fxch %st(1)
  705. faddp %st, %st(2)
  706. fld %st(1)
  707. fadd %st(1), %st
  708. fstpt 276(%esp)
  709. fldt 276(%esp)
  710. fsubrp %st, %st(1)
  711. fadd %st(1), %st
  712. fstpt 288(%esp)
  713. fstpt 64(%esp)
  714. jl ..B2.45
  715. ..B2.42:
  716. cmpl $24383, %ebx
  717. jg ..B2.45
  718. ..B2.43:
  719. movzwl 284(%esp), %edx
  720. movl %edx, 44(%esp)
  721. andl $32767, %edx
  722. cmpl $8383, %edx
  723. jl ..B2.45
  724. ..B2.44:
  725. cmpl $24383, %edx
  726. jle ..B2.48
  727. ..B2.45:
  728. addl $4, %esp
  729. lea 244(%esp), %eax
  730. pushl %eax
  731. call __libm_normalizel_k80
  732. ..B2.46:
  733. addl $4, %esp
  734. lea 272(%esp), %eax
  735. pushl %eax
  736. call __libm_normalizel_k80
  737. ..B2.47:
  738. movzwl 256(%esp), %ecx
  739. movl %ecx, %ebx
  740. movzwl 284(%esp), %edx
  741. andl $32767, %ebx
  742. movl 300(%esp), %esi
  743. movl %edx, 44(%esp)
  744. andl $32767, %edx
  745. ..B2.48:
  746. movl 272(%esp), %eax
  747. movl %eax, 80(%esp)
  748. lea (%ebx,%eax), %edi
  749. movl %edi, 60(%esp)
  750. lea -134(%esi,%edx), %eax
  751. cmpl %eax, %edi
  752. jle ..B2.65
  753. ..B2.49:
  754. movl 252(%esp), %eax
  755. lea 134(%esi,%edx), %edi
  756. cmpl 60(%esp), %edi
  757. jle ..B2.66
  758. ..B2.50:
  759. testl %eax, %eax
  760. jne ..B2.52
  761. ..B2.51:
  762. cmpl $0, 248(%esp)
  763. je ..B2.67
  764. ..B2.52:
  765. cmpl $0, 280(%esp)
  766. jne ..B2.54
  767. ..B2.53:
  768. cmpl $0, 276(%esp)
  769. je ..B2.66
  770. ..B2.54:
  771. cmpl 80(%esp), %esi
  772. je ..B2.56
  773. ..B2.55:
  774. fldt 64(%esp)
  775. movl 80(%esp), %eax
  776. fstpt 32(%esp)
  777. subl %esi, %eax
  778. fldt 248(%esp)
  779. addl $16383, %eax
  780. fldt 260(%esp)
  781. andl $32767, %eax
  782. andb $127, 41(%esp)
  783. movzwl 40(%esp), %edx
  784. andl $-32768, %edx
  785. orl %eax, %edx
  786. movw %dx, 40(%esp)
  787. movl $-2147483648, 36(%esp)
  788. movl $0, 32(%esp)
  789. fldt 32(%esp)
  790. fmul %st, %st(2)
  791. movl %esi, 272(%esp)
  792. fxch %st(2)
  793. fstpt 248(%esp)
  794. fldt 248(%esp)
  795. fxch %st(2)
  796. fmulp %st, %st(1)
  797. fstpt 260(%esp)
  798. fldt 260(%esp)
  799. fxch %st(1)
  800. fstpt 64(%esp)
  801. movzwl 256(%esp), %ecx
  802. jmp ..B2.57
  803. ..B2.56:
  804. fldt 248(%esp)
  805. fstpt 64(%esp)
  806. fldt 260(%esp)
  807. ..B2.57:
  808. fldt 276(%esp)
  809. andl $32767, %ecx
  810. fldt 64(%esp)
  811. movl 44(%esp), %eax
  812. andl $32767, %eax
  813. fadd %st(1), %st
  814. movl %esi, 328(%esp)
  815. cmpl %eax, %ecx
  816. jg ..B2.62
  817. ..B2.58:
  818. jne ..B2.63
  819. ..B2.59:
  820. movl 252(%esp), %eax
  821. movl 280(%esp), %edx
  822. cmpl %edx, %eax
  823. ja ..B2.62
  824. ..B2.60:
  825. jne ..B2.63
  826. ..B2.61:
  827. movl 248(%esp), %eax
  828. cmpl 276(%esp), %eax
  829. jbe ..B2.63
  830. ..B2.62:
  831. fldt 64(%esp)
  832. fsub %st(1), %st
  833. faddp %st, %st(2)
  834. fldt 288(%esp)
  835. faddp %st, %st(2)
  836. fxch %st(2)
  837. faddp %st, %st(1)
  838. fstpt 64(%esp)
  839. jmp ..B2.64
  840. ..B2.63:
  841. fldt 64(%esp)
  842. fxch %st(1)
  843. fsubr %st, %st(2)
  844. fxch %st(1)
  845. faddp %st, %st(2)
  846. fxch %st(2)
  847. faddp %st, %st(1)
  848. fldt 288(%esp)
  849. faddp %st, %st(1)
  850. fstpt 64(%esp)
  851. ..B2.64:
  852. fldt 64(%esp)
  853. fld %st(0)
  854. fadd %st(2), %st
  855. fstpt 304(%esp)
  856. fldt 304(%esp)
  857. fsubrp %st, %st(2)
  858. faddp %st, %st(1)
  859. fstpt 316(%esp)
  860. jmp ..B2.71
  861. ..B2.65:
  862. movl 252(%esp), %eax
  863. ..B2.66:
  864. testl %eax, %eax
  865. jne ..B2.68
  866. ..B2.164:
  867. cmpl $0, 248(%esp)
  868. ..B2.67:
  869. je ..B2.69
  870. ..B2.68:
  871. lea -16517(%esi,%edx), %ecx
  872. movl 80(%esp), %edx
  873. lea -16383(%edx,%ebx), %ebx
  874. cmpl %ebx, %ecx
  875. jl ..B2.70
  876. ..B2.69:
  877. movl 276(%esp), %eax
  878. movl %eax, 304(%esp)
  879. movl 280(%esp), %edx
  880. movl 284(%esp), %ecx
  881. movl 288(%esp), %ebx
  882. movl 292(%esp), %esi
  883. movl 296(%esp), %edi
  884. movl 300(%esp), %eax
  885. movl %edx, 308(%esp)
  886. movl %ecx, 312(%esp)
  887. movl %ebx, 316(%esp)
  888. movl %esi, 320(%esp)
  889. movl %edi, 324(%esp)
  890. movl %eax, 328(%esp)
  891. jmp ..B2.71
  892. ..B2.70:
  893. movl %eax, 308(%esp)
  894. movl 248(%esp), %edx
  895. movl 256(%esp), %eax
  896. movl 260(%esp), %ecx
  897. movl 264(%esp), %ebx
  898. movl 268(%esp), %esi
  899. movl 80(%esp), %edi
  900. movl %edx, 304(%esp)
  901. movl %eax, 312(%esp)
  902. movl %ecx, 316(%esp)
  903. movl %ebx, 320(%esp)
  904. movl %esi, 324(%esp)
  905. movl %edi, 328(%esp)
  906. ..B2.71:
  907. movzwl 144(%esp), %ebx
  908. movl %ebx, %esi
  909. andl $32767, %esi
  910. cmpl $8383, %esi
  911. jl ..B2.75
  912. ..B2.72:
  913. cmpl $24383, %esi
  914. jg ..B2.75
  915. ..B2.73:
  916. movzwl 200(%esp), %ecx
  917. movl %ecx, 44(%esp)
  918. andl $32767, %ecx
  919. cmpl $8383, %ecx
  920. jl ..B2.75
  921. ..B2.74:
  922. cmpl $24383, %ecx
  923. jle ..B2.78
  924. ..B2.75:
  925. addl $4, %esp
  926. lea 132(%esp), %eax
  927. pushl %eax
  928. call __libm_normalizel_k80
  929. ..B2.76:
  930. addl $4, %esp
  931. lea 188(%esp), %eax
  932. pushl %eax
  933. call __libm_normalizel_k80
  934. ..B2.77:
  935. movzwl 144(%esp), %ebx
  936. movl %ebx, %esi
  937. movzwl 200(%esp), %ecx
  938. andl $32767, %esi
  939. movl %ecx, 44(%esp)
  940. andl $32767, %ecx
  941. ..B2.78:
  942. movl 160(%esp), %eax
  943. movl 216(%esp), %edx
  944. movl %eax, 80(%esp)
  945. lea (%esi,%eax), %edi
  946. movl %edi, 60(%esp)
  947. lea -134(%edx,%ecx), %eax
  948. cmpl %eax, %edi
  949. jle ..B2.95
  950. ..B2.79:
  951. movl 140(%esp), %eax
  952. lea 134(%edx,%ecx), %edi
  953. cmpl 60(%esp), %edi
  954. jle ..B2.96
  955. ..B2.80:
  956. testl %eax, %eax
  957. jne ..B2.82
  958. ..B2.81:
  959. cmpl $0, 136(%esp)
  960. je ..B2.97
  961. ..B2.82:
  962. cmpl $0, 196(%esp)
  963. jne ..B2.84
  964. ..B2.83:
  965. cmpl $0, 192(%esp)
  966. je ..B2.96
  967. ..B2.84:
  968. cmpl 80(%esp), %edx
  969. je ..B2.86
  970. ..B2.85:
  971. fldt 64(%esp)
  972. movl 80(%esp), %eax
  973. fstpt 32(%esp)
  974. subl %edx, %eax
  975. fldt 136(%esp)
  976. addl $16383, %eax
  977. fldt 148(%esp)
  978. andl $32767, %eax
  979. andb $127, 41(%esp)
  980. movzwl 40(%esp), %ecx
  981. andl $-32768, %ecx
  982. orl %eax, %ecx
  983. movw %cx, 40(%esp)
  984. movl $-2147483648, 36(%esp)
  985. movl $0, 32(%esp)
  986. fldt 32(%esp)
  987. fmul %st, %st(2)
  988. movl %edx, 160(%esp)
  989. fxch %st(2)
  990. fstpt 136(%esp)
  991. fldt 136(%esp)
  992. fxch %st(2)
  993. fmulp %st, %st(1)
  994. fstpt 148(%esp)
  995. fldt 148(%esp)
  996. movzwl 144(%esp), %ebx
  997. jmp ..B2.87
  998. ..B2.86:
  999. fldt 136(%esp)
  1000. fldt 148(%esp)
  1001. ..B2.87:
  1002. fldt 192(%esp)
  1003. andl $32767, %ebx
  1004. movl 44(%esp), %eax
  1005. fld %st(2)
  1006. andl $32767, %eax
  1007. fsub %st(1), %st
  1008. movl %edx, 244(%esp)
  1009. cmpl %eax, %ebx
  1010. jg ..B2.92
  1011. ..B2.88:
  1012. jne ..B2.93
  1013. ..B2.89:
  1014. movl 140(%esp), %eax
  1015. movl 196(%esp), %edx
  1016. cmpl %edx, %eax
  1017. ja ..B2.92
  1018. ..B2.90:
  1019. jne ..B2.93
  1020. ..B2.91:
  1021. movl 136(%esp), %eax
  1022. cmpl 192(%esp), %eax
  1023. jbe ..B2.93
  1024. ..B2.92:
  1025. fsubr %st, %st(3)
  1026. fxch %st(1)
  1027. fsubrp %st, %st(3)
  1028. fldt 204(%esp)
  1029. fsubrp %st, %st(3)
  1030. fxch %st(1)
  1031. faddp %st, %st(2)
  1032. jmp ..B2.94
  1033. ..B2.93:
  1034. fadd %st, %st(1)
  1035. fxch %st(1)
  1036. fsubrp %st, %st(3)
  1037. fxch %st(1)
  1038. faddp %st, %st(2)
  1039. fldt 204(%esp)
  1040. fsubrp %st, %st(2)
  1041. ..B2.94:
  1042. fld %st(1)
  1043. fadd %st(1), %st
  1044. fstpt 220(%esp)
  1045. fldt 220(%esp)
  1046. fsubrp %st, %st(1)
  1047. faddp %st, %st(1)
  1048. fstpt 232(%esp)
  1049. jmp ..B2.101
  1050. ..B2.95:
  1051. movl 140(%esp), %eax
  1052. ..B2.96:
  1053. testl %eax, %eax
  1054. jne ..B2.98
  1055. ..B2.161:
  1056. cmpl $0, 136(%esp)
  1057. ..B2.97:
  1058. je ..B2.99
  1059. ..B2.98:
  1060. lea -16517(%edx,%ecx), %ebx
  1061. movl 80(%esp), %ecx
  1062. lea -16383(%ecx,%esi), %esi
  1063. cmpl %esi, %ebx
  1064. jl ..B2.100
  1065. ..B2.99:
  1066. fldt 192(%esp)
  1067. fchs
  1068. movl %edx, 244(%esp)
  1069. fstpt 220(%esp)
  1070. fldt 204(%esp)
  1071. fchs
  1072. fstpt 232(%esp)
  1073. jmp ..B2.101
  1074. ..B2.100:
  1075. movl %eax, 224(%esp)
  1076. movl 136(%esp), %edx
  1077. movl 144(%esp), %eax
  1078. movl 148(%esp), %ecx
  1079. movl 152(%esp), %ebx
  1080. movl 156(%esp), %esi
  1081. movl 80(%esp), %edi
  1082. movl %edx, 220(%esp)
  1083. movl %eax, 228(%esp)
  1084. movl %ecx, 232(%esp)
  1085. movl %ebx, 236(%esp)
  1086. movl %esi, 240(%esp)
  1087. movl %edi, 244(%esp)
  1088. ..B2.101:
  1089. movzwl 228(%esp), %eax
  1090. andl $32767, %eax
  1091. cmpl $8383, %eax
  1092. jl ..B2.103
  1093. ..B2.102:
  1094. cmpl $24383, %eax
  1095. jle ..B2.105
  1096. ..B2.103:
  1097. addl $4, %esp
  1098. lea 216(%esp), %ebx
  1099. pushl %ebx
  1100. call __libm_normalizel_k80
  1101. ..B2.104:
  1102. addl $4, %esp
  1103. pushl %ebx
  1104. call __libm_normalizel_k80
  1105. ..B2.105:
  1106. fldt 220(%esp)
  1107. fld %st(0)
  1108. fld %st(1)
  1109. fldt 48(%esp)
  1110. fldt 232(%esp)
  1111. fxch %st(1)
  1112. fmul %st(4), %st
  1113. movl 244(%esp), %ebx
  1114. fsubr %st, %st(3)
  1115. addl %ebx, %ebx
  1116. faddp %st, %st(3)
  1117. fld %st(2)
  1118. fmul %st(3), %st
  1119. fxch %st(2)
  1120. fsub %st(3), %st
  1121. fmul %st, %st(3)
  1122. movl %ebx, 272(%esp)
  1123. fxch %st(3)
  1124. fadd %st(0), %st
  1125. fld %st(0)
  1126. fadd %st(3), %st
  1127. fsub %st, %st(3)
  1128. fxch %st(3)
  1129. fchs
  1130. faddp %st, %st(1)
  1131. fxch %st(3)
  1132. fmul %st(0), %st
  1133. faddp %st, %st(3)
  1134. fmulp %st, %st(3)
  1135. fxch %st(2)
  1136. fadd %st(0), %st
  1137. faddp %st, %st(1)
  1138. fld %st(0)
  1139. fadd %st(2), %st
  1140. fstpt 248(%esp)
  1141. fldt 248(%esp)
  1142. fsubrp %st, %st(2)
  1143. movzwl 256(%esp), %ecx
  1144. fadd %st, %st(1)
  1145. movl %ecx, 84(%esp)
  1146. andl $32767, %ecx
  1147. fxch %st(1)
  1148. fstpt 260(%esp)
  1149. cmpl $8383, %ecx
  1150. fstpt 64(%esp)
  1151. jl ..B2.109
  1152. ..B2.106:
  1153. cmpl $24383, %ecx
  1154. jg ..B2.109
  1155. ..B2.107:
  1156. movzwl 284(%esp), %eax
  1157. movl %eax, 60(%esp)
  1158. andl $32767, %eax
  1159. cmpl $8383, %eax
  1160. jl ..B2.109
  1161. ..B2.108:
  1162. cmpl $24383, %eax
  1163. jle ..B2.112
  1164. ..B2.109:
  1165. addl $4, %esp
  1166. lea 244(%esp), %eax
  1167. pushl %eax
  1168. call __libm_normalizel_k80
  1169. ..B2.110:
  1170. addl $4, %esp
  1171. lea 272(%esp), %eax
  1172. pushl %eax
  1173. call __libm_normalizel_k80
  1174. ..B2.111:
  1175. movzwl 256(%esp), %ecx
  1176. movzwl 284(%esp), %eax
  1177. movl 272(%esp), %ebx
  1178. movl %ecx, 84(%esp)
  1179. andl $32767, %ecx
  1180. movl %eax, 60(%esp)
  1181. andl $32767, %eax
  1182. ..B2.112:
  1183. movl 300(%esp), %edx
  1184. lea (%ebx,%ecx), %esi
  1185. movl %esi, 80(%esp)
  1186. lea -134(%edx,%eax), %edi
  1187. cmpl %edi, %esi
  1188. jle ..B2.129
  1189. ..B2.113:
  1190. movl 252(%esp), %esi
  1191. lea 134(%edx,%eax), %edi
  1192. movl %esi, 44(%esp)
  1193. cmpl 80(%esp), %edi
  1194. jle ..B2.130
  1195. ..B2.114:
  1196. cmpl $0, 44(%esp)
  1197. jne ..B2.116
  1198. ..B2.115:
  1199. cmpl $0, 248(%esp)
  1200. je ..B2.131
  1201. ..B2.116:
  1202. cmpl $0, 280(%esp)
  1203. jne ..B2.118
  1204. ..B2.117:
  1205. cmpl $0, 276(%esp)
  1206. je ..B2.130
  1207. ..B2.118:
  1208. cmpl %edx, %ebx
  1209. je ..B2.120
  1210. ..B2.119:
  1211. fldt 64(%esp)
  1212. subl %edx, %ebx
  1213. fstpt 32(%esp)
  1214. addl $16383, %ebx
  1215. fldt 248(%esp)
  1216. andl $32767, %ebx
  1217. fldt 260(%esp)
  1218. andb $127, 41(%esp)
  1219. movzwl 40(%esp), %eax
  1220. andl $-32768, %eax
  1221. orl %ebx, %eax
  1222. movw %ax, 40(%esp)
  1223. movl $-2147483648, 36(%esp)
  1224. movl $0, 32(%esp)
  1225. fldt 32(%esp)
  1226. fmul %st, %st(2)
  1227. movl %edx, 272(%esp)
  1228. fxch %st(2)
  1229. fstpt 248(%esp)
  1230. fldt 248(%esp)
  1231. fxch %st(2)
  1232. fmulp %st, %st(1)
  1233. fstpt 260(%esp)
  1234. fldt 260(%esp)
  1235. movzwl 256(%esp), %ecx
  1236. movl %ecx, 84(%esp)
  1237. jmp ..B2.121
  1238. ..B2.120:
  1239. fldt 248(%esp)
  1240. fldt 260(%esp)
  1241. ..B2.121:
  1242. fldt 276(%esp)
  1243. fld %st(2)
  1244. movl 84(%esp), %eax
  1245. fadd %st(1), %st
  1246. movl 60(%esp), %ecx
  1247. andl $32767, %eax
  1248. andl $32767, %ecx
  1249. movl %edx, 356(%esp)
  1250. cmpl %ecx, %eax
  1251. jg ..B2.126
  1252. ..B2.122:
  1253. jne ..B2.127
  1254. ..B2.123:
  1255. movl 252(%esp), %eax
  1256. movl 280(%esp), %ecx
  1257. cmpl %ecx, %eax
  1258. ja ..B2.126
  1259. ..B2.124:
  1260. jne ..B2.127
  1261. ..B2.125:
  1262. movl 248(%esp), %eax
  1263. cmpl 276(%esp), %eax
  1264. jbe ..B2.127
  1265. ..B2.126:
  1266. fsubr %st, %st(3)
  1267. fxch %st(1)
  1268. faddp %st, %st(3)
  1269. fldt 288(%esp)
  1270. faddp %st, %st(3)
  1271. fxch %st(1)
  1272. faddp %st, %st(2)
  1273. fxch %st(1)
  1274. jmp ..B2.128
  1275. ..B2.127:
  1276. fsubr %st, %st(1)
  1277. fxch %st(3)
  1278. faddp %st, %st(1)
  1279. faddp %st, %st(1)
  1280. fldt 288(%esp)
  1281. faddp %st, %st(1)
  1282. ..B2.128:
  1283. fld %st(0)
  1284. fadd %st(2), %st
  1285. fstpt 332(%esp)
  1286. fldt 332(%esp)
  1287. fsubrp %st, %st(2)
  1288. faddp %st, %st(1)
  1289. fstpt 344(%esp)
  1290. jmp ..B2.135
  1291. ..B2.129:
  1292. movl 252(%esp), %esi
  1293. movl %esi, 44(%esp)
  1294. ..B2.130:
  1295. cmpl $0, 44(%esp)
  1296. jne ..B2.132
  1297. ..B2.163:
  1298. cmpl $0, 248(%esp)
  1299. ..B2.131:
  1300. je ..B2.133
  1301. ..B2.132:
  1302. lea -16517(%edx,%eax), %eax
  1303. lea -16383(%ebx,%ecx), %ecx
  1304. cmpl %ecx, %eax
  1305. jl ..B2.134
  1306. ..B2.133:
  1307. movl 276(%esp), %eax
  1308. movl %eax, 332(%esp)
  1309. movl 280(%esp), %ecx
  1310. movl 284(%esp), %ebx
  1311. movl 288(%esp), %esi
  1312. movl 292(%esp), %edi
  1313. movl 296(%esp), %eax
  1314. movl %ecx, 336(%esp)
  1315. movl %ebx, 340(%esp)
  1316. movl %esi, 344(%esp)
  1317. movl %edi, 348(%esp)
  1318. movl %eax, 352(%esp)
  1319. movl %edx, 356(%esp)
  1320. jmp ..B2.135
  1321. ..B2.134:
  1322. movl %esi, %edx
  1323. movl %edx, 336(%esp)
  1324. movl 248(%esp), %eax
  1325. movl 256(%esp), %ecx
  1326. movl 260(%esp), %ebx
  1327. movl 264(%esp), %esi
  1328. movl 268(%esp), %edi
  1329. movl 272(%esp), %edx
  1330. movl %eax, 332(%esp)
  1331. movl %ecx, 340(%esp)
  1332. movl %ebx, 344(%esp)
  1333. movl %esi, 348(%esp)
  1334. movl %edi, 352(%esp)
  1335. movl %edx, 356(%esp)
  1336. ..B2.135:
  1337. movzwl 312(%esp), %esi
  1338. movzwl 340(%esp), %eax
  1339. andl $32767, %esi
  1340. andl $32767, %eax
  1341. movl 328(%esp), %edi
  1342. lea (%edi,%esi), %ebx
  1343. lea (%edx,%eax), %ecx
  1344. subl %ecx, %ebx
  1345. cmpl $-1, %ebx
  1346. jge ..B2.145
  1347. ..B2.136:
  1348. cmpl $8383, %esi
  1349. jl ..B2.140
  1350. ..B2.137:
  1351. cmpl $24383, %esi
  1352. jg ..B2.140
  1353. ..B2.138:
  1354. cmpl $8383, %eax
  1355. jl ..B2.140
  1356. ..B2.139:
  1357. cmpl $24383, %eax
  1358. jle ..B2.143
  1359. ..B2.140:
  1360. addl $4, %esp
  1361. lea 300(%esp), %eax
  1362. pushl %eax
  1363. call __libm_normalizel_k80
  1364. ..B2.141:
  1365. addl $4, %esp
  1366. lea 328(%esp), %eax
  1367. pushl %eax
  1368. call __libm_normalizel_k80
  1369. ..B2.142:
  1370. movl 328(%esp), %edi
  1371. movl 356(%esp), %edx
  1372. ..B2.143:
  1373. fldt 332(%esp)
  1374. subl %edx, %edi
  1375. fld %st(0)
  1376. fld %st(1)
  1377. fldt 304(%esp)
  1378. fld %st(0)
  1379. fdiv %st(4), %st
  1380. fldt 48(%esp)
  1381. fld %st(0)
  1382. fmul %st(2), %st
  1383. fld %st(0)
  1384. movl %edi, 104(%esp)
  1385. fsubr %st(3), %st
  1386. faddp %st, %st(1)
  1387. fld %st(0)
  1388. fsubr %st(3), %st
  1389. fxch %st(2)
  1390. fmul %st(7), %st
  1391. fsubr %st, %st(6)
  1392. faddp %st, %st(6)
  1393. fxch %st(4)
  1394. fsub %st(5), %st
  1395. fld %st(4)
  1396. fmul %st(6), %st
  1397. fxch %st(2)
  1398. fmul %st, %st(6)
  1399. fxch %st(1)
  1400. fmul %st, %st(5)
  1401. fxch %st(6)
  1402. faddp %st, %st(5)
  1403. fld %st(4)
  1404. fadd %st(2), %st
  1405. fsubr %st, %st(2)
  1406. fxch %st(2)
  1407. faddp %st, %st(5)
  1408. fmulp %st, %st(5)
  1409. fxch %st(4)
  1410. faddp %st, %st(3)
  1411. fxch %st(3)
  1412. fsubrp %st, %st(1)
  1413. fsubp %st, %st(1)
  1414. fldt 316(%esp)
  1415. faddp %st, %st(1)
  1416. fldt 344(%esp)
  1417. fmul %st(2), %st
  1418. fsubrp %st, %st(1)
  1419. fdivp %st, %st(2)
  1420. fld %st(1)
  1421. fadd %st(1), %st
  1422. fstpt 80(%esp)
  1423. fldt 80(%esp)
  1424. fsubrp %st, %st(1)
  1425. fxch %st(1)
  1426. fstpt 32(%esp)
  1427. fldt 32(%esp)
  1428. faddp %st, %st(1)
  1429. fstpt 92(%esp)
  1430. addl $8, %esp
  1431. lea 72(%esp), %eax
  1432. lea 352(%esp), %edx
  1433. pushl %eax
  1434. pushl %edx
  1435. call __libm_log_k80
  1436. jmp ..B2.153
  1437. ..B2.145:
  1438. movzwl 144(%esp), %ecx
  1439. andl $32767, %ecx
  1440. cmpl $8383, %ecx
  1441. jl ..B2.149
  1442. ..B2.146:
  1443. cmpl $24383, %ecx
  1444. jg ..B2.149
  1445. ..B2.147:
  1446. cmpl $8383, %eax
  1447. jl ..B2.149
  1448. ..B2.148:
  1449. cmpl $24383, %eax
  1450. jle ..B2.152
  1451. ..B2.149:
  1452. addl $4, %esp
  1453. lea 132(%esp), %eax
  1454. pushl %eax
  1455. call __libm_normalizel_k80
  1456. ..B2.150:
  1457. addl $4, %esp
  1458. lea 328(%esp), %eax
  1459. pushl %eax
  1460. call __libm_normalizel_k80
  1461. ..B2.151:
  1462. movl 356(%esp), %edx
  1463. ..B2.152:
  1464. fldt 136(%esp)
  1465. fld %st(0)
  1466. fldt 332(%esp)
  1467. fdivr %st, %st(1)
  1468. fld %st(0)
  1469. fld %st(1)
  1470. fldt 48(%esp)
  1471. fld %st(0)
  1472. fmul %st(5), %st
  1473. fld %st(0)
  1474. movl 160(%esp), %eax
  1475. fsubr %st(6), %st
  1476. subl %edx, %eax
  1477. faddp %st, %st(1)
  1478. fld %st(0)
  1479. addl $2, %eax
  1480. movl %eax, 132(%esp)
  1481. fsubr %st(6), %st
  1482. fxch %st(2)
  1483. fmul %st(5), %st
  1484. fsubr %st, %st(4)
  1485. faddp %st, %st(4)
  1486. fxch %st(2)
  1487. fsub %st(3), %st
  1488. fld %st(2)
  1489. fmul %st(4), %st
  1490. fxch %st(2)
  1491. fmul %st, %st(4)
  1492. fxch %st(1)
  1493. fmul %st, %st(3)
  1494. fxch %st(4)
  1495. faddp %st, %st(3)
  1496. fld %st(2)
  1497. fadd %st(2), %st
  1498. fsubr %st, %st(2)
  1499. fxch %st(2)
  1500. faddp %st, %st(3)
  1501. fmulp %st, %st(3)
  1502. fxch %st(2)
  1503. faddp %st, %st(1)
  1504. fxch %st(1)
  1505. fsubrp %st, %st(4)
  1506. fsubrp %st, %st(3)
  1507. fldt 148(%esp)
  1508. faddp %st, %st(3)
  1509. fldt 344(%esp)
  1510. fmul %st(2), %st
  1511. fsubrp %st, %st(3)
  1512. fdivrp %st, %st(2)
  1513. fld %st(1)
  1514. fadd %st(1), %st
  1515. fstpt 108(%esp)
  1516. fldt 108(%esp)
  1517. fsubrp %st, %st(1)
  1518. fadd %st(1), %st
  1519. fstpt 120(%esp)
  1520. fstpt 32(%esp)
  1521. addl $8, %esp
  1522. lea 100(%esp), %edx
  1523. lea 352(%esp), %ecx
  1524. pushl %edx
  1525. pushl %ecx
  1526. call __libm_log1p_k80
  1527. ..B2.153:
  1528. movl 384(%esp), %eax
  1529. addl $-2, %eax
  1530. movl %eax, 384(%esp)
  1531. ..B2.154:
  1532. fldt 360(%esp)
  1533. fstpt (%esp)
  1534. fldt 372(%esp)
  1535. fstpt 12(%esp)
  1536. movl %eax, 24(%esp)
  1537. call __libm_scalbl_k80
  1538. ..B2.155:
  1539. movl 388(%esp), %eax
  1540. xorl %esp, %eax
  1541. cmpl %gs:20, %eax
  1542. jne ..B2.157
  1543. ..B2.156:
  1544. addl $436, %esp
  1545. popl %ebx
  1546. popl %edi
  1547. popl %esi
  1548. movl %ebp, %esp
  1549. popl %ebp
  1550. ret
  1551. ..B2.157:
  1552. fstp %st(0)
  1553. movl 76(%esp), %ebx
  1554. call __stack_chk_fail@PLT
  1555. .align 16,0x90
  1556. .type recatanhl,@function
  1557. .size recatanhl,.-recatanhl
  1558. .data
  1559. # -- End recatanhl
  1560. .text
  1561. # -- Begin imcatanhl
  1562. .text
  1563. .align 16,0x90
  1564. imcatanhl:
  1565. # parameter 1: 8 + %ebp
  1566. # parameter 2: 20 + %ebp
  1567. ..B3.1:
  1568. ..L5:
  1569. pushl %ebp
  1570. movl %esp, %ebp
  1571. andl $-64, %esp
  1572. pushl %esi
  1573. pushl %edi
  1574. pushl %ebx
  1575. subl $436, %esp
  1576. fldt 8(%ebp)
  1577. movzbl 17(%ebp), %esi
  1578. andl $128, %esi
  1579. call ..L6
  1580. ..L6:
  1581. popl %eax
  1582. lea _GLOBAL_OFFSET_TABLE_+[. - ..L6](%eax), %eax
  1583. shrl $7, %esi
  1584. movl %eax, 88(%esp)
  1585. fldt 48+_CONSTANTS@GOTOFF(%eax)
  1586. movl %gs:20, %edx
  1587. xorl %esp, %edx
  1588. lea (,%esi,8), %ebx
  1589. movl %edx, 428(%esp)
  1590. lea (%ebx,%esi,4), %edi
  1591. fldt _CONSTANTS@GOTOFF(%eax,%edi)
  1592. movzbl 29(%ebp), %edx
  1593. andl $128, %edx
  1594. shrl $7, %edx
  1595. fmulp %st, %st(2)
  1596. movl $0, 256(%esp)
  1597. lea (,%edx,8), %ecx
  1598. fxch %st(1)
  1599. fstpt 232(%esp)
  1600. lea (%ecx,%edx,4), %ecx
  1601. fstpt 32(%esp)
  1602. fldt 32(%esp)
  1603. fstpt 244(%esp)
  1604. fldt 24+_CONSTANTS@GOTOFF(%eax,%ecx)
  1605. fstpt 48(%esp)
  1606. addl $4, %esp
  1607. lea 228(%esp), %eax
  1608. pushl %eax
  1609. call __libm_normalizel_k80
  1610. ..B3.2:
  1611. fldt 20(%ebp)
  1612. fldt 32(%esp)
  1613. movzbl 29(%ebp), %edx
  1614. andl $128, %edx
  1615. shrl $7, %edx
  1616. movl 88(%esp), %ecx
  1617. movl $0, 284(%esp)
  1618. fstpt 272(%esp)
  1619. lea (,%edx,8), %eax
  1620. lea (%eax,%edx,4), %ebx
  1621. fldt _CONSTANTS@GOTOFF(%ecx,%ebx)
  1622. fmulp %st, %st(1)
  1623. fstpt 260(%esp)
  1624. addl $4, %esp
  1625. lea 256(%esp), %esi
  1626. pushl %esi
  1627. call __libm_normalizel_k80
  1628. ..B3.3:
  1629. fldt 32(%esp)
  1630. movl 88(%esp), %eax
  1631. movl $0, 312(%esp)
  1632. fstpt 300(%esp)
  1633. fldt _CONSTANTS@GOTOFF(%eax)
  1634. movzwl 240(%esp), %eax
  1635. andl $32767, %eax
  1636. fstpt 288(%esp)
  1637. cmpl $8383, %eax
  1638. jl ..B3.5
  1639. ..B3.4:
  1640. cmpl $24383, %eax
  1641. jle ..B3.7
  1642. ..B3.5:
  1643. addl $4, %esp
  1644. lea 228(%esp), %eax
  1645. pushl %eax
  1646. call __libm_normalizel_k80
  1647. ..B3.6:
  1648. addl $4, %esp
  1649. lea 228(%esp), %eax
  1650. pushl %eax
  1651. call __libm_normalizel_k80
  1652. ..B3.7:
  1653. fldt 232(%esp)
  1654. movl 88(%esp), %edx
  1655. fld %st(0)
  1656. fld %st(1)
  1657. fld %st(2)
  1658. fld %st(3)
  1659. fldt 60+_CONSTANTS@GOTOFF(%edx)
  1660. fmul %st, %st(4)
  1661. movl 256(%esp), %eax
  1662. fxch %st(3)
  1663. fsubr %st(4), %st
  1664. fld %st(0)
  1665. addl %eax, %eax
  1666. fchs
  1667. movl %eax, 340(%esp)
  1668. fadd %st(5), %st
  1669. fld %st(0)
  1670. fxch %st(2)
  1671. fsubrp %st, %st(6)
  1672. fxch %st(1)
  1673. fmul %st(5), %st
  1674. fxch %st(1)
  1675. fsubr %st, %st(3)
  1676. fxch %st(2)
  1677. fsub %st(5), %st
  1678. fmul %st, %st(2)
  1679. fxch %st(3)
  1680. fmul %st, %st(5)
  1681. movzwl 268(%esp), %eax
  1682. fxch %st(5)
  1683. faddp %st, %st(2)
  1684. fxch %st(4)
  1685. fmulp %st, %st(2)
  1686. fxch %st(2)
  1687. fstpt 32(%esp)
  1688. fld %st(1)
  1689. andl $32767, %eax
  1690. fadd %st(3), %st
  1691. cmpl $8383, %eax
  1692. fsubr %st, %st(3)
  1693. fxch %st(2)
  1694. faddp %st, %st(3)
  1695. faddp %st, %st(2)
  1696. fldt 244(%esp)
  1697. fmulp %st, %st(3)
  1698. fxch %st(2)
  1699. fadd %st(0), %st
  1700. faddp %st, %st(1)
  1701. fld %st(0)
  1702. fadd %st(2), %st
  1703. fstpt 316(%esp)
  1704. fldt 316(%esp)
  1705. fsubrp %st, %st(2)
  1706. faddp %st, %st(1)
  1707. fstpt 328(%esp)
  1708. jl ..B3.9
  1709. ..B3.8:
  1710. cmpl $24383, %eax
  1711. jle ..B3.11
  1712. ..B3.9:
  1713. addl $4, %esp
  1714. lea 256(%esp), %eax
  1715. pushl %eax
  1716. call __libm_normalizel_k80
  1717. ..B3.10:
  1718. addl $4, %esp
  1719. lea 256(%esp), %eax
  1720. pushl %eax
  1721. call __libm_normalizel_k80
  1722. ..B3.11:
  1723. fldt 260(%esp)
  1724. fld %st(0)
  1725. fld %st(1)
  1726. fldt 32(%esp)
  1727. fmul %st(3), %st
  1728. movzwl 296(%esp), %ebx
  1729. movl %ebx, %esi
  1730. andl $32767, %esi
  1731. fsubr %st, %st(2)
  1732. movl 284(%esp), %eax
  1733. faddp %st, %st(2)
  1734. fld %st(1)
  1735. addl %eax, %eax
  1736. fmul %st(2), %st
  1737. fxch %st(1)
  1738. fsub %st(2), %st
  1739. fmul %st, %st(2)
  1740. cmpl $8383, %esi
  1741. movl %eax, 368(%esp)
  1742. fxch %st(2)
  1743. fadd %st(0), %st
  1744. fld %st(0)
  1745. fadd %st(2), %st
  1746. fsubr %st, %st(2)
  1747. fxch %st(1)
  1748. faddp %st, %st(2)
  1749. fxch %st(2)
  1750. fmul %st(0), %st
  1751. faddp %st, %st(1)
  1752. fldt 272(%esp)
  1753. fmulp %st, %st(3)
  1754. fxch %st(2)
  1755. fadd %st(0), %st
  1756. faddp %st, %st(2)
  1757. fld %st(1)
  1758. fadd %st(1), %st
  1759. fstpt 344(%esp)
  1760. fldt 344(%esp)
  1761. fsubrp %st, %st(1)
  1762. fadd %st(1), %st
  1763. fstpt 356(%esp)
  1764. fstpt 64(%esp)
  1765. jl ..B3.15
  1766. ..B3.12:
  1767. cmpl $24383, %esi
  1768. jg ..B3.15
  1769. ..B3.13:
  1770. movzwl 324(%esp), %ecx
  1771. movl %ecx, 44(%esp)
  1772. andl $32767, %ecx
  1773. cmpl $8383, %ecx
  1774. jl ..B3.15
  1775. ..B3.14:
  1776. cmpl $24383, %ecx
  1777. jle ..B3.18
  1778. ..B3.15:
  1779. addl $4, %esp
  1780. lea 284(%esp), %eax
  1781. pushl %eax
  1782. call __libm_normalizel_k80
  1783. ..B3.16:
  1784. addl $4, %esp
  1785. lea 312(%esp), %eax
  1786. pushl %eax
  1787. call __libm_normalizel_k80
  1788. ..B3.17:
  1789. movzwl 296(%esp), %ebx
  1790. movl %ebx, %esi
  1791. movzwl 324(%esp), %ecx
  1792. andl $32767, %esi
  1793. movl %ecx, 44(%esp)
  1794. andl $32767, %ecx
  1795. ..B3.18:
  1796. movl 312(%esp), %eax
  1797. movl 340(%esp), %edx
  1798. movl %eax, 60(%esp)
  1799. lea (%esi,%eax), %edi
  1800. movl %edi, 32(%esp)
  1801. lea -134(%edx,%ecx), %eax
  1802. cmpl %eax, %edi
  1803. jle ..B3.35
  1804. ..B3.19:
  1805. movl 292(%esp), %eax
  1806. lea 134(%edx,%ecx), %edi
  1807. cmpl 32(%esp), %edi
  1808. jle ..B3.36
  1809. ..B3.20:
  1810. testl %eax, %eax
  1811. jne ..B3.22
  1812. ..B3.21:
  1813. cmpl $0, 288(%esp)
  1814. je ..B3.37
  1815. ..B3.22:
  1816. cmpl $0, 320(%esp)
  1817. jne ..B3.24
  1818. ..B3.23:
  1819. cmpl $0, 316(%esp)
  1820. je ..B3.36
  1821. ..B3.24:
  1822. cmpl 60(%esp), %edx
  1823. je ..B3.26
  1824. ..B3.25:
  1825. fldt 64(%esp)
  1826. movl 60(%esp), %eax
  1827. fstpt 32(%esp)
  1828. subl %edx, %eax
  1829. fldt 288(%esp)
  1830. addl $16383, %eax
  1831. fldt 300(%esp)
  1832. andl $32767, %eax
  1833. andb $127, 41(%esp)
  1834. movzwl 40(%esp), %ecx
  1835. andl $-32768, %ecx
  1836. orl %eax, %ecx
  1837. movw %cx, 40(%esp)
  1838. movl $-2147483648, 36(%esp)
  1839. movl $0, 32(%esp)
  1840. fldt 32(%esp)
  1841. fmul %st, %st(2)
  1842. movl %edx, 312(%esp)
  1843. fxch %st(2)
  1844. fstpt 288(%esp)
  1845. fldt 288(%esp)
  1846. fxch %st(2)
  1847. fmulp %st, %st(1)
  1848. fstpt 300(%esp)
  1849. fldt 300(%esp)
  1850. fxch %st(1)
  1851. fstpt 64(%esp)
  1852. movzwl 296(%esp), %ebx
  1853. jmp ..B3.27
  1854. ..B3.26:
  1855. fldt 288(%esp)
  1856. fstpt 64(%esp)
  1857. fldt 300(%esp)
  1858. ..B3.27:
  1859. fldt 316(%esp)
  1860. andl $32767, %ebx
  1861. fldt 64(%esp)
  1862. movl 44(%esp), %eax
  1863. andl $32767, %eax
  1864. fsub %st(1), %st
  1865. movl %edx, 396(%esp)
  1866. cmpl %eax, %ebx
  1867. jg ..B3.32
  1868. ..B3.28:
  1869. jne ..B3.33
  1870. ..B3.29:
  1871. movl 292(%esp), %eax
  1872. movl 320(%esp), %edx
  1873. cmpl %edx, %eax
  1874. ja ..B3.32
  1875. ..B3.30:
  1876. jne ..B3.33
  1877. ..B3.31:
  1878. movl 288(%esp), %eax
  1879. cmpl 316(%esp), %eax
  1880. jbe ..B3.33
  1881. ..B3.32:
  1882. fldt 64(%esp)
  1883. fsub %st(1), %st
  1884. fsubp %st, %st(2)
  1885. fldt 328(%esp)
  1886. fsubrp %st, %st(2)
  1887. fxch %st(2)
  1888. faddp %st, %st(1)
  1889. fstpt 64(%esp)
  1890. jmp ..B3.34
  1891. ..B3.33:
  1892. fldt 64(%esp)
  1893. fxch %st(1)
  1894. fadd %st, %st(2)
  1895. fxch %st(2)
  1896. fsubrp %st, %st(1)
  1897. faddp %st, %st(2)
  1898. fldt 328(%esp)
  1899. fsubrp %st, %st(2)
  1900. fxch %st(1)
  1901. fstpt 64(%esp)
  1902. ..B3.34:
  1903. fldt 64(%esp)
  1904. fld %st(0)
  1905. fadd %st(2), %st
  1906. fstpt 372(%esp)
  1907. fldt 372(%esp)
  1908. fsubrp %st, %st(2)
  1909. faddp %st, %st(1)
  1910. fstpt 384(%esp)
  1911. jmp ..B3.41
  1912. ..B3.35:
  1913. movl 292(%esp), %eax
  1914. ..B3.36:
  1915. testl %eax, %eax
  1916. jne ..B3.38
  1917. ..B3.179:
  1918. cmpl $0, 288(%esp)
  1919. ..B3.37:
  1920. je ..B3.39
  1921. ..B3.38:
  1922. lea -16517(%edx,%ecx), %ebx
  1923. movl 60(%esp), %ecx
  1924. lea -16383(%ecx,%esi), %esi
  1925. cmpl %esi, %ebx
  1926. jl ..B3.40
  1927. ..B3.39:
  1928. fldt 316(%esp)
  1929. fchs
  1930. movl %edx, 396(%esp)
  1931. fstpt 372(%esp)
  1932. fldt 328(%esp)
  1933. fchs
  1934. fstpt 384(%esp)
  1935. jmp ..B3.41
  1936. ..B3.40:
  1937. movl %eax, 376(%esp)
  1938. movl 288(%esp), %edx
  1939. movl 296(%esp), %eax
  1940. movl 300(%esp), %ecx
  1941. movl 304(%esp), %ebx
  1942. movl 308(%esp), %esi
  1943. movl 60(%esp), %edi
  1944. movl %edx, 372(%esp)
  1945. movl %eax, 380(%esp)
  1946. movl %ecx, 384(%esp)
  1947. movl %ebx, 388(%esp)
  1948. movl %esi, 392(%esp)
  1949. movl %edi, 396(%esp)
  1950. ..B3.41:
  1951. movzwl 380(%esp), %ebx
  1952. movl %ebx, %esi
  1953. andl $32767, %esi
  1954. cmpl $8383, %esi
  1955. jl ..B3.45
  1956. ..B3.42:
  1957. cmpl $24383, %esi
  1958. jg ..B3.45
  1959. ..B3.43:
  1960. movzwl 352(%esp), %ecx
  1961. movl %ecx, 44(%esp)
  1962. andl $32767, %ecx
  1963. cmpl $8383, %ecx
  1964. jl ..B3.45
  1965. ..B3.44:
  1966. cmpl $24383, %ecx
  1967. jle ..B3.48
  1968. ..B3.45:
  1969. addl $4, %esp
  1970. lea 368(%esp), %eax
  1971. pushl %eax
  1972. call __libm_normalizel_k80
  1973. ..B3.46:
  1974. addl $4, %esp
  1975. lea 340(%esp), %eax
  1976. pushl %eax
  1977. call __libm_normalizel_k80
  1978. ..B3.47:
  1979. movzwl 380(%esp), %ebx
  1980. movl %ebx, %esi
  1981. movzwl 352(%esp), %ecx
  1982. andl $32767, %esi
  1983. movl %ecx, 44(%esp)
  1984. andl $32767, %ecx
  1985. ..B3.48:
  1986. movl 368(%esp), %edx
  1987. movl 396(%esp), %eax
  1988. movl %eax, 76(%esp)
  1989. lea (%esi,%eax), %edi
  1990. movl %edi, 60(%esp)
  1991. lea -134(%edx,%ecx), %eax
  1992. cmpl %eax, %edi
  1993. jle ..B3.65
  1994. ..B3.49:
  1995. movl 376(%esp), %eax
  1996. lea 134(%edx,%ecx), %edi
  1997. cmpl 60(%esp), %edi
  1998. jle ..B3.66
  1999. ..B3.50:
  2000. testl %eax, %eax
  2001. jne ..B3.52
  2002. ..B3.51:
  2003. cmpl $0, 372(%esp)
  2004. je ..B3.67
  2005. ..B3.52:
  2006. cmpl $0, 348(%esp)
  2007. jne ..B3.54
  2008. ..B3.53:
  2009. cmpl $0, 344(%esp)
  2010. je ..B3.66
  2011. ..B3.54:
  2012. cmpl 76(%esp), %edx
  2013. je ..B3.56
  2014. ..B3.55:
  2015. fldt 64(%esp)
  2016. movl 76(%esp), %eax
  2017. fstpt 32(%esp)
  2018. subl %edx, %eax
  2019. fldt 372(%esp)
  2020. addl $16383, %eax
  2021. fldt 384(%esp)
  2022. andl $32767, %eax
  2023. andb $127, 41(%esp)
  2024. movzwl 40(%esp), %ecx
  2025. andl $-32768, %ecx
  2026. orl %eax, %ecx
  2027. movw %cx, 40(%esp)
  2028. movl $-2147483648, 36(%esp)
  2029. movl $0, 32(%esp)
  2030. fldt 32(%esp)
  2031. fmul %st, %st(2)
  2032. movl %edx, 396(%esp)
  2033. fxch %st(2)
  2034. fstpt 372(%esp)
  2035. fldt 372(%esp)
  2036. fxch %st(2)
  2037. fmulp %st, %st(1)
  2038. fstpt 384(%esp)
  2039. fldt 384(%esp)
  2040. fstpt 64(%esp)
  2041. movzwl 380(%esp), %ebx
  2042. jmp ..B3.57
  2043. ..B3.56:
  2044. fldt 372(%esp)
  2045. fldt 384(%esp)
  2046. fstpt 64(%esp)
  2047. ..B3.57:
  2048. fldt 344(%esp)
  2049. andl $32767, %ebx
  2050. movl 44(%esp), %eax
  2051. fld %st(1)
  2052. andl $32767, %eax
  2053. fsub %st(1), %st
  2054. movl %edx, 424(%esp)
  2055. cmpl %eax, %ebx
  2056. jg ..B3.62
  2057. ..B3.58:
  2058. jne ..B3.63
  2059. ..B3.59:
  2060. movl 376(%esp), %eax
  2061. movl 348(%esp), %ecx
  2062. cmpl %ecx, %eax
  2063. ja ..B3.62
  2064. ..B3.60:
  2065. jne ..B3.63
  2066. ..B3.61:
  2067. movl 372(%esp), %eax
  2068. cmpl 344(%esp), %eax
  2069. jbe ..B3.63
  2070. ..B3.62:
  2071. fldt 64(%esp)
  2072. fxch %st(1)
  2073. fsubr %st, %st(3)
  2074. fxch %st(2)
  2075. fsubrp %st, %st(3)
  2076. fldt 356(%esp)
  2077. fsubrp %st, %st(3)
  2078. faddp %st, %st(2)
  2079. fxch %st(1)
  2080. fstpt 64(%esp)
  2081. jmp ..B3.64
  2082. ..B3.63:
  2083. fldt 356(%esp)
  2084. fxch %st(1)
  2085. fadd %st, %st(2)
  2086. fxch %st(2)
  2087. fsubrp %st, %st(3)
  2088. fldt 64(%esp)
  2089. faddp %st, %st(3)
  2090. fsubrp %st, %st(2)
  2091. fxch %st(1)
  2092. fstpt 64(%esp)
  2093. ..B3.64:
  2094. fldt 64(%esp)
  2095. fld %st(0)
  2096. fadd %st(2), %st
  2097. fstpt 400(%esp)
  2098. fldt 400(%esp)
  2099. fsubrp %st, %st(2)
  2100. faddp %st, %st(1)
  2101. fstpt 412(%esp)
  2102. jmp ..B3.71
  2103. ..B3.65:
  2104. movl 376(%esp), %eax
  2105. ..B3.66:
  2106. testl %eax, %eax
  2107. jne ..B3.68
  2108. ..B3.180:
  2109. cmpl $0, 372(%esp)
  2110. ..B3.67:
  2111. je ..B3.69
  2112. ..B3.68:
  2113. lea -16517(%edx,%ecx), %ebx
  2114. movl 76(%esp), %ecx
  2115. lea -16383(%ecx,%esi), %esi
  2116. cmpl %esi, %ebx
  2117. jl ..B3.70
  2118. ..B3.69:
  2119. fldt 344(%esp)
  2120. fchs
  2121. movl %edx, 424(%esp)
  2122. fstpt 400(%esp)
  2123. fldt 356(%esp)
  2124. fchs
  2125. fstpt 412(%esp)
  2126. jmp ..B3.71
  2127. ..B3.70:
  2128. movl 372(%esp), %edx
  2129. movl %edx, 400(%esp)
  2130. movl %eax, 404(%esp)
  2131. movl 380(%esp), %eax
  2132. movl 384(%esp), %ecx
  2133. movl 388(%esp), %ebx
  2134. movl 392(%esp), %esi
  2135. movl 76(%esp), %edx
  2136. movl %eax, 408(%esp)
  2137. movl %ecx, 412(%esp)
  2138. movl %ebx, 416(%esp)
  2139. movl %esi, 420(%esp)
  2140. movl %edx, 424(%esp)
  2141. ..B3.71:
  2142. movzwl 408(%esp), %eax
  2143. andl $32767, %eax
  2144. lea -16383(%edx,%eax), %edx
  2145. cmpl $-6, %edx
  2146. jge ..B3.164
  2147. ..B3.72:
  2148. movzwl 296(%esp), %esi
  2149. movl %esi, 84(%esp)
  2150. andl $32767, %esi
  2151. cmpl $8383, %esi
  2152. jl ..B3.76
  2153. ..B3.73:
  2154. cmpl $24383, %esi
  2155. jg ..B3.76
  2156. ..B3.74:
  2157. movzwl 240(%esp), %eax
  2158. movl %eax, 60(%esp)
  2159. andl $32767, %eax
  2160. movl %eax, 76(%esp)
  2161. cmpl $8383, %eax
  2162. jl ..B3.76
  2163. ..B3.75:
  2164. cmpl $24383, 76(%esp)
  2165. jle ..B3.79
  2166. ..B3.76:
  2167. addl $4, %esp
  2168. lea 284(%esp), %eax
  2169. pushl %eax
  2170. call __libm_normalizel_k80
  2171. ..B3.77:
  2172. addl $4, %esp
  2173. lea 228(%esp), %eax
  2174. pushl %eax
  2175. call __libm_normalizel_k80
  2176. ..B3.78:
  2177. movzwl 240(%esp), %eax
  2178. movzwl 296(%esp), %esi
  2179. movl %eax, 60(%esp)
  2180. andl $32767, %eax
  2181. movl %eax, 76(%esp)
  2182. movl %esi, 84(%esp)
  2183. andl $32767, %esi
  2184. ..B3.79:
  2185. movl 256(%esp), %ecx
  2186. movl 312(%esp), %edx
  2187. lea (%eax,%ecx), %ebx
  2188. lea -134(%ecx,%eax), %edi
  2189. movl %edi, 80(%esp)
  2190. lea (%esi,%edx), %eax
  2191. cmpl %eax, %edi
  2192. jge ..B3.96
  2193. ..B3.80:
  2194. movl 292(%esp), %edi
  2195. movl %edi, 44(%esp)
  2196. movl 76(%esp), %edi
  2197. lea 134(%ecx,%edi), %edi
  2198. cmpl %edi, %eax
  2199. jge ..B3.97
  2200. ..B3.81:
  2201. cmpl $0, 44(%esp)
  2202. jne ..B3.83
  2203. ..B3.82:
  2204. cmpl $0, 288(%esp)
  2205. je ..B3.98
  2206. ..B3.83:
  2207. cmpl $0, 236(%esp)
  2208. jne ..B3.85
  2209. ..B3.84:
  2210. cmpl $0, 232(%esp)
  2211. je ..B3.97
  2212. ..B3.85:
  2213. cmpl %ecx, %edx
  2214. je ..B3.87
  2215. ..B3.86:
  2216. fldt 64(%esp)
  2217. subl %ecx, %edx
  2218. fstpt 32(%esp)
  2219. addl $16383, %edx
  2220. fldt 288(%esp)
  2221. andl $32767, %edx
  2222. fldt 300(%esp)
  2223. andb $127, 41(%esp)
  2224. movzwl 40(%esp), %eax
  2225. andl $-32768, %eax
  2226. orl %edx, %eax
  2227. movl %ecx, %edx
  2228. movw %ax, 40(%esp)
  2229. movl $-2147483648, 36(%esp)
  2230. movl $0, 32(%esp)
  2231. fldt 32(%esp)
  2232. fmul %st, %st(2)
  2233. fxch %st(2)
  2234. fstpt 288(%esp)
  2235. fldt 288(%esp)
  2236. fxch %st(2)
  2237. fmulp %st, %st(1)
  2238. movzwl 296(%esp), %esi
  2239. movl %esi, 84(%esp)
  2240. andl $32767, %esi
  2241. movl %ecx, 312(%esp)
  2242. movl %esi, %eax
  2243. fstpt 300(%esp)
  2244. fldt 300(%esp)
  2245. jmp ..B3.88
  2246. ..B3.87:
  2247. fldt 288(%esp)
  2248. fldt 300(%esp)
  2249. movl 84(%esp), %eax
  2250. andl $32767, %eax
  2251. ..B3.88:
  2252. fldt 232(%esp)
  2253. fld %st(2)
  2254. movl 60(%esp), %edi
  2255. fadd %st(1), %st
  2256. andl $32767, %edi
  2257. movl %ecx, 116(%esp)
  2258. cmpl %edi, %eax
  2259. jg ..B3.93
  2260. ..B3.89:
  2261. jne ..B3.94
  2262. ..B3.90:
  2263. movl 292(%esp), %eax
  2264. movl 236(%esp), %edi
  2265. cmpl %edi, %eax
  2266. ja ..B3.93
  2267. ..B3.91:
  2268. jne ..B3.94
  2269. ..B3.92:
  2270. movl 288(%esp), %eax
  2271. cmpl 232(%esp), %eax
  2272. jbe ..B3.94
  2273. ..B3.93:
  2274. fsubr %st, %st(3)
  2275. fxch %st(3)
  2276. faddp %st, %st(1)
  2277. fldt 244(%esp)
  2278. faddp %st, %st(1)
  2279. faddp %st, %st(1)
  2280. fstpt 64(%esp)
  2281. jmp ..B3.95
  2282. ..B3.94:
  2283. fsubr %st, %st(1)
  2284. fxch %st(1)
  2285. faddp %st, %st(3)
  2286. fxch %st(1)
  2287. faddp %st, %st(2)
  2288. fldt 244(%esp)
  2289. faddp %st, %st(2)
  2290. fxch %st(1)
  2291. fstpt 64(%esp)
  2292. ..B3.95:
  2293. fldt 64(%esp)
  2294. fld %st(0)
  2295. fadd %st(2), %st
  2296. fstpt 92(%esp)
  2297. fldt 92(%esp)
  2298. fsubrp %st, %st(2)
  2299. faddp %st, %st(1)
  2300. fstpt 104(%esp)
  2301. jmp ..B3.102
  2302. ..B3.96:
  2303. movl 292(%esp), %eax
  2304. movl %eax, 44(%esp)
  2305. ..B3.97:
  2306. cmpl $0, 44(%esp)
  2307. jne ..B3.99
  2308. ..B3.178:
  2309. cmpl $0, 288(%esp)
  2310. ..B3.98:
  2311. je ..B3.100
  2312. ..B3.99:
  2313. movl 76(%esp), %eax
  2314. lea -16517(%ecx,%eax), %edi
  2315. lea -16383(%edx,%esi), %eax
  2316. cmpl %eax, %edi
  2317. jl ..B3.101
  2318. ..B3.100:
  2319. movl 232(%esp), %eax
  2320. movl 236(%esp), %edi
  2321. movl %eax, 92(%esp)
  2322. movl %edi, 96(%esp)
  2323. movl 240(%esp), %eax
  2324. movl 244(%esp), %edi
  2325. movl %eax, 100(%esp)
  2326. movl %edi, 104(%esp)
  2327. movl 248(%esp), %eax
  2328. movl 252(%esp), %edi
  2329. movl %eax, 108(%esp)
  2330. movl %edi, 112(%esp)
  2331. movl %ecx, 116(%esp)
  2332. jmp ..B3.102
  2333. ..B3.101:
  2334. movl 288(%esp), %eax
  2335. movl 44(%esp), %edi
  2336. movl %eax, 92(%esp)
  2337. movl %edi, 96(%esp)
  2338. movl 296(%esp), %eax
  2339. movl 300(%esp), %edi
  2340. movl %eax, 100(%esp)
  2341. movl %edi, 104(%esp)
  2342. movl 304(%esp), %eax
  2343. movl 308(%esp), %edi
  2344. movl %eax, 108(%esp)
  2345. movl %edi, 112(%esp)
  2346. movl %edx, 116(%esp)
  2347. ..B3.102:
  2348. cmpl $8383, %esi
  2349. jl ..B3.106
  2350. ..B3.103:
  2351. cmpl $24383, %esi
  2352. jg ..B3.106
  2353. ..B3.104:
  2354. cmpl $8383, 76(%esp)
  2355. jl ..B3.106
  2356. ..B3.105:
  2357. cmpl $24383, 76(%esp)
  2358. jle ..B3.109
  2359. ..B3.106:
  2360. addl $4, %esp
  2361. lea 284(%esp), %eax
  2362. pushl %eax
  2363. call __libm_normalizel_k80
  2364. ..B3.107:
  2365. addl $4, %esp
  2366. lea 228(%esp), %eax
  2367. pushl %eax
  2368. call __libm_normalizel_k80
  2369. ..B3.108:
  2370. movzwl 240(%esp), %eax
  2371. movl %eax, 60(%esp)
  2372. andl $32767, %eax
  2373. movl 256(%esp), %ecx
  2374. movl 312(%esp), %edx
  2375. lea -134(%ecx,%eax), %esi
  2376. movl %esi, 80(%esp)
  2377. movzwl 296(%esp), %esi
  2378. lea (%ecx,%eax), %ebx
  2379. movl %esi, 84(%esp)
  2380. andl $32767, %esi
  2381. ..B3.109:
  2382. lea (%edx,%esi), %eax
  2383. movl %eax, 44(%esp)
  2384. cmpl 80(%esp), %eax
  2385. jle ..B3.126
  2386. ..B3.110:
  2387. movl 292(%esp), %eax
  2388. lea 134(%ebx), %edi
  2389. cmpl 44(%esp), %edi
  2390. jle ..B3.127
  2391. ..B3.111:
  2392. testl %eax, %eax
  2393. jne ..B3.113
  2394. ..B3.112:
  2395. cmpl $0, 288(%esp)
  2396. je ..B3.128
  2397. ..B3.113:
  2398. cmpl $0, 236(%esp)
  2399. jne ..B3.115
  2400. ..B3.114:
  2401. cmpl $0, 232(%esp)
  2402. je ..B3.127
  2403. ..B3.115:
  2404. cmpl %ecx, %edx
  2405. je ..B3.117
  2406. ..B3.116:
  2407. fldt 64(%esp)
  2408. subl %ecx, %edx
  2409. fstpt 32(%esp)
  2410. addl $16383, %edx
  2411. fldt 288(%esp)
  2412. andl $32767, %edx
  2413. fldt 300(%esp)
  2414. andb $127, 41(%esp)
  2415. movzwl 40(%esp), %eax
  2416. andl $-32768, %eax
  2417. orl %edx, %eax
  2418. movw %ax, 40(%esp)
  2419. movl $-2147483648, 36(%esp)
  2420. movl $0, 32(%esp)
  2421. fldt 32(%esp)
  2422. fmul %st, %st(2)
  2423. movl %ecx, 312(%esp)
  2424. fxch %st(2)
  2425. fstpt 288(%esp)
  2426. fldt 288(%esp)
  2427. fxch %st(2)
  2428. fmulp %st, %st(1)
  2429. fstpt 300(%esp)
  2430. fldt 300(%esp)
  2431. movzwl 296(%esp), %edx
  2432. fxch %st(1)
  2433. fstpt 64(%esp)
  2434. movl %edx, 84(%esp)
  2435. jmp ..B3.118
  2436. ..B3.117:
  2437. fldt 288(%esp)
  2438. fstpt 64(%esp)
  2439. fldt 300(%esp)
  2440. ..B3.118:
  2441. fldt 232(%esp)
  2442. fldt 64(%esp)
  2443. movl 84(%esp), %eax
  2444. movl 60(%esp), %edx
  2445. andl $32767, %eax
  2446. andl $32767, %edx
  2447. fsub %st(1), %st
  2448. movl %ecx, 144(%esp)
  2449. cmpl %edx, %eax
  2450. jg ..B3.123
  2451. ..B3.119:
  2452. jne ..B3.124
  2453. ..B3.120:
  2454. movl 292(%esp), %eax
  2455. movl 236(%esp), %edx
  2456. cmpl %edx, %eax
  2457. ja ..B3.123
  2458. ..B3.121:
  2459. jne ..B3.124
  2460. ..B3.122:
  2461. movl 288(%esp), %eax
  2462. cmpl 232(%esp), %eax
  2463. jbe ..B3.124
  2464. ..B3.123:
  2465. fldt 64(%esp)
  2466. fsub %st(1), %st
  2467. fsubp %st, %st(2)
  2468. fldt 244(%esp)
  2469. fsubrp %st, %st(2)
  2470. fxch %st(2)
  2471. faddp %st, %st(1)
  2472. fstpt 64(%esp)
  2473. jmp ..B3.125
  2474. ..B3.124:
  2475. fldt 64(%esp)
  2476. fxch %st(1)
  2477. fadd %st, %st(2)
  2478. fxch %st(2)
  2479. fsubrp %st, %st(1)
  2480. faddp %st, %st(2)
  2481. fldt 244(%esp)
  2482. fsubrp %st, %st(2)
  2483. fxch %st(1)
  2484. fstpt 64(%esp)
  2485. ..B3.125:
  2486. fldt 64(%esp)
  2487. fld %st(0)
  2488. fadd %st(2), %st
  2489. fstpt 120(%esp)
  2490. fldt 120(%esp)
  2491. fsubrp %st, %st(2)
  2492. faddp %st, %st(1)
  2493. fstpt 132(%esp)
  2494. jmp ..B3.132
  2495. ..B3.126:
  2496. movl 292(%esp), %eax
  2497. ..B3.127:
  2498. testl %eax, %eax
  2499. jne ..B3.129
  2500. ..B3.177:
  2501. cmpl $0, 288(%esp)
  2502. ..B3.128:
  2503. je ..B3.130
  2504. ..B3.129:
  2505. addl $-16517, %ebx
  2506. lea -16383(%edx,%esi), %edx
  2507. cmpl %edx, %ebx
  2508. jl ..B3.131
  2509. ..B3.130:
  2510. fldt 232(%esp)
  2511. fchs
  2512. movl %ecx, 144(%esp)
  2513. fstpt 120(%esp)
  2514. fldt 244(%esp)
  2515. fchs
  2516. fstpt 132(%esp)
  2517. jmp ..B3.132
  2518. ..B3.131:
  2519. movl %eax, 124(%esp)
  2520. movl 288(%esp), %edx
  2521. movl 296(%esp), %eax
  2522. movl 300(%esp), %ecx
  2523. movl 304(%esp), %ebx
  2524. movl 308(%esp), %esi
  2525. movl 312(%esp), %edi
  2526. movl %edx, 120(%esp)
  2527. movl %eax, 128(%esp)
  2528. movl %ecx, 132(%esp)
  2529. movl %ebx, 136(%esp)
  2530. movl %esi, 140(%esp)
  2531. movl %edi, 144(%esp)
  2532. ..B3.132:
  2533. addl $12, %esp
  2534. lea 80(%esp), %eax
  2535. lea 136(%esp), %ecx
  2536. pushl %eax
  2537. lea 252(%esp), %edx
  2538. pushl %edx
  2539. pushl %ecx
  2540. call __libm_atan2l_k80
  2541. ..B3.133:
  2542. addl $12, %esp
  2543. lea 108(%esp), %eax
  2544. lea 164(%esp), %ecx
  2545. pushl %eax
  2546. lea 252(%esp), %edx
  2547. pushl %edx
  2548. pushl %ecx
  2549. call __libm_atan2l_k80
  2550. ..B3.134:
  2551. movzwl 156(%esp), %ebx
  2552. movl %ebx, %esi
  2553. andl $32767, %esi
  2554. cmpl $8383, %esi
  2555. jl ..B3.138
  2556. ..B3.135:
  2557. cmpl $24383, %esi
  2558. jg ..B3.138
  2559. ..B3.136:
  2560. movzwl 184(%esp), %ecx
  2561. movl %ecx, 44(%esp)
  2562. andl $32767, %ecx
  2563. cmpl $8383, %ecx
  2564. jl ..B3.138
  2565. ..B3.137:
  2566. cmpl $24383, %ecx
  2567. jle ..B3.141
  2568. ..B3.138:
  2569. addl $4, %esp
  2570. lea 144(%esp), %eax
  2571. pushl %eax
  2572. call __libm_normalizel_k80
  2573. ..B3.139:
  2574. addl $4, %esp
  2575. lea 172(%esp), %eax
  2576. pushl %eax
  2577. call __libm_normalizel_k80
  2578. ..B3.140:
  2579. movzwl 156(%esp), %ebx
  2580. movl %ebx, %esi
  2581. movzwl 184(%esp), %ecx
  2582. andl $32767, %esi
  2583. movl %ecx, 44(%esp)
  2584. andl $32767, %ecx
  2585. ..B3.141:
  2586. movl 200(%esp), %edx
  2587. movl 172(%esp), %eax
  2588. movl %eax, 76(%esp)
  2589. lea (%esi,%eax), %edi
  2590. movl %edi, 60(%esp)
  2591. lea -134(%edx,%ecx), %eax
  2592. cmpl %eax, %edi
  2593. jle ..B3.158
  2594. ..B3.142:
  2595. movl 152(%esp), %eax
  2596. lea 134(%edx,%ecx), %edi
  2597. cmpl 60(%esp), %edi
  2598. jle ..B3.159
  2599. ..B3.143:
  2600. testl %eax, %eax
  2601. jne ..B3.145
  2602. ..B3.144:
  2603. cmpl $0, 148(%esp)
  2604. je ..B3.160
  2605. ..B3.145:
  2606. cmpl $0, 180(%esp)
  2607. jne ..B3.147
  2608. ..B3.146:
  2609. cmpl $0, 176(%esp)
  2610. je ..B3.159
  2611. ..B3.147:
  2612. cmpl 76(%esp), %edx
  2613. je ..B3.149
  2614. ..B3.148:
  2615. fldt 64(%esp)
  2616. movl 76(%esp), %eax
  2617. fstpt 32(%esp)
  2618. subl %edx, %eax
  2619. fldt 148(%esp)
  2620. addl $16383, %eax
  2621. fldt 160(%esp)
  2622. andl $32767, %eax
  2623. andb $127, 41(%esp)
  2624. movzwl 40(%esp), %ecx
  2625. andl $-32768, %ecx
  2626. orl %eax, %ecx
  2627. movw %cx, 40(%esp)
  2628. movl $-2147483648, 36(%esp)
  2629. movl $0, 32(%esp)
  2630. fldt 32(%esp)
  2631. fmul %st, %st(2)
  2632. movl %edx, 172(%esp)
  2633. fxch %st(2)
  2634. fstpt 148(%esp)
  2635. fldt 148(%esp)
  2636. fxch %st(2)
  2637. fmulp %st, %st(1)
  2638. fstpt 160(%esp)
  2639. fldt 160(%esp)
  2640. movzwl 156(%esp), %ebx
  2641. jmp ..B3.150
  2642. ..B3.149:
  2643. fldt 148(%esp)
  2644. fldt 160(%esp)
  2645. ..B3.150:
  2646. fldt 176(%esp)
  2647. andl $32767, %ebx
  2648. movl 44(%esp), %eax
  2649. fld %st(2)
  2650. andl $32767, %eax
  2651. fadd %st(1), %st
  2652. movl %edx, 228(%esp)
  2653. cmpl %eax, %ebx
  2654. jg ..B3.155
  2655. ..B3.151:
  2656. jne ..B3.156
  2657. ..B3.152:
  2658. movl 152(%esp), %eax
  2659. movl 180(%esp), %ecx
  2660. cmpl %ecx, %eax
  2661. ja ..B3.155
  2662. ..B3.153:
  2663. jne ..B3.156
  2664. ..B3.154:
  2665. movl 148(%esp), %eax
  2666. cmpl 176(%esp), %eax
  2667. jbe ..B3.156
  2668. ..B3.155:
  2669. fsubr %st, %st(3)
  2670. fxch %st(1)
  2671. faddp %st, %st(3)
  2672. fldt 188(%esp)
  2673. faddp %st, %st(3)
  2674. fxch %st(1)
  2675. faddp %st, %st(2)
  2676. fxch %st(1)
  2677. fstpt 32(%esp)
  2678. fldt 32(%esp)
  2679. jmp ..B3.157
  2680. ..B3.156:
  2681. fsubr %st, %st(1)
  2682. fxch %st(3)
  2683. faddp %st, %st(1)
  2684. faddp %st, %st(1)
  2685. fldt 188(%esp)
  2686. faddp %st, %st(1)
  2687. fstpt 32(%esp)
  2688. fldt 32(%esp)
  2689. ..B3.157:
  2690. fld %st(0)
  2691. fadd %st(2), %st
  2692. fsubr %st, %st(2)
  2693. fxch %st(2)
  2694. faddp %st, %st(1)
  2695. jmp ..B3.167
  2696. ..B3.158:
  2697. movl 152(%esp), %eax
  2698. ..B3.159:
  2699. testl %eax, %eax
  2700. jne ..B3.161
  2701. ..B3.181:
  2702. cmpl $0, 148(%esp)
  2703. ..B3.160:
  2704. je ..B3.162
  2705. ..B3.161:
  2706. lea -16517(%edx,%ecx), %ebx
  2707. movl 76(%esp), %ecx
  2708. lea -16383(%ecx,%esi), %esi
  2709. cmpl %esi, %ebx
  2710. jl ..B3.163
  2711. ..B3.162:
  2712. movl 176(%esp), %eax
  2713. movl %eax, 204(%esp)
  2714. movl 180(%esp), %ecx
  2715. movl 184(%esp), %ebx
  2716. movl 188(%esp), %esi
  2717. movl 192(%esp), %edi
  2718. movl 196(%esp), %eax
  2719. movl %ecx, 208(%esp)
  2720. movl %ebx, 212(%esp)
  2721. fldt 204(%esp)
  2722. movl %esi, 216(%esp)
  2723. movl %edi, 220(%esp)
  2724. movl %eax, 224(%esp)
  2725. fldt 216(%esp)
  2726. movl %edx, 228(%esp)
  2727. jmp ..B3.167
  2728. ..B3.163:
  2729. movl 148(%esp), %edx
  2730. movl %eax, 208(%esp)
  2731. movl 156(%esp), %eax
  2732. movl 160(%esp), %ecx
  2733. movl 164(%esp), %ebx
  2734. movl 168(%esp), %esi
  2735. movl %edx, 204(%esp)
  2736. movl %eax, 212(%esp)
  2737. fldt 204(%esp)
  2738. movl 76(%esp), %edx
  2739. movl %ecx, 216(%esp)
  2740. movl %ebx, 220(%esp)
  2741. movl %esi, 224(%esp)
  2742. fldt 216(%esp)
  2743. movl %edx, 228(%esp)
  2744. jmp ..B3.167
  2745. ..B3.164:
  2746. je ..B3.171
  2747. ..B3.165:
  2748. incl 284(%esp)
  2749. addl $12, %esp
  2750. lea 388(%esp), %eax
  2751. lea 192(%esp), %ecx
  2752. pushl %eax
  2753. lea 252(%esp), %edx
  2754. pushl %edx
  2755. pushl %ecx
  2756. call __libm_atan2l_k80
  2757. ..B3.166:
  2758. fldt 204(%esp)
  2759. fldt 216(%esp)
  2760. movl 228(%esp), %edx
  2761. ..B3.167:
  2762. fldt 48(%esp)
  2763. fmul %st, %st(2)
  2764. fxch %st(2)
  2765. fstpt (%esp)
  2766. fldt (%esp)
  2767. fxch %st(1)
  2768. fmulp %st, %st(2)
  2769. fxch %st(1)
  2770. fstpt 12(%esp)
  2771. fldt 12(%esp)
  2772. fxch %st(1)
  2773. fstpt 204(%esp)
  2774. fstpt 216(%esp)
  2775. movl %edx, 24(%esp)
  2776. call __libm_scalbl_k80
  2777. ..B3.168:
  2778. movl 428(%esp), %eax
  2779. xorl %esp, %eax
  2780. cmpl %gs:20, %eax
  2781. jne ..B3.170
  2782. ..B3.169:
  2783. addl $436, %esp
  2784. popl %ebx
  2785. popl %edi
  2786. popl %esi
  2787. movl %ebp, %esp
  2788. popl %ebp
  2789. ret
  2790. ..B3.170:
  2791. fstp %st(0)
  2792. movl 88(%esp), %ebx
  2793. call __stack_chk_fail@PLT
  2794. ..B3.171:
  2795. movl 88(%esp), %edx
  2796. movl 376(%esp), %eax
  2797. cmpl 76+_CONSTANTS@GOTOFF(%edx), %eax
  2798. jb ..B3.72
  2799. ..B3.172:
  2800. jne ..B3.165
  2801. ..B3.173:
  2802. movl 372(%esp), %eax
  2803. cmpl 72+_CONSTANTS@GOTOFF(%edx), %eax
  2804. jb ..B3.72
  2805. jmp ..B3.165
  2806. .align 16,0x90
  2807. .type imcatanhl,@function
  2808. .size imcatanhl,.-imcatanhl
  2809. .data
  2810. # -- End imcatanhl
  2811. .section .rodata, "a"
  2812. .align 16
  2813. .align 16
  2814. .L_2il0floatpacket.17:
  2815. .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
  2816. .type .L_2il0floatpacket.17,@object
  2817. .size .L_2il0floatpacket.17,12
  2818. .space 4, 0x00 # pad
  2819. .align 16
  2820. _CONSTANTS:
  2821. .word 0
  2822. .word 0
  2823. .word 0
  2824. .word 32768
  2825. .word 16383
  2826. .word 0
  2827. .word 0
  2828. .word 0
  2829. .word 0
  2830. .word 32768
  2831. .word 49151
  2832. .word 0
  2833. .word 0
  2834. .word 0
  2835. .word 0
  2836. .word 32768
  2837. .word 16382
  2838. .word 0
  2839. .word 0
  2840. .word 0
  2841. .word 0
  2842. .word 32768
  2843. .word 49150
  2844. .word 0
  2845. .word 0
  2846. .word 0
  2847. .word 0
  2848. .word 0
  2849. .word 0
  2850. .word 0
  2851. .word 0
  2852. .word 32768
  2853. .word 0
  2854. .word 32768
  2855. .word 16415
  2856. .word 0
  2857. .word 49807
  2858. .word 10485
  2859. .word 36700
  2860. .word 62914
  2861. .word 16377
  2862. .word 0
  2863. .type _CONSTANTS,@object
  2864. .size _CONSTANTS,84
  2865. .data
  2866. .hidden __libm_normalizel_k80
  2867. .hidden __libm_log_k80
  2868. .hidden __libm_log1p_k80
  2869. .hidden __libm_atan2l_k80
  2870. .hidden __libm_scalbl_k80
  2871. .section .note.GNU-stack, ""
  2872. # End