powl.S 57 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423
  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 "powl.c"
  38. .text
  39. ..TXTST0:
  40. # -- Begin powl
  41. .text
  42. .align 16,0x90
  43. .globl powl
  44. powl:
  45. # parameter 1: 8 + %ebp
  46. # parameter 2: 20 + %ebp
  47. ..B1.1:
  48. ..L1:
  49. pushl %ebp
  50. movl %esp, %ebp
  51. andl $-16, %esp
  52. pushl %esi
  53. pushl %edi
  54. pushl %ebx
  55. subl $148, %esp
  56. ..B1.2:
  57. fnstcw 70(%esp)
  58. ..B1.3:
  59. movzbl 17(%ebp), %ecx
  60. shrl $7, %ecx
  61. movzwl 16(%ebp), %eax
  62. shll $15, %ecx
  63. andl $32767, %eax
  64. orl %eax, %ecx
  65. movl 12(%ebp), %ebx
  66. shll $16, %ecx
  67. shrl $16, %ebx
  68. movl %eax, 44(%esp)
  69. orl %ebx, %ecx
  70. movzbl 29(%ebp), %eax
  71. movl %ecx, %edi
  72. shrl $7, %eax
  73. movl %ecx, %edx
  74. movzwl 28(%ebp), %esi
  75. andl $2147483647, %edx
  76. shll $15, %eax
  77. andl $32767, %esi
  78. movl 24(%ebp), %ebx
  79. orl %esi, %eax
  80. shrl $31, %edi
  81. cmpl $1073709056, %edx
  82. movl %edi, 28(%esp)
  83. movl %ebx, %edi
  84. movl %edx, 12(%esp)
  85. movl $0, %edx
  86. movl %esi, 48(%esp)
  87. setb %dl
  88. shll $16, %eax
  89. shrl $16, %edi
  90. orl %edi, %eax
  91. movl %eax, %esi
  92. andl $2147483647, %eax
  93. shrl $31, %esi
  94. xorl %esi, %edx
  95. movl %edx, 124(%esp)
  96. movl %eax, %edx
  97. movl 8(%ebp), %edi
  98. orl %ebx, %edx
  99. movl %edi, 32(%esp)
  100. movl 20(%ebp), %edi
  101. orl %edi, %edx
  102. movl %esi, 56(%esp)
  103. movl %edx, 40(%esp)
  104. movl %ebx, 60(%esp)
  105. movl %edi, 36(%esp)
  106. call ..L2
  107. ..L2:
  108. popl %ebx
  109. lea _GLOBAL_OFFSET_TABLE_+[. - ..L2](%ebx), %ebx
  110. movl 12(%ebp), %edx
  111. movl 12(%esp), %esi
  112. je ..B1.5
  113. ..B1.4:
  114. addl $-1073709056, %ecx
  115. lea -2147483648(%edx), %edi
  116. orl %edi, %ecx
  117. movl %edi, 24(%esp)
  118. orl 32(%esp), %ecx
  119. jne ..B1.10
  120. ..B1.5:
  121. cmpl $2147450880, %eax
  122. jae ..B1.8
  123. ..B1.6:
  124. cmpl $2147450880, %esi
  125. jb ..B1.9
  126. ..B1.7:
  127. addl $-2147483648, %edx
  128. orl 32(%esp), %edx
  129. je ..B1.9
  130. ..B1.8:
  131. fldt 8(%ebp)
  132. fldt 20(%ebp)
  133. fmulp %st, %st(1)
  134. fstpt 136(%esp)
  135. ..B1.9:
  136. fldl _ones@GOTOFF(%ebx)
  137. addl $148, %esp
  138. popl %ebx
  139. popl %edi
  140. popl %esi
  141. movl %ebp, %esp
  142. popl %ebp
  143. ret
  144. ..B1.10:
  145. lea -1073709056(%eax), %ecx
  146. movl %ecx, 20(%esp)
  147. cmpl $4194304, %ecx
  148. jae ..B1.17
  149. ..B1.11:
  150. movl %eax, %ecx
  151. shrl $16, %ecx
  152. movl %ecx, 52(%esp)
  153. cmpl $1075806208, %eax
  154. ja ..B1.13
  155. ..B1.12:
  156. movl %ebx, 12(%esp)
  157. movl %ecx, %ebx
  158. movl %ebx, %ecx
  159. negl %ecx
  160. addl $30, %ecx
  161. movl 60(%esp), %edi
  162. shrl %cl, %edi
  163. lea 2(%ebx), %ecx
  164. movl %edi, 16(%esp)
  165. movl 60(%esp), %edi
  166. shll %cl, %edi
  167. movl 36(%esp), %ebx
  168. orl %ebx, %edi
  169. cmpl $1075740672, %eax
  170. jbe ..L3
  171. movl %ebx, %edi
  172. ..L3:
  173. movl 12(%esp), %ebx
  174. movl %edi, 40(%esp)
  175. jmp ..B1.14
  176. ..B1.13:
  177. movl %ebx, 12(%esp)
  178. movl %ecx, %ebx
  179. movl %ebx, %ecx
  180. negl %ecx
  181. addl $30, %ecx
  182. movl 36(%esp), %edi
  183. shrl %cl, %edi
  184. lea 2(%ebx), %ecx
  185. movl 36(%esp), %ebx
  186. shll %cl, %ebx
  187. cmpl $1077837824, %eax
  188. movl %edi, 16(%esp)
  189. jb ..L4
  190. movl $0, %ebx
  191. ..L4:
  192. movl %ebx, 40(%esp)
  193. movl 12(%esp), %ebx
  194. ..B1.14:
  195. testb $1, 16(%esp)
  196. je ..B1.16
  197. ..B1.15:
  198. movl 28(%esp), %ecx
  199. movl %ecx, 108(%esp)
  200. movl $1, 12(%esp)
  201. jmp ..B1.18
  202. ..B1.16:
  203. xorl %ecx, %ecx
  204. movl %ecx, 12(%esp)
  205. movl %ecx, 108(%esp)
  206. jmp ..B1.18
  207. ..B1.17:
  208. cmpl $1073709056, %eax
  209. movl 40(%esp), %edi
  210. jb ..L5
  211. movl $0, %edi
  212. ..L5:
  213. xorl %ecx, %ecx
  214. movl %ecx, 12(%esp)
  215. movl %ecx, 108(%esp)
  216. movl %edi, 40(%esp)
  217. ..B1.18:
  218. cmpl $32767, 44(%esp)
  219. je ..B1.189
  220. ..B1.19:
  221. cmpl $32767, 48(%esp)
  222. je ..B1.156
  223. ..B1.20:
  224. movl %edx, %ecx
  225. andl $2147483647, %ecx
  226. orl 32(%esp), %ecx
  227. jne ..B1.26
  228. ..B1.21:
  229. movl %edx, %ecx
  230. orl %esi, %ecx
  231. jne ..B1.26
  232. ..B1.22:
  233. xorl %edx, %edx
  234. cmpl $0, 40(%esp)
  235. sete %dl
  236. andl %edx, 108(%esp)
  237. cmpl $0, 56(%esp)
  238. jne ..B1.193
  239. ..B1.23:
  240. cmpl $65536, %eax
  241. jae ..B1.25
  242. ..B1.24:
  243. fldl _smallest_value_64@GOTOFF(%ebx)
  244. fstpl 128(%esp)
  245. ..B1.25:
  246. movl 108(%esp), %eax
  247. fldl _zeros@GOTOFF(%ebx,%eax,8)
  248. addl $148, %esp
  249. popl %ebx
  250. popl %edi
  251. popl %esi
  252. movl %ebp, %esp
  253. popl %ebp
  254. ret
  255. ..B1.26:
  256. cmpl $0, 28(%esp)
  257. je ..B1.31
  258. ..B1.27:
  259. cmpl $1077837824, %eax
  260. jae ..B1.29
  261. ..B1.28:
  262. cmpl $0, 40(%esp)
  263. jne ..B1.192
  264. ..B1.29:
  265. lea -1073709056(%esi), %ecx
  266. orl 24(%esp), %ecx
  267. orl 32(%esp), %ecx
  268. jne ..B1.31
  269. ..B1.30:
  270. movl 12(%esp), %eax
  271. fldl _ones@GOTOFF(%ebx,%eax,8)
  272. addl $148, %esp
  273. popl %ebx
  274. popl %edi
  275. popl %esi
  276. movl %ebp, %esp
  277. popl %ebp
  278. ret
  279. ..B1.31:
  280. lea -65536(%esi), %edi
  281. lea -65536(%eax), %ecx
  282. orl %ecx, %edi
  283. testl $-2147483648, %edi
  284. je ..B1.33
  285. ..B1.32:
  286. fldl _smallest_value_64@GOTOFF(%ebx)
  287. fstpl 128(%esp)
  288. ..B1.33:
  289. movl 60(%esp), %ecx
  290. andl $2147483647, %ecx
  291. orl 36(%esp), %ecx
  292. jne ..B1.61
  293. ..B1.34:
  294. cmpl $1073709056, %eax
  295. jne ..B1.43
  296. ..B1.35:
  297. cmpl $0, 56(%esp)
  298. je ..B1.42
  299. ..B1.36:
  300. movzwl 70(%esp), %edx
  301. movl %edx, %eax
  302. andl $768, %eax
  303. cmpl $768, %eax
  304. je ..B1.141
  305. ..B1.37:
  306. orl $-64768, %edx
  307. movw %dx, 68(%esp)
  308. ..B1.38:
  309. fldcw 68(%esp)
  310. ..B1.39:
  311. fldt 8(%ebp)
  312. fdivrl _ones@GOTOFF(%ebx)
  313. fstpt 24(%esp)
  314. ..B1.40:
  315. fldcw 70(%esp)
  316. ..B1.41:
  317. fldt 24(%esp)
  318. addl $148, %esp
  319. popl %ebx
  320. popl %edi
  321. popl %esi
  322. movl %ebp, %esp
  323. popl %ebp
  324. ret
  325. ..B1.42:
  326. fldt 8(%ebp)
  327. addl $148, %esp
  328. popl %ebx
  329. popl %edi
  330. popl %esi
  331. movl %ebp, %esp
  332. popl %ebp
  333. ret
  334. ..B1.43:
  335. cmpl $1073643520, %eax
  336. jne ..B1.61
  337. ..B1.44:
  338. movzwl 70(%esp), %edx
  339. movl %edx, %eax
  340. andl $768, %eax
  341. cmpl $768, %eax
  342. je ..B1.142
  343. ..B1.45:
  344. orl $-64768, %edx
  345. movw %dx, 68(%esp)
  346. ..B1.46:
  347. fldcw 68(%esp)
  348. ..B1.47:
  349. movl $1, %esi
  350. ..B1.48:
  351. cmpl $0, 56(%esp)
  352. je ..B1.56
  353. ..B1.49:
  354. fldl _ones@GOTOFF(%ebx)
  355. movzbl 17(%ebp), %edi
  356. fld %st(0)
  357. shrl $7, %edi
  358. movzwl 16(%ebp), %eax
  359. shll $15, %edi
  360. andl $32767, %eax
  361. orl %eax, %edi
  362. shll $16, %edi
  363. movzwl 14(%ebp), %edx
  364. orl %edx, %edi
  365. lea -536838144(%edi), %ecx
  366. cmpl $1073741824, %ecx
  367. jbe ..B1.53
  368. ..B1.50:
  369. fstp %st(0)
  370. cmpl $536838144, %edi
  371. jae ..B1.52
  372. ..B1.51:
  373. fldt 8(%ebp)
  374. fldt _invsqrtl_scales@GOTOFF(%ebx)
  375. fmulp %st, %st(1)
  376. fstpt 8(%ebp)
  377. fldt 8(%ebp)
  378. fldt 12+_invsqrtl_scales@GOTOFF(%ebx)
  379. fldt 8(%ebp)
  380. fxch %st(2)
  381. fxch %st(1)
  382. fxch %st(2)
  383. jmp ..B1.54
  384. ..B1.52:
  385. fldt 8(%ebp)
  386. fldt 24+_invsqrtl_scales@GOTOFF(%ebx)
  387. fmulp %st, %st(1)
  388. fstpt 8(%ebp)
  389. fldt 8(%ebp)
  390. fldt 36+_invsqrtl_scales@GOTOFF(%ebx)
  391. fldt 8(%ebp)
  392. fxch %st(2)
  393. fxch %st(1)
  394. fxch %st(2)
  395. jmp ..B1.54
  396. ..B1.53:
  397. fldt 8(%ebp)
  398. fld %st(0)
  399. ..B1.54:
  400. fldl _TWO_43H@GOTOFF(%ebx)
  401. fld %st(2)
  402. fmul %st(1), %st
  403. fxch %st(3)
  404. fdivr %st, %st(5)
  405. fxch %st(5)
  406. fstpt 12(%esp)
  407. fxch %st(2)
  408. fadd %st, %st(4)
  409. fxch %st(4)
  410. fstpt (%esp)
  411. fldt (%esp)
  412. addl $-16, %esp
  413. fsubp %st, %st(4)
  414. fsub %st(3), %st
  415. lea 28(%esp), %eax
  416. movl %eax, (%esp)
  417. fstpt 28(%eax)
  418. fstpt 12(%eax)
  419. fxch %st(1)
  420. fstpt 44(%eax)
  421. fstpt 60(%eax)
  422. call __sqrtl
  423. ..B1.196:
  424. fldt 88(%esp)
  425. fldt 72(%esp)
  426. fldt 56(%esp)
  427. fldt 40(%esp)
  428. addl $16, %esp
  429. ..B1.55:
  430. fmul %st(4), %st
  431. fld %st(4)
  432. fadd %st(1), %st
  433. fstpt (%esp)
  434. fld %st(4)
  435. fxch %st(2)
  436. fmul %st(5), %st
  437. fxch %st(5)
  438. fstpt 12(%esp)
  439. fldt 12(%esp)
  440. fldt (%esp)
  441. fsubp %st, %st(2)
  442. fxch %st(1)
  443. fsubr %st, %st(2)
  444. fld %st(3)
  445. fmul %st(3), %st
  446. faddp %st, %st(6)
  447. fxch %st(1)
  448. fmul %st, %st(5)
  449. fld %st(2)
  450. fxch %st(2)
  451. fmul %st, %st(4)
  452. fxch %st(2)
  453. fmul %st(4), %st
  454. faddp %st, %st(6)
  455. fxch %st(1)
  456. fmul %st, %st(3)
  457. fxch %st(3)
  458. faddl 8+_ones@GOTOFF(%ebx)
  459. faddp %st, %st(5)
  460. fmulp %st, %st(4)
  461. fldt .L_2il0floatpacket.0@GOTOFF(%ebx)
  462. fmulp %st, %st(4)
  463. faddp %st, %st(3)
  464. faddp %st, %st(2)
  465. fmulp %st, %st(1)
  466. fstpt 24(%esp)
  467. jmp ..B1.58
  468. ..B1.56:
  469. addl $-16, %esp
  470. lea 8(%ebp), %eax
  471. movl %eax, (%esp)
  472. call __sqrtl
  473. ..B1.197:
  474. addl $16, %esp
  475. ..B1.57:
  476. fstpt 24(%esp)
  477. ..B1.58:
  478. testl %esi, %esi
  479. je ..B1.60
  480. ..B1.59:
  481. fldcw 70(%esp)
  482. ..B1.60:
  483. fldt 24(%esp)
  484. addl $148, %esp
  485. popl %ebx
  486. popl %edi
  487. popl %esi
  488. movl %ebp, %esp
  489. popl %ebp
  490. ret
  491. ..B1.61:
  492. movzwl 70(%esp), %edi
  493. movl %edi, %ecx
  494. andl $768, %ecx
  495. cmpl $768, %ecx
  496. je ..B1.155
  497. ..B1.62:
  498. orl $-64768, %edi
  499. movw %di, 68(%esp)
  500. ..B1.63:
  501. fldcw 68(%esp)
  502. ..B1.64:
  503. movl $1, 36(%esp)
  504. ..B1.65:
  505. fldt 8(%ebp)
  506. movl 28(%esp), %ecx
  507. cmpl $0, 40(%esp)
  508. fmull _ones@GOTOFF(%ebx,%ecx,8)
  509. fstpt 8(%ebp)
  510. fldt 8(%ebp)
  511. jne ..B1.92
  512. ..B1.66:
  513. cmpl $1048576, 20(%esp)
  514. jae ..B1.92
  515. ..B1.67:
  516. movl %eax, %ecx
  517. shrl $16, %ecx
  518. negl %ecx
  519. addl $30, %ecx
  520. movl 60(%esp), %edi
  521. shrl %cl, %edi
  522. cmpl $46, %edi
  523. movl %edi, 60(%esp)
  524. lea -2(%edi), %ecx
  525. movl 32(%esp), %edi
  526. jb ..L6
  527. movl $46, %ecx
  528. ..L6:
  529. andl 4+_exact_masks@GOTOFF(%ebx,%ecx,8), %edx
  530. andl _exact_masks@GOTOFF(%ebx,%ecx,8), %edi
  531. movl %ecx, 52(%esp)
  532. orl %edi, %edx
  533. jne ..B1.92
  534. ..B1.68:
  535. movl 108(%esp), %eax
  536. cmpl $65535, %esi
  537. fldl _ones@GOTOFF(%ebx,%eax,8)
  538. ja ..B1.70
  539. ..B1.69:
  540. fldl _TWO_75@GOTOFF(%ebx)
  541. fmulp %st, %st(2)
  542. fxch %st(1)
  543. fstpt 40(%esp)
  544. movzwl 48(%esp), %ecx
  545. movl %ecx, %edx
  546. andl $32767, %edx
  547. addl $-16458, %edx
  548. jmp ..B1.71
  549. ..B1.70:
  550. movzwl 16(%ebp), %edx
  551. fxch %st(1)
  552. fstpt 40(%esp)
  553. andl $32767, %edx
  554. movzwl 48(%esp), %ecx
  555. addl $-16383, %edx
  556. ..B1.71:
  557. movl 56(%esp), %eax
  558. andl $-32768, %ecx
  559. orl $-49153, %ecx
  560. movw %cx, 48(%esp)
  561. movl iones@GOTOFF(%ebx,%eax,4), %eax
  562. imull 60(%esp), %eax
  563. imull %edx, %eax
  564. lea 16445(%eax), %ecx
  565. cmpl $32829, %ecx
  566. lea 16383(%eax), %edx
  567. jb ..B1.78
  568. ..B1.72:
  569. movl 108(%esp), %ecx
  570. cmpl $-63, %edx
  571. lea (,%ecx,8), %eax
  572. lea (%eax,%ecx,4), %eax
  573. jg ..B1.74
  574. ..B1.73:
  575. fldt _small_value_80@GOTOFF(%eax,%ebx)
  576. fldt _small_value_80@GOTOFF(%ebx)
  577. fmulp %st, %st(1)
  578. jmp ..B1.75
  579. ..B1.74:
  580. fldt _large_value_80@GOTOFF(%eax,%ebx)
  581. fldt _large_value_80@GOTOFF(%ebx)
  582. fmulp %st, %st(1)
  583. ..B1.75:
  584. fstpt 24(%esp)
  585. cmpl $0, 36(%esp)
  586. je ..B1.200
  587. ..B1.76:
  588. fstpt 12(%esp)
  589. ..B1.198:
  590. fldcw 70(%esp)
  591. jmp ..B1.77
  592. ..B1.200:
  593. fstp %st(0)
  594. ..B1.77:
  595. fldt 24(%esp)
  596. addl $148, %esp
  597. popl %ebx
  598. popl %edi
  599. popl %esi
  600. movl %ebp, %esp
  601. popl %ebp
  602. ret
  603. ..B1.78:
  604. fstpt 12(%esp)
  605. testl %edx, %edx
  606. jg ..B1.80
  607. ..B1.79:
  608. addl $16458, %eax
  609. movzwl 20(%esp), %edx
  610. andl $32767, %eax
  611. andl $-32768, %edx
  612. orl %eax, %edx
  613. movw %dx, 20(%esp)
  614. fldt 12(%esp)
  615. fmull 8+_TWO_75@GOTOFF(%ebx)
  616. fstpt 12(%esp)
  617. jmp ..B1.81
  618. ..B1.80:
  619. movzwl 20(%esp), %eax
  620. andl $32767, %edx
  621. andl $-32768, %eax
  622. orl %edx, %eax
  623. movw %ax, 20(%esp)
  624. ..B1.81:
  625. cmpl $-2147483648, 44(%esp)
  626. jne ..B1.87
  627. ..B1.82:
  628. cmpl $0, 40(%esp)
  629. jne ..B1.87
  630. ..B1.83:
  631. fldt 12(%esp)
  632. fstpt 24(%esp)
  633. ..B1.84:
  634. cmpl $0, 36(%esp)
  635. je ..B1.86
  636. ..B1.85:
  637. fldcw 70(%esp)
  638. ..B1.86:
  639. fldt 24(%esp)
  640. addl $148, %esp
  641. popl %ebx
  642. popl %edi
  643. popl %esi
  644. movl %ebp, %esp
  645. popl %ebp
  646. ret
  647. ..B1.87:
  648. fldt 40(%esp)
  649. fstpt 24(%esp)
  650. fldt 24(%esp)
  651. fstpt 96(%esp)
  652. fldt 96(%esp)
  653. fldl _ones@GOTOFF(%ebx)
  654. movl $0, 24(%esp)
  655. fstpt 72(%esp)
  656. fldt 72(%esp)
  657. fldt 24(%esp)
  658. movl 60(%esp), %eax
  659. fsubr %st, %st(2)
  660. fldt 72(%esp)
  661. fldl _zeros@GOTOFF(%ebx)
  662. jmp ..B1.88
  663. ..B1.91:
  664. fld %st(2)
  665. fadd %st(5), %st
  666. fld %st(3)
  667. fmul %st(6), %st
  668. fxch %st(4)
  669. fmul %st(0), %st
  670. fstpt 24(%esp)
  671. fldt 24(%esp)
  672. fxch %st(1)
  673. fmulp %st, %st(6)
  674. movl $0, 24(%esp)
  675. fxch %st(5)
  676. faddp %st, %st(3)
  677. fxch %st(4)
  678. fstpt 96(%esp)
  679. fldt 96(%esp)
  680. fldt 24(%esp)
  681. fsubr %st, %st(1)
  682. fxch %st(1)
  683. fstpt 96(%esp)
  684. fldt 96(%esp)
  685. faddp %st, %st(3)
  686. fxch %st(2)
  687. fxch %st(4)
  688. ..B1.88:
  689. testb $1, %al
  690. je ..B1.90
  691. ..B1.89:
  692. fld %st(4)
  693. fadd %st(3), %st
  694. fmulp %st, %st(1)
  695. fld %st(4)
  696. fmul %st(2), %st
  697. faddp %st, %st(1)
  698. fxch %st(1)
  699. fmul %st(2), %st
  700. fstpt 72(%esp)
  701. fldt 72(%esp)
  702. fstpt 96(%esp)
  703. fldt 96(%esp)
  704. movl $0, 72(%esp)
  705. fldt 72(%esp)
  706. fsubr %st, %st(1)
  707. fxch %st(1)
  708. fstpt 96(%esp)
  709. fldt 96(%esp)
  710. faddp %st, %st(2)
  711. fxch %st(1)
  712. ..B1.90:
  713. shrl $1, %eax
  714. testl %eax, %eax
  715. je ..B1.143
  716. jmp ..B1.91
  717. ..B1.92:
  718. lea -1073676224(%esi), %edx
  719. cmpl $32864, %edx
  720. jae ..B1.94
  721. ..B1.93:
  722. fldl 8+_ones@GOTOFF(%ebx)
  723. movl $1, %ecx
  724. faddp %st, %st(1)
  725. fld %st(0)
  726. fld %st(1)
  727. fxch %st(2)
  728. fstpt 40(%esp)
  729. fldt 40(%esp)
  730. fldl _TWO_32H@GOTOFF(%ebx)
  731. fstpt 112(%esp)
  732. fldt 112(%esp)
  733. fmul %st(1), %st
  734. fadd %st, %st(2)
  735. fxch %st(2)
  736. fstpt 84(%esp)
  737. fldt 84(%esp)
  738. fsubp %st, %st(2)
  739. fxch %st(1)
  740. fstpt 24(%esp)
  741. fldt 24(%esp)
  742. fsubr %st, %st(2)
  743. fxch %st(1)
  744. fxch %st(2)
  745. fxch %st(1)
  746. jmp ..B1.98
  747. ..B1.94:
  748. cmpl $65535, %esi
  749. ja ..B1.96
  750. ..B1.95:
  751. fmull _TWO_75@GOTOFF(%ebx)
  752. fstpt 40(%esp)
  753. movzwl 48(%esp), %ecx
  754. movl %ecx, %edx
  755. andl $32767, %edx
  756. addl $-16458, %edx
  757. movl %edx, 52(%esp)
  758. jmp ..B1.97
  759. ..B1.96:
  760. movzwl 16(%ebp), %edx
  761. andl $32767, %edx
  762. fstpt 40(%esp)
  763. addl $-16383, %edx
  764. movl %edx, 52(%esp)
  765. movzwl 48(%esp), %ecx
  766. ..B1.97:
  767. fldl _TWO_32H@GOTOFF(%ebx)
  768. andl $-32768, %ecx
  769. orl $-49153, %ecx
  770. movw %cx, 48(%esp)
  771. xorl %ecx, %ecx
  772. movl 44(%esp), %edx
  773. shrl $23, %edx
  774. movzbl %dl, %edx
  775. fstpt 112(%esp)
  776. fldt 112(%esp)
  777. fldt 40(%esp)
  778. fld %st(0)
  779. fmul %st(2), %st
  780. fld %st(1)
  781. fadd %st(1), %st
  782. fstpt 84(%esp)
  783. fldt 84(%esp)
  784. fsubp %st, %st(1)
  785. fsubr %st, %st(1)
  786. flds __libm_rcp_table_256@GOTOFF(%ebx,%edx,4)
  787. fmul %st, %st(1)
  788. fstpt 56(%esp)
  789. fldt 56(%esp)
  790. fmulp %st, %st(2)
  791. faddl 8+_ones@GOTOFF(%ebx)
  792. fld %st(0)
  793. fadd %st(2), %st
  794. fmul %st, %st(3)
  795. fld %st(0)
  796. fadd %st(4), %st
  797. fstpt 84(%esp)
  798. fstpt 40(%esp)
  799. fldt 40(%esp)
  800. fldt 84(%esp)
  801. fsubp %st, %st(4)
  802. fxch %st(3)
  803. fstpt 24(%esp)
  804. fldt 24(%esp)
  805. fsubr %st, %st(1)
  806. fxch %st(1)
  807. faddp %st, %st(2)
  808. ..B1.98:
  809. fldt 112(%esp)
  810. testl %ecx, %ecx
  811. fld %st(0)
  812. fxch %st(2)
  813. fadd %st, %st(4)
  814. fxch %st(3)
  815. fmul %st, %st(4)
  816. fxch %st(3)
  817. fmul %st(0), %st
  818. fld %st(0)
  819. fadd %st(5), %st
  820. fmul %st, %st(3)
  821. fld %st(0)
  822. fadd %st(4), %st
  823. fstpt 84(%esp)
  824. fldt 84(%esp)
  825. fsubp %st, %st(4)
  826. fxch %st(1)
  827. fsub %st(3), %st
  828. faddp %st, %st(5)
  829. fldt 96+_LP@GOTOFF(%ebx)
  830. fmul %st(1), %st
  831. fldt 84+_LP@GOTOFF(%ebx)
  832. fmul %st(2), %st
  833. fldt 72+_LP@GOTOFF(%ebx)
  834. faddp %st, %st(2)
  835. fxch %st(1)
  836. fmul %st(2), %st
  837. fldt 60+_LP@GOTOFF(%ebx)
  838. faddp %st, %st(2)
  839. fxch %st(1)
  840. fmul %st(2), %st
  841. fldt 48+_LP@GOTOFF(%ebx)
  842. faddp %st, %st(2)
  843. fxch %st(1)
  844. fmul %st(2), %st
  845. fldt 36+_LP@GOTOFF(%ebx)
  846. faddp %st, %st(2)
  847. fxch %st(1)
  848. fmul %st(2), %st
  849. fldt 24+_LP@GOTOFF(%ebx)
  850. faddp %st, %st(2)
  851. fxch %st(1)
  852. fmul %st(2), %st
  853. fldt 12+_LP@GOTOFF(%ebx)
  854. faddp %st, %st(2)
  855. fldt 40(%esp)
  856. fmulp %st, %st(2)
  857. faddp %st, %st(1)
  858. fld %st(0)
  859. fmul %st(3), %st
  860. fld %st(1)
  861. fadd %st(1), %st
  862. fstpt 84(%esp)
  863. fldt 84(%esp)
  864. fsubp %st, %st(1)
  865. fld %st(0)
  866. fmul %st(7), %st
  867. fxch %st(1)
  868. fsubr %st, %st(2)
  869. fxch %st(3)
  870. fmulp %st, %st(2)
  871. faddp %st, %st(1)
  872. fxch %st(1)
  873. fmul %st(3), %st
  874. fldt _LP@GOTOFF(%ebx)
  875. fmul %st, %st(4)
  876. fxch %st(4)
  877. fstpt 96(%esp)
  878. fldt 96(%esp)
  879. fadd %st(1), %st
  880. fstpt 72(%esp)
  881. fldt 72(%esp)
  882. fxch %st(4)
  883. fmulp %st, %st(6)
  884. fxch %st(1)
  885. faddp %st, %st(5)
  886. fldt 96(%esp)
  887. fsub %st(3), %st
  888. fstpt 96(%esp)
  889. fldt 96(%esp)
  890. faddp %st, %st(1)
  891. fstpt 96(%esp)
  892. fldt 96(%esp)
  893. faddp %st, %st(4)
  894. fxch %st(3)
  895. faddp %st, %st(2)
  896. fldt 24(%esp)
  897. fstpt 96(%esp)
  898. fldt 96(%esp)
  899. fadd %st(1), %st
  900. fstpt 24(%esp)
  901. fldt 24(%esp)
  902. fldt 96(%esp)
  903. fsub %st(1), %st
  904. fstpt 96(%esp)
  905. fldt 96(%esp)
  906. faddp %st, %st(2)
  907. fxch %st(1)
  908. fstpt 96(%esp)
  909. fldt 96(%esp)
  910. faddp %st, %st(2)
  911. je ..B1.100
  912. ..B1.99:
  913. fstpt 40(%esp)
  914. fldt 40(%esp)
  915. jmp ..B1.101
  916. ..B1.100:
  917. fstp %st(0)
  918. fldt 12+_LLN2@GOTOFF(%ebx)
  919. movl %edx, %ecx
  920. fldt _LLN2@GOTOFF(%ebx)
  921. shll $4, %ecx
  922. fldl 8+__libm_logl_table_256@GOTOFF(%ecx,%ebx)
  923. fldl __libm_logl_table_256@GOTOFF(%ecx,%ebx)
  924. fxch %st(1)
  925. fadds _LT2@GOTOFF(%ebx,%edx,4)
  926. movl 52(%esp), %edx
  927. movl %edx, 16(%esp)
  928. fildl 16(%esp)
  929. fmul %st, %st(3)
  930. fxch %st(3)
  931. fstpt 96(%esp)
  932. fldt 96(%esp)
  933. fadd %st(2), %st
  934. fxch %st(3)
  935. fmulp %st, %st(4)
  936. faddp %st, %st(3)
  937. fldt 96(%esp)
  938. fsub %st(2), %st
  939. fstpt 96(%esp)
  940. fldt 96(%esp)
  941. faddp %st, %st(1)
  942. fstpt 96(%esp)
  943. fldt 96(%esp)
  944. faddp %st, %st(2)
  945. fxch %st(2)
  946. faddp %st, %st(1)
  947. fxch %st(1)
  948. fstpt 96(%esp)
  949. fldt 96(%esp)
  950. fldt 24(%esp)
  951. fadd %st, %st(1)
  952. fxch %st(1)
  953. fstpt 40(%esp)
  954. fldt 40(%esp)
  955. fldt 96(%esp)
  956. fsub %st(1), %st
  957. fstpt 96(%esp)
  958. fldt 96(%esp)
  959. faddp %st, %st(2)
  960. fxch %st(1)
  961. fstpt 96(%esp)
  962. fldt 96(%esp)
  963. faddp %st, %st(2)
  964. ..B1.101:
  965. fld %st(0)
  966. fadd %st(2), %st
  967. fstpt 56(%esp)
  968. fldt 56(%esp)
  969. movzwl 64(%esp), %ecx
  970. shll $16, %ecx
  971. movzwl 62(%esp), %edx
  972. orl %edx, %ecx
  973. andl $2147483647, %ecx
  974. lea (%eax,%ecx), %edx
  975. lea -1610514432(%ecx,%eax), %eax
  976. cmpl $538050560, %eax
  977. jbe ..B1.113
  978. ..B1.102:
  979. cmpl $-2146402304, %edx
  980. jbe ..B1.109
  981. ..B1.103:
  982. fstp %st(0)
  983. fstp %st(2)
  984. fstp %st(0)
  985. fstp %st(0)
  986. movl 108(%esp), %edx
  987. cmpl $0, 124(%esp)
  988. lea (,%edx,8), %eax
  989. lea (%eax,%edx,4), %eax
  990. je ..B1.105
  991. ..B1.104:
  992. fldt _small_value_80@GOTOFF(%eax,%ebx)
  993. fldt _small_value_80@GOTOFF(%ebx)
  994. fmulp %st, %st(1)
  995. jmp ..B1.106
  996. ..B1.105:
  997. fldt _large_value_80@GOTOFF(%eax,%ebx)
  998. fldt _large_value_80@GOTOFF(%ebx)
  999. fmulp %st, %st(1)
  1000. ..B1.106:
  1001. fstpt 24(%esp)
  1002. cmpl $0, 36(%esp)
  1003. je ..B1.108
  1004. ..B1.107:
  1005. fldcw 70(%esp)
  1006. ..B1.108:
  1007. fldt 24(%esp)
  1008. addl $148, %esp
  1009. popl %ebx
  1010. popl %edi
  1011. popl %esi
  1012. movl %ebp, %esp
  1013. popl %ebp
  1014. ret
  1015. ..B1.109:
  1016. cmpl $1610514432, %edx
  1017. jae ..B1.113
  1018. ..B1.110:
  1019. fstp %st(0)
  1020. fstp %st(2)
  1021. fstp %st(0)
  1022. fstp %st(0)
  1023. movl 108(%esp), %ecx
  1024. movl 124(%esp), %eax
  1025. xorl %ecx, %eax
  1026. cmpl $0, 36(%esp)
  1027. lea (,%eax,8), %esi
  1028. lea (%esi,%eax,4), %edx
  1029. fldt _small_value_80@GOTOFF(%ebx,%edx)
  1030. faddl _ones@GOTOFF(%ebx,%ecx,8)
  1031. fstpt 24(%esp)
  1032. je ..B1.112
  1033. ..B1.111:
  1034. fldcw 70(%esp)
  1035. ..B1.112:
  1036. fldt 24(%esp)
  1037. addl $148, %esp
  1038. popl %ebx
  1039. popl %edi
  1040. popl %esi
  1041. movl %ebp, %esp
  1042. popl %ebp
  1043. ret
  1044. ..B1.113:
  1045. fldt 56(%esp)
  1046. fxch %st(1)
  1047. fmulp %st, %st(4)
  1048. movl 108(%esp), %eax
  1049. fadd %st(3), %st
  1050. fxch %st(1)
  1051. fstpt 96(%esp)
  1052. fstpt 84(%esp)
  1053. fldt 84(%esp)
  1054. fsubp %st, %st(2)
  1055. fxch %st(1)
  1056. fstpt 40(%esp)
  1057. fldt 40(%esp)
  1058. fldt 96(%esp)
  1059. fsub %st(1), %st
  1060. fstpt 96(%esp)
  1061. fldt 96(%esp)
  1062. faddp %st, %st(2)
  1063. fldt 112(%esp)
  1064. fldt 20(%ebp)
  1065. fmul %st, %st(1)
  1066. fld %st(0)
  1067. fadd %st(2), %st
  1068. fstpt 84(%esp)
  1069. fld %st(0)
  1070. fxch %st(1)
  1071. fmulp %st, %st(4)
  1072. fldt 84(%esp)
  1073. fsubp %st, %st(2)
  1074. fsub %st(1), %st
  1075. fmul %st(2), %st
  1076. faddp %st, %st(3)
  1077. fld %st(2)
  1078. fxch %st(1)
  1079. fmulp %st, %st(2)
  1080. fadd %st(1), %st
  1081. fstpt 56(%esp)
  1082. fldt 56(%esp)
  1083. fldl _ones@GOTOFF(%ebx,%eax,8)
  1084. movzwl 64(%esp), %eax
  1085. shll $16, %eax
  1086. movzwl 62(%esp), %edx
  1087. orl %edx, %eax
  1088. andl $2147483647, %eax
  1089. cmpl $1072398336, %eax
  1090. jae ..B1.120
  1091. ..B1.114:
  1092. cmpl $1069318144, %eax
  1093. jae ..B1.116
  1094. ..B1.115:
  1095. fstp %st(3)
  1096. fmul %st(2), %st
  1097. fadd %st(2), %st
  1098. fxch %st(2)
  1099. jmp ..B1.117
  1100. ..B1.116:
  1101. fldt 12+_EP1@GOTOFF(%ebx)
  1102. fmul %st(2), %st
  1103. fldt _EP1@GOTOFF(%ebx)
  1104. faddp %st, %st(1)
  1105. fmul %st(2), %st
  1106. fmulp %st, %st(2)
  1107. fxch %st(1)
  1108. faddp %st, %st(3)
  1109. fxch %st(1)
  1110. fadd %st, %st(2)
  1111. fxch %st(1)
  1112. fmul %st, %st(2)
  1113. fld %st(0)
  1114. faddp %st, %st(3)
  1115. ..B1.117:
  1116. fxch %st(2)
  1117. fstpt 24(%esp)
  1118. cmpl $0, 36(%esp)
  1119. je ..B1.201
  1120. ..B1.118:
  1121. fstpt 40(%esp)
  1122. fstpt 12(%esp)
  1123. ..B1.199:
  1124. fldcw 70(%esp)
  1125. jmp ..B1.119
  1126. ..B1.201:
  1127. fstp %st(0)
  1128. fstp %st(0)
  1129. ..B1.119:
  1130. fldt 24(%esp)
  1131. addl $148, %esp
  1132. popl %ebx
  1133. popl %edi
  1134. popl %esi
  1135. movl %ebp, %esp
  1136. popl %ebp
  1137. ret
  1138. ..B1.120:
  1139. fldl _TWO_63H@GOTOFF(%ebx)
  1140. fxch %st(1)
  1141. fstpt 12(%esp)
  1142. fxch %st(2)
  1143. fstpt 40(%esp)
  1144. fldt 40(%esp)
  1145. fldt .L_2il0floatpacket.1@GOTOFF(%ebx)
  1146. fmulp %st, %st(2)
  1147. fxch %st(1)
  1148. fstpt 96(%esp)
  1149. fldt 96(%esp)
  1150. movl 124(%esp), %eax
  1151. fadd %st(2), %st
  1152. fstpt 84(%esp)
  1153. fldt 84(%esp)
  1154. movl 84(%esp), %ecx
  1155. fsubp %st, %st(2)
  1156. fxch %st(1)
  1157. fstpt 96(%esp)
  1158. fldt 96(%esp)
  1159. fldt 96(%esp)
  1160. fldt 112(%esp)
  1161. fldt .L_2il0floatpacket.2@GOTOFF(%ebx)
  1162. fmulp %st, %st(3)
  1163. movsbl %cl, %edx
  1164. fxch %st(2)
  1165. fsubrp %st, %st(3)
  1166. fldt .L_2il0floatpacket.3@GOTOFF(%ebx)
  1167. fmulp %st, %st(1)
  1168. fstpt 96(%esp)
  1169. fldt 96(%esp)
  1170. movl %ecx, 24(%esp)
  1171. subl %edx, %ecx
  1172. sarl $8, %ecx
  1173. fsubr %st(2), %st
  1174. movl ESC2_BIAS@GOTOFF(%ebx,%eax,4), %esi
  1175. fadd %st(1), %st
  1176. fstpt 84(%esp)
  1177. lea -1(%esi,%ecx), %edi
  1178. fldt 84(%esp)
  1179. lea (%esi,%ecx), %eax
  1180. cmpl $32766, %edi
  1181. fsubp %st, %st(1)
  1182. fsubr %st, %st(1)
  1183. fldt 96(%esp)
  1184. fsubrp %st, %st(2)
  1185. jb ..B1.127
  1186. ..B1.121:
  1187. fstp %st(1)
  1188. fstp %st(0)
  1189. fstp %st(0)
  1190. movl 108(%esp), %ecx
  1191. cmpl $1, %eax
  1192. lea (,%ecx,8), %edx
  1193. lea (%edx,%ecx,4), %edx
  1194. jg ..B1.123
  1195. ..B1.122:
  1196. fldt _small_value_80@GOTOFF(%edx,%ebx)
  1197. fldt _small_value_80@GOTOFF(%ebx)
  1198. fmulp %st, %st(1)
  1199. jmp ..B1.124
  1200. ..B1.123:
  1201. fldt _large_value_80@GOTOFF(%edx,%ebx)
  1202. fldt _large_value_80@GOTOFF(%ebx)
  1203. fmulp %st, %st(1)
  1204. ..B1.124:
  1205. fstpt 24(%esp)
  1206. cmpl $0, 36(%esp)
  1207. je ..B1.126
  1208. ..B1.125:
  1209. fldcw 70(%esp)
  1210. ..B1.126:
  1211. fldt 24(%esp)
  1212. addl $148, %esp
  1213. popl %ebx
  1214. popl %edi
  1215. popl %esi
  1216. movl %ebp, %esp
  1217. popl %ebp
  1218. ret
  1219. ..B1.127:
  1220. fldt 48+_EP@GOTOFF(%ebx)
  1221. andl $32767, %eax
  1222. fstpt 96(%esp)
  1223. fld %st(0)
  1224. shll $4, %edx
  1225. fxch %st(2)
  1226. faddp %st, %st(3)
  1227. movzwl 20(%esp), %esi
  1228. fxch %st(1)
  1229. fadd %st(2), %st
  1230. fld %st(0)
  1231. andl $-32768, %esi
  1232. fmul %st(1), %st
  1233. orl %eax, %esi
  1234. fldt 96(%esp)
  1235. fmul %st(1), %st
  1236. fstpt 96(%esp)
  1237. fldt 36+_EP@GOTOFF(%ebx)
  1238. fmul %st(1), %st
  1239. fldt 24+_EP@GOTOFF(%ebx)
  1240. fldt 12+_EP@GOTOFF(%ebx)
  1241. movl 24(%esp), %eax
  1242. faddp %st, %st(2)
  1243. fxch %st(1)
  1244. fmul %st(2), %st
  1245. addl $4196735, %eax
  1246. fmulp %st, %st(3)
  1247. cmpl $3070, %eax
  1248. fldt 96(%esp)
  1249. movw %si, 20(%esp)
  1250. faddp %st, %st(1)
  1251. fstpt 96(%esp)
  1252. fldt 96(%esp)
  1253. fmul %st(1), %st
  1254. fstpt 96(%esp)
  1255. fldt 96(%esp)
  1256. fldt _EP@GOTOFF(%ebx)
  1257. faddp %st, %st(1)
  1258. fstpt 96(%esp)
  1259. fldt 96(%esp)
  1260. fmulp %st, %st(1)
  1261. fstpt 96(%esp)
  1262. fldt 96(%esp)
  1263. faddp %st, %st(1)
  1264. faddp %st, %st(2)
  1265. fldl 2056+__libm_expl_table_256@GOTOFF(%edx,%ebx)
  1266. fldl 2048+__libm_expl_table_256@GOTOFF(%edx,%ebx)
  1267. fld %st(0)
  1268. fmul %st(4), %st
  1269. fxch %st(3)
  1270. fadd %st, %st(4)
  1271. fxch %st(2)
  1272. fmul %st, %st(4)
  1273. fxch %st(4)
  1274. faddp %st, %st(3)
  1275. fmul %st, %st(1)
  1276. fstpt 96(%esp)
  1277. fldt 96(%esp)
  1278. fadd %st(1), %st
  1279. fldt 96(%esp)
  1280. fsub %st(1), %st
  1281. fstpt 96(%esp)
  1282. fldt 96(%esp)
  1283. faddp %st, %st(2)
  1284. fxch %st(1)
  1285. fstpt 96(%esp)
  1286. fldt 96(%esp)
  1287. faddp %st, %st(3)
  1288. fxch %st(1)
  1289. faddp %st, %st(2)
  1290. ja ..B1.130
  1291. ..B1.128:
  1292. fldt 56(%esp)
  1293. fldt _Eexpbut@GOTOFF(%ebx)
  1294. fcompp
  1295. fnstsw %ax
  1296. sahf
  1297. jbe ..B1.130
  1298. ..B1.129:
  1299. fldl _TWO_12H@GOTOFF(%ebx)
  1300. fxch %st(1)
  1301. fstpt 96(%esp)
  1302. fldt 96(%esp)
  1303. fadd %st(2), %st
  1304. fmul %st, %st(1)
  1305. movl 124(%esp), %eax
  1306. fadd %st(1), %st
  1307. fstpt 84(%esp)
  1308. lea (,%eax,8), %esi
  1309. fldt 84(%esp)
  1310. lea (%esi,%eax,4), %edx
  1311. fsubp %st, %st(1)
  1312. fldt 96(%esp)
  1313. fsub %st(1), %st
  1314. fstpt 96(%esp)
  1315. fldt 96(%esp)
  1316. faddp %st, %st(2)
  1317. fldt 12(%esp)
  1318. fmul %st, %st(1)
  1319. fmulp %st, %st(2)
  1320. fldt _ESC2@GOTOFF(%edx,%ebx)
  1321. fmul %st, %st(1)
  1322. fmulp %st, %st(2)
  1323. faddp %st, %st(1)
  1324. fstpt 24(%esp)
  1325. jmp ..B1.131
  1326. ..B1.130:
  1327. movl 124(%esp), %eax
  1328. lea (,%eax,8), %esi
  1329. lea (%esi,%eax,4), %edx
  1330. fldt _ESC2@GOTOFF(%edx,%ebx)
  1331. fmul %st, %st(1)
  1332. fmulp %st, %st(2)
  1333. faddp %st, %st(1)
  1334. fldt 12(%esp)
  1335. fmulp %st, %st(1)
  1336. fstpt 24(%esp)
  1337. ..B1.131:
  1338. movzwl 32(%esp), %eax
  1339. shll $16, %eax
  1340. movzwl 30(%esp), %edx
  1341. orl %edx, %eax
  1342. andl $2147483647, %eax
  1343. lea -98304(%eax), %ecx
  1344. cmpl $2147319808, %ecx
  1345. jb ..B1.138
  1346. ..B1.132:
  1347. movl 108(%esp), %ecx
  1348. cmpl $65535, %eax
  1349. lea (,%ecx,8), %edx
  1350. lea (%edx,%ecx,4), %edx
  1351. ja ..B1.134
  1352. ..B1.133:
  1353. fldt _small_value_80@GOTOFF(%edx,%ebx)
  1354. fldt _small_value_80@GOTOFF(%ebx)
  1355. fmulp %st, %st(1)
  1356. fstpt 136(%esp)
  1357. jmp ..B1.135
  1358. ..B1.134:
  1359. fldt _large_value_80@GOTOFF(%edx,%ebx)
  1360. fldt _large_value_80@GOTOFF(%ebx)
  1361. fmulp %st, %st(1)
  1362. fstpt 24(%esp)
  1363. ..B1.135:
  1364. cmpl $0, 36(%esp)
  1365. je ..B1.137
  1366. ..B1.136:
  1367. fldcw 70(%esp)
  1368. ..B1.137:
  1369. fldt 24(%esp)
  1370. addl $148, %esp
  1371. popl %ebx
  1372. popl %edi
  1373. popl %esi
  1374. movl %ebp, %esp
  1375. popl %ebp
  1376. ret
  1377. ..B1.138:
  1378. cmpl $0, 36(%esp)
  1379. je ..B1.140
  1380. ..B1.139:
  1381. fldcw 70(%esp)
  1382. ..B1.140:
  1383. fldt 24(%esp)
  1384. addl $148, %esp
  1385. popl %ebx
  1386. popl %edi
  1387. popl %esi
  1388. movl %ebp, %esp
  1389. popl %ebp
  1390. ret
  1391. ..B1.141:
  1392. fldt 8(%ebp)
  1393. fdivrl _ones@GOTOFF(%ebx)
  1394. fstpt 24(%esp)
  1395. jmp ..B1.41
  1396. ..B1.142:
  1397. xorl %esi, %esi
  1398. jmp ..B1.48
  1399. ..B1.143:
  1400. fstp %st(2)
  1401. fstp %st(3)
  1402. cmpl $0, 56(%esp)
  1403. jne ..B1.145
  1404. ..B1.144:
  1405. fstp %st(1)
  1406. fxch %st(1)
  1407. fstpt 40(%esp)
  1408. fldt 40(%esp)
  1409. fxch %st(1)
  1410. jmp ..B1.146
  1411. ..B1.145:
  1412. fld %st(2)
  1413. fadd %st(1), %st
  1414. fdivr %st, %st(2)
  1415. fxch %st(2)
  1416. fstpt 40(%esp)
  1417. fldt 40(%esp)
  1418. movl $0, 40(%esp)
  1419. fstpt 56(%esp)
  1420. fldt 56(%esp)
  1421. fldt 40(%esp)
  1422. fld %st(0)
  1423. fsubr %st(2), %st
  1424. fmul %st, %st(4)
  1425. fxch %st(1)
  1426. fmul %st, %st(3)
  1427. fxch %st(4)
  1428. faddp %st, %st(3)
  1429. fxch %st(3)
  1430. fmul %st, %st(4)
  1431. fxch %st(4)
  1432. faddl 8+_ones@GOTOFF(%ebx)
  1433. faddp %st, %st(2)
  1434. fmulp %st, %st(1)
  1435. fsubrp %st, %st(1)
  1436. ..B1.146:
  1437. fldt 12(%esp)
  1438. fld %st(2)
  1439. fmul %st(1), %st
  1440. fld %st(2)
  1441. fmul %st(2), %st
  1442. faddp %st, %st(1)
  1443. fstpt 24(%esp)
  1444. movzwl 32(%esp), %eax
  1445. shll $16, %eax
  1446. movzwl 30(%esp), %edx
  1447. orl %edx, %eax
  1448. andl $2147483647, %eax
  1449. cmpl $65535, %eax
  1450. ja ..B1.148
  1451. ..B1.147:
  1452. fldt 40(%esp)
  1453. fmul %st(1), %st
  1454. fstpt 40(%esp)
  1455. fldt 40(%esp)
  1456. fxch %st(3)
  1457. fstpt 96(%esp)
  1458. fld %st(0)
  1459. fdivr %st(3), %st
  1460. fldt 96(%esp)
  1461. fsub %st(1), %st
  1462. fstpt 96(%esp)
  1463. fldt 96(%esp)
  1464. faddp %st, %st(3)
  1465. fxch %st(1)
  1466. fmul %st, %st(2)
  1467. fxch %st(2)
  1468. fadd %st, %st(3)
  1469. fxch %st(3)
  1470. fstpt 24(%esp)
  1471. movzwl 32(%esp), %eax
  1472. shll $16, %eax
  1473. movzwl 30(%esp), %edx
  1474. orl %edx, %eax
  1475. andl $2147483647, %eax
  1476. fxch %st(2)
  1477. fxch %st(1)
  1478. ..B1.148:
  1479. fstp %st(1)
  1480. fstp %st(1)
  1481. fstp %st(0)
  1482. lea -98304(%eax), %edx
  1483. cmpl $2147319808, %edx
  1484. jb ..B1.84
  1485. ..B1.149:
  1486. movl 108(%esp), %ecx
  1487. cmpl $65535, %eax
  1488. lea (,%ecx,8), %edx
  1489. lea (%edx,%ecx,4), %edx
  1490. ja ..B1.151
  1491. ..B1.150:
  1492. fldt _small_value_80@GOTOFF(%edx,%ebx)
  1493. fldt _small_value_80@GOTOFF(%ebx)
  1494. fmulp %st, %st(1)
  1495. fstpt 136(%esp)
  1496. jmp ..B1.152
  1497. ..B1.151:
  1498. fldt _large_value_80@GOTOFF(%edx,%ebx)
  1499. fldt _large_value_80@GOTOFF(%ebx)
  1500. fmulp %st, %st(1)
  1501. fstpt 24(%esp)
  1502. ..B1.152:
  1503. cmpl $0, 36(%esp)
  1504. je ..B1.154
  1505. ..B1.153:
  1506. fldcw 70(%esp)
  1507. ..B1.154:
  1508. fldt 24(%esp)
  1509. addl $148, %esp
  1510. popl %ebx
  1511. popl %edi
  1512. popl %esi
  1513. movl %ebp, %esp
  1514. popl %ebp
  1515. ret
  1516. ..B1.155:
  1517. movl $0, 36(%esp)
  1518. jmp ..B1.65
  1519. ..B1.156:
  1520. cmpl $-2147483648, 60(%esp)
  1521. jne ..B1.158
  1522. ..B1.157:
  1523. cmpl $0, 36(%esp)
  1524. je ..B1.159
  1525. ..B1.158:
  1526. fldt 8(%ebp)
  1527. fldt 20(%ebp)
  1528. fmulp %st, %st(1)
  1529. fstpt 136(%esp)
  1530. fldt 136(%esp)
  1531. fstpt 24(%esp)
  1532. fldt 24(%esp)
  1533. addl $148, %esp
  1534. popl %ebx
  1535. popl %edi
  1536. popl %esi
  1537. movl %ebp, %esp
  1538. popl %ebp
  1539. ret
  1540. ..B1.159:
  1541. cmpl $32767, 44(%esp)
  1542. je ..B1.181
  1543. ..B1.160:
  1544. cmpl $32767, 48(%esp)
  1545. jne ..B1.20
  1546. ..B1.161:
  1547. cmpl $-2147483648, 60(%esp)
  1548. jne ..B1.20
  1549. ..B1.162:
  1550. cmpl $0, 36(%esp)
  1551. jne ..B1.20
  1552. ..B1.163:
  1553. cmpl $1073709056, %esi
  1554. jae ..B1.174
  1555. ..B1.164:
  1556. movl 32(%esp), %eax
  1557. orl %esi, %eax
  1558. jne ..B1.168
  1559. ..B1.165:
  1560. fldl _zeros@GOTOFF(%ebx)
  1561. cmpl $0, 56(%esp)
  1562. jne ..B1.180
  1563. ..B1.167:
  1564. addl $148, %esp
  1565. popl %ebx
  1566. popl %edi
  1567. popl %esi
  1568. movl %ebp, %esp
  1569. popl %ebp
  1570. ret
  1571. ..B1.168:
  1572. cmpl $65536, %esi
  1573. jae ..B1.170
  1574. ..B1.169:
  1575. fldl _smallest_value_64@GOTOFF(%ebx)
  1576. fstpl 128(%esp)
  1577. ..B1.170:
  1578. cmpl $0, 56(%esp)
  1579. je ..B1.172
  1580. ..B1.171:
  1581. fldl _infs@GOTOFF(%ebx)
  1582. addl $148, %esp
  1583. popl %ebx
  1584. popl %edi
  1585. popl %esi
  1586. movl %ebp, %esp
  1587. popl %ebp
  1588. ret
  1589. ..B1.172:
  1590. fldl _zeros@GOTOFF(%ebx)
  1591. ..B1.173:
  1592. addl $148, %esp
  1593. popl %ebx
  1594. popl %edi
  1595. popl %esi
  1596. movl %ebp, %esp
  1597. popl %ebp
  1598. ret
  1599. ..B1.174:
  1600. addl $-1073709056, %esi
  1601. orl 24(%esp), %esi
  1602. orl 32(%esp), %esi
  1603. je ..B1.179
  1604. ..B1.175:
  1605. cmpl $0, 56(%esp)
  1606. je ..B1.177
  1607. ..B1.176:
  1608. fldl _zeros@GOTOFF(%ebx)
  1609. addl $148, %esp
  1610. popl %ebx
  1611. popl %edi
  1612. popl %esi
  1613. movl %ebp, %esp
  1614. popl %ebp
  1615. ret
  1616. ..B1.177:
  1617. fldl _infs@GOTOFF(%ebx)
  1618. ..B1.178:
  1619. addl $148, %esp
  1620. popl %ebx
  1621. popl %edi
  1622. popl %esi
  1623. movl %ebp, %esp
  1624. popl %ebp
  1625. ret
  1626. ..B1.179:
  1627. movl 12(%esp), %eax
  1628. fldl _ones@GOTOFF(%ebx,%eax,8)
  1629. addl $148, %esp
  1630. popl %ebx
  1631. popl %edi
  1632. popl %esi
  1633. movl %ebp, %esp
  1634. popl %ebp
  1635. ret
  1636. ..B1.180:
  1637. fldl _ones@GOTOFF(%ebx)
  1638. fdivp %st, %st(1)
  1639. fstpt 24(%esp)
  1640. fldt 24(%esp)
  1641. addl $148, %esp
  1642. popl %ebx
  1643. popl %edi
  1644. popl %esi
  1645. movl %ebp, %esp
  1646. popl %ebp
  1647. ret
  1648. ..B1.181:
  1649. cmpl $-2147483648, %edx
  1650. jne ..B1.160
  1651. ..B1.182:
  1652. cmpl $0, 32(%esp)
  1653. jne ..B1.160
  1654. ..B1.183:
  1655. cmpl $65536, %eax
  1656. jae ..B1.185
  1657. ..B1.184:
  1658. fldl _smallest_value_64@GOTOFF(%ebx)
  1659. fstpl 128(%esp)
  1660. ..B1.185:
  1661. cmpl $0, 40(%esp)
  1662. movl %ecx, %eax
  1663. je ..L7
  1664. movl $0, %eax
  1665. ..L7:
  1666. movl %eax, 108(%esp)
  1667. cmpl $0, 56(%esp)
  1668. je ..B1.187
  1669. ..B1.186:
  1670. fldl _zeros@GOTOFF(%ebx,%eax,8)
  1671. addl $148, %esp
  1672. popl %ebx
  1673. popl %edi
  1674. popl %esi
  1675. movl %ebp, %esp
  1676. popl %ebp
  1677. ret
  1678. ..B1.187:
  1679. fldl _infs@GOTOFF(%ebx,%eax,8)
  1680. ..B1.188:
  1681. addl $148, %esp
  1682. popl %ebx
  1683. popl %edi
  1684. popl %esi
  1685. movl %ebp, %esp
  1686. popl %ebp
  1687. ret
  1688. ..B1.189:
  1689. cmpl $-2147483648, %edx
  1690. jne ..B1.158
  1691. ..B1.190:
  1692. cmpl $0, 32(%esp)
  1693. jne ..B1.158
  1694. ..B1.191:
  1695. cmpl $32767, 48(%esp)
  1696. je ..B1.156
  1697. jmp ..B1.159
  1698. ..B1.192:
  1699. fldl _infs@GOTOFF(%ebx)
  1700. fmull _zeros@GOTOFF(%ebx)
  1701. fstpt 24(%esp)
  1702. fldt 24(%esp)
  1703. addl $148, %esp
  1704. popl %ebx
  1705. popl %edi
  1706. popl %esi
  1707. movl %ebp, %esp
  1708. popl %ebp
  1709. ret
  1710. ..B1.193:
  1711. movl 108(%esp), %eax
  1712. fldl _ones@GOTOFF(%ebx,%eax,8)
  1713. fdivl _zeros@GOTOFF(%ebx)
  1714. fstpt 24(%esp)
  1715. fldt 24(%esp)
  1716. addl $148, %esp
  1717. popl %ebx
  1718. popl %edi
  1719. popl %esi
  1720. movl %ebp, %esp
  1721. popl %ebp
  1722. ret
  1723. .align 16,0x90
  1724. .type powl,@function
  1725. .size powl,.-powl
  1726. .data
  1727. # -- End powl
  1728. .text
  1729. # -- Begin __sqrtl
  1730. .text
  1731. .align 16,0x90
  1732. __sqrtl:
  1733. # parameter 1: 4 + %esp
  1734. ..B2.1:
  1735. ..L8:
  1736. ..B2.2:
  1737. movl 4(%esp), %ecx
  1738. fldt (%ecx)
  1739. fsqrt
  1740. ret
  1741. ..B2.3:
  1742. .align 16,0x90
  1743. .type __sqrtl,@function
  1744. .size __sqrtl,.-__sqrtl
  1745. .data
  1746. # -- End __sqrtl
  1747. .section .rodata, "a"
  1748. .align 16
  1749. .align 16
  1750. .L_2il0floatpacket.0:
  1751. .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xfe,0xbf,0x00,0x00
  1752. .type .L_2il0floatpacket.0,@object
  1753. .size .L_2il0floatpacket.0,12
  1754. .space 4, 0x00 # pad
  1755. .align 16
  1756. .L_2il0floatpacket.1:
  1757. .byte 0x00,0xf0,0x17,0x5c,0x29,0x3b,0xaa,0xb8,0x07,0x40,0x00,0x00
  1758. .type .L_2il0floatpacket.1,@object
  1759. .size .L_2il0floatpacket.1,12
  1760. .space 4, 0x00 # pad
  1761. .align 16
  1762. .L_2il0floatpacket.2:
  1763. .byte 0x00,0x00,0x00,0x00,0xf8,0x17,0x72,0xb1,0xf6,0x3f,0x00,0x00
  1764. .type .L_2il0floatpacket.2,@object
  1765. .size .L_2il0floatpacket.2,12
  1766. .space 4, 0x00 # pad
  1767. .align 16
  1768. .L_2il0floatpacket.3:
  1769. .byte 0x00,0x30,0x71,0xd8,0x50,0x19,0xc2,0xb8,0xd4,0xbf,0x00,0x00
  1770. .type .L_2il0floatpacket.3,@object
  1771. .size .L_2il0floatpacket.3,12
  1772. .align 4
  1773. _ones:
  1774. .long 0
  1775. .long 1072693248
  1776. .long 0
  1777. .long 3220176896
  1778. .type _ones,@object
  1779. .size _ones,16
  1780. .align 4
  1781. _smallest_value_64:
  1782. .long 1
  1783. .long 0
  1784. .long 1
  1785. .long 2147483648
  1786. .type _smallest_value_64,@object
  1787. .size _smallest_value_64,16
  1788. .align 4
  1789. _zeros:
  1790. .long 0
  1791. .long 0
  1792. .long 0
  1793. .long 2147483648
  1794. .type _zeros,@object
  1795. .size _zeros,16
  1796. .align 4
  1797. _TWO_43H:
  1798. .long 0
  1799. .long 1118306304
  1800. .type _TWO_43H,@object
  1801. .size _TWO_43H,8
  1802. .align 4
  1803. _exact_masks:
  1804. .long 131071
  1805. .long 0
  1806. .long 4294967295
  1807. .long 1
  1808. .long 4294967295
  1809. .long 511
  1810. .long 4294967295
  1811. .long 16383
  1812. .long 4294967295
  1813. .long 131071
  1814. .long 4294967295
  1815. .long 1048575
  1816. .long 4294967295
  1817. .long 2097151
  1818. .long 4294967295
  1819. .long 8388607
  1820. .long 4294967295
  1821. .long 16777215
  1822. .long 4294967295
  1823. .long 33554431
  1824. .long 4294967295
  1825. .long 33554431
  1826. .long 4294967295
  1827. .long 67108863
  1828. .long 4294967295
  1829. .long 134217727
  1830. .long 4294967295
  1831. .long 134217727
  1832. .long 4294967295
  1833. .long 134217727
  1834. .long 4294967295
  1835. .long 268435455
  1836. .long 4294967295
  1837. .long 268435455
  1838. .long 4294967295
  1839. .long 268435455
  1840. .long 4294967295
  1841. .long 536870911
  1842. .long 4294967295
  1843. .long 536870911
  1844. .long 4294967295
  1845. .long 536870911
  1846. .long 4294967295
  1847. .long 536870911
  1848. .long 4294967295
  1849. .long 536870911
  1850. .long 4294967295
  1851. .long 1073741823
  1852. .long 4294967295
  1853. .long 1073741823
  1854. .long 4294967295
  1855. .long 1073741823
  1856. .long 4294967295
  1857. .long 1073741823
  1858. .long 4294967295
  1859. .long 1073741823
  1860. .long 4294967295
  1861. .long 1073741823
  1862. .long 4294967295
  1863. .long 1073741823
  1864. .long 4294967295
  1865. .long 1073741823
  1866. .long 4294967295
  1867. .long 2147483647
  1868. .long 4294967295
  1869. .long 2147483647
  1870. .long 4294967295
  1871. .long 2147483647
  1872. .long 4294967295
  1873. .long 2147483647
  1874. .long 4294967295
  1875. .long 2147483647
  1876. .long 4294967295
  1877. .long 2147483647
  1878. .long 4294967295
  1879. .long 2147483647
  1880. .long 4294967295
  1881. .long 2147483647
  1882. .long 4294967295
  1883. .long 2147483647
  1884. .long 4294967295
  1885. .long 2147483647
  1886. .long 4294967295
  1887. .long 2147483647
  1888. .long 4294967295
  1889. .long 2147483647
  1890. .long 4294967295
  1891. .long 2147483647
  1892. .long 4294967295
  1893. .long 2147483647
  1894. .long 4294967295
  1895. .long 2147483647
  1896. .long 4294967295
  1897. .long 2147483647
  1898. .type _exact_masks,@object
  1899. .size _exact_masks,376
  1900. .align 4
  1901. _TWO_75:
  1902. .long 0
  1903. .long 1151336448
  1904. .long 0
  1905. .long 994050048
  1906. .type _TWO_75,@object
  1907. .size _TWO_75,16
  1908. .align 4
  1909. iones:
  1910. .long 1
  1911. .long -1
  1912. .type iones,@object
  1913. .size iones,8
  1914. .align 4
  1915. _TWO_32H:
  1916. .long 0
  1917. .long 1106771968
  1918. .type _TWO_32H,@object
  1919. .size _TWO_32H,8
  1920. .align 4
  1921. _LT2:
  1922. .long 180342526
  1923. .long 2357584585
  1924. .long 2340989257
  1925. .long 193458247
  1926. .long 2370723239
  1927. .long 2317577053
  1928. .long 2382055315
  1929. .long 232148275
  1930. .long 200972627
  1931. .long 2376530255
  1932. .long 2376860906
  1933. .long 222325808
  1934. .long 228268523
  1935. .long 229816737
  1936. .long 2387925496
  1937. .long 239088248
  1938. .long 235445027
  1939. .long 219576635
  1940. .long 2365457762
  1941. .long 200344795
  1942. .long 2377779510
  1943. .long 2396359259
  1944. .long 256760275
  1945. .long 2390604874
  1946. .long 2403557039
  1947. .long 2397936349
  1948. .long 2387307486
  1949. .long 2389941185
  1950. .long 2375749593
  1951. .long 224865835
  1952. .long 2394232861
  1953. .long 180745560
  1954. .long 231885773
  1955. .long 2352962188
  1956. .long 2306055684
  1957. .long 206875141
  1958. .long 258325764
  1959. .long 2386208973
  1960. .long 231066739
  1961. .long 195513036
  1962. .long 2360327132
  1963. .long 2396045581
  1964. .long 236564318
  1965. .long 2282584976
  1966. .long 2351736009
  1967. .long 236364231
  1968. .long 2384427773
  1969. .long 267355851
  1970. .long 255771104
  1971. .long 265321597
  1972. .long 2384375360
  1973. .long 2399209743
  1974. .long 186438128
  1975. .long 2407131686
  1976. .long 2382793784
  1977. .long 2395218767
  1978. .long 229223248
  1979. .long 256892528
  1980. .long 2394735602
  1981. .long 2385223602
  1982. .long 2372921302
  1983. .long 2398642377
  1984. .long 2399679754
  1985. .long 255686225
  1986. .long 220689523
  1987. .long 2385772978
  1988. .long 209771590
  1989. .long 2396079173
  1990. .long 247531082
  1991. .long 236085121
  1992. .long 264660069
  1993. .long 2357821390
  1994. .long 236486650
  1995. .long 2368138461
  1996. .long 239690108
  1997. .long 2396070228
  1998. .long 196955922
  1999. .long 217533735
  2000. .long 255641653
  2001. .long 249646543
  2002. .long 253232621
  2003. .long 246212714
  2004. .long 2396427575
  2005. .long 261629730
  2006. .long 2364672847
  2007. .long 2403865410
  2008. .long 251273869
  2009. .long 261125380
  2010. .long 2388321036
  2011. .long 2375891827
  2012. .long 2381014317
  2013. .long 2414822930
  2014. .long 2406245053
  2015. .long 2406988902
  2016. .long 2395399973
  2017. .long 213294711
  2018. .long 2401319324
  2019. .long 265450299
  2020. .long 231845893
  2021. .long 260578794
  2022. .long 258934474
  2023. .long 2368795786
  2024. .long 2422506717
  2025. .long 218205033
  2026. .long 258708287
  2027. .long 257044854
  2028. .long 2396281866
  2029. .long 2415975150
  2030. .long 257697283
  2031. .long 2393801226
  2032. .long 2388654986
  2033. .long 262910764
  2034. .long 235638432
  2035. .long 268054962
  2036. .long 271083258
  2037. .long 256780444
  2038. .long 256064350
  2039. .long 252979189
  2040. .long 2420460964
  2041. .long 233178508
  2042. .long 251655134
  2043. .long 2404577473
  2044. .long 2408876374
  2045. .long 2401072099
  2046. .long 228623072
  2047. .long 2421706621
  2048. .long 2353033467
  2049. .long 2411792212
  2050. .long 2345330012
  2051. .long 2397189005
  2052. .long 243110369
  2053. .long 2408213151
  2054. .long 219253901
  2055. .long 246695172
  2056. .long 259288551
  2057. .long 254210780
  2058. .long 261865355
  2059. .long 230359170
  2060. .long 263524551
  2061. .long 2405618542
  2062. .long 2399869921
  2063. .long 233826616
  2064. .long 2362750769
  2065. .long 257576291
  2066. .long 251808114
  2067. .long 2403390977
  2068. .long 253249058
  2069. .long 261065811
  2070. .long 215406974
  2071. .long 2407628993
  2072. .long 258391343
  2073. .long 2394470699
  2074. .long 258495470
  2075. .long 2415771687
  2076. .long 224670583
  2077. .long 263047889
  2078. .long 2389031226
  2079. .long 259453051
  2080. .long 266564569
  2081. .long 2422023012
  2082. .long 264051375
  2083. .long 2409075373
  2084. .long 252244729
  2085. .long 220302768
  2086. .long 254847756
  2087. .long 243124762
  2088. .long 2363519942
  2089. .long 2393496158
  2090. .long 2402135082
  2091. .long 2365706590
  2092. .long 237902971
  2093. .long 262295026
  2094. .long 252689257
  2095. .long 236678680
  2096. .long 255167613
  2097. .long 2406879752
  2098. .long 274254693
  2099. .long 259983961
  2100. .long 245852525
  2101. .long 256459527
  2102. .long 220533989
  2103. .long 245387845
  2104. .long 243835221
  2105. .long 2377853444
  2106. .long 274540751
  2107. .long 229741069
  2108. .long 263626566
  2109. .long 220608387
  2110. .long 226161046
  2111. .long 247301717
  2112. .long 268433686
  2113. .long 222008210
  2114. .long 2414961139
  2115. .long 276137642
  2116. .long 2412197898
  2117. .long 258445918
  2118. .long 2412645341
  2119. .long 260857859
  2120. .long 263113037
  2121. .long 2386484264
  2122. .long 2390742630
  2123. .long 259665290
  2124. .long 2363417497
  2125. .long 2384122046
  2126. .long 263493300
  2127. .long 219472625
  2128. .long 2420433676
  2129. .long 274201285
  2130. .long 2404911312
  2131. .long 257926520
  2132. .long 260332203
  2133. .long 256695016
  2134. .long 218494534
  2135. .long 2420150889
  2136. .long 2414586287
  2137. .long 267006159
  2138. .long 231320206
  2139. .long 2382797064
  2140. .long 2414903062
  2141. .long 263514471
  2142. .long 2406010284
  2143. .long 2410428205
  2144. .long 2414319991
  2145. .long 249083715
  2146. .long 2381171937
  2147. .long 236369629
  2148. .long 2409614279
  2149. .long 2424220710
  2150. .long 2378379154
  2151. .long 218677462
  2152. .long 2382987336
  2153. .long 2377870458
  2154. .long 258155310
  2155. .long 2368239928
  2156. .long 2414896572
  2157. .long 193310867
  2158. .long 256673115
  2159. .long 2406448055
  2160. .long 271719709
  2161. .long 248566852
  2162. .long 229016248
  2163. .long 272541555
  2164. .long 2382115967
  2165. .long 2375311600
  2166. .long 2393766434
  2167. .long 257187362
  2168. .long 277931545
  2169. .long 281038165
  2170. .long 2373962226
  2171. .long 261638946
  2172. .long 255465134
  2173. .long 273460929
  2174. .long 275851296
  2175. .long 2417166241
  2176. .long 2361106656
  2177. .long 278653754
  2178. .type _LT2,@object
  2179. .size _LT2,1024
  2180. .align 4
  2181. _TWO_63H:
  2182. .long 0
  2183. .long 1139277824
  2184. .type _TWO_63H,@object
  2185. .size _TWO_63H,8
  2186. .align 4
  2187. ESC2_BIAS:
  2188. .long 4095
  2189. .long 28671
  2190. .type ESC2_BIAS,@object
  2191. .size ESC2_BIAS,8
  2192. .align 4
  2193. _TWO_12H:
  2194. .long 0
  2195. .long 1085800448
  2196. .type _TWO_12H,@object
  2197. .size _TWO_12H,8
  2198. .align 4
  2199. _infs:
  2200. .long 0
  2201. .long 2146435072
  2202. .long 0
  2203. .long 4293918720
  2204. .type _infs,@object
  2205. .size _infs,16
  2206. .align 2
  2207. _invsqrtl_scales:
  2208. .word 0
  2209. .word 0
  2210. .word 0
  2211. .word 32768
  2212. .word 24575
  2213. .word 0
  2214. .word 0
  2215. .word 0
  2216. .word 0
  2217. .word 32768
  2218. .word 20479
  2219. .word 0
  2220. .word 0
  2221. .word 0
  2222. .word 0
  2223. .word 32768
  2224. .word 8191
  2225. .word 0
  2226. .word 0
  2227. .word 0
  2228. .word 0
  2229. .word 32768
  2230. .word 12287
  2231. .word 0
  2232. .type _invsqrtl_scales,@object
  2233. .size _invsqrtl_scales,48
  2234. .align 2
  2235. _small_value_80:
  2236. .word 0
  2237. .word 0
  2238. .word 0
  2239. .word 32768
  2240. .word 6383
  2241. .word 0
  2242. .word 0
  2243. .word 0
  2244. .word 0
  2245. .word 32768
  2246. .word 39151
  2247. .word 0
  2248. .type _small_value_80,@object
  2249. .size _small_value_80,24
  2250. .align 2
  2251. _large_value_80:
  2252. .word 0
  2253. .word 0
  2254. .word 0
  2255. .word 32768
  2256. .word 26383
  2257. .word 0
  2258. .word 0
  2259. .word 0
  2260. .word 0
  2261. .word 32768
  2262. .word 59151
  2263. .word 0
  2264. .type _large_value_80,@object
  2265. .size _large_value_80,24
  2266. .align 2
  2267. _LP:
  2268. .word 0
  2269. .word 0
  2270. .word 0
  2271. .word 32768
  2272. .word 49150
  2273. .word 0
  2274. .word 43691
  2275. .word 43690
  2276. .word 43690
  2277. .word 43690
  2278. .word 16381
  2279. .word 0
  2280. .word 0
  2281. .word 0
  2282. .word 0
  2283. .word 32768
  2284. .word 49149
  2285. .word 0
  2286. .word 52785
  2287. .word 52428
  2288. .word 52428
  2289. .word 52428
  2290. .word 16380
  2291. .word 0
  2292. .word 44453
  2293. .word 43690
  2294. .word 43690
  2295. .word 43690
  2296. .word 49148
  2297. .word 0
  2298. .word 25655
  2299. .word 14678
  2300. .word 9362
  2301. .word 37449
  2302. .word 16380
  2303. .word 0
  2304. .word 38741
  2305. .word 53722
  2306. .word 65535
  2307. .word 65535
  2308. .word 49147
  2309. .word 0
  2310. .word 45676
  2311. .word 59527
  2312. .word 48579
  2313. .word 58254
  2314. .word 16379
  2315. .word 0
  2316. .word 41682
  2317. .word 64796
  2318. .word 25002
  2319. .word 52429
  2320. .word 49147
  2321. .word 0
  2322. .type _LP,@object
  2323. .size _LP,108
  2324. .align 2
  2325. _LLN2:
  2326. .word 0
  2327. .word 53711
  2328. .word 6135
  2329. .word 45426
  2330. .word 16382
  2331. .word 0
  2332. .word 2022
  2333. .word 26416
  2334. .word 37831
  2335. .word 62295
  2336. .word 16333
  2337. .word 0
  2338. .type _LLN2,@object
  2339. .size _LLN2,24
  2340. .align 2
  2341. _EP1:
  2342. .word 43691
  2343. .word 10
  2344. .word 0
  2345. .word 32768
  2346. .word 16382
  2347. .word 0
  2348. .word 30584
  2349. .word 43703
  2350. .word 43690
  2351. .word 43690
  2352. .word 16380
  2353. .word 0
  2354. .type _EP1,@object
  2355. .size _EP1,24
  2356. .align 2
  2357. _EP:
  2358. .word 0
  2359. .word 0
  2360. .word 0
  2361. .word 32768
  2362. .word 16382
  2363. .word 0
  2364. .word 10558
  2365. .word 43680
  2366. .word 43690
  2367. .word 43690
  2368. .word 16380
  2369. .word 0
  2370. .word 59664
  2371. .word 43680
  2372. .word 43690
  2373. .word 43690
  2374. .word 16378
  2375. .word 0
  2376. .word 56450
  2377. .word 15979
  2378. .word 35652
  2379. .word 34952
  2380. .word 16376
  2381. .word 0
  2382. .word 7105
  2383. .word 47411
  2384. .word 25657
  2385. .word 46603
  2386. .word 16373
  2387. .word 0
  2388. .type _EP,@object
  2389. .size _EP,60
  2390. .align 2
  2391. _Eexpbut:
  2392. .word 60207
  2393. .word 4624
  2394. .word 35943
  2395. .word 45420
  2396. .word 49164
  2397. .word 0
  2398. .type _Eexpbut,@object
  2399. .size _Eexpbut,12
  2400. .align 2
  2401. _ESC2:
  2402. .word 0
  2403. .word 0
  2404. .word 0
  2405. .word 32768
  2406. .word 28671
  2407. .word 0
  2408. .word 0
  2409. .word 0
  2410. .word 0
  2411. .word 32768
  2412. .word 4095
  2413. .word 0
  2414. .type _ESC2,@object
  2415. .size _ESC2,24
  2416. .data
  2417. .hidden __libm_rcp_table_256
  2418. .hidden __libm_logl_table_256
  2419. .hidden __libm_expl_table_256
  2420. .section .note.GNU-stack, ""
  2421. # End