1/* 2Copyright (c) 2014, Intel Corporation 3All rights reserved. 4 5Redistribution and use in source and binary forms, with or without 6modification, are permitted provided that the following conditions are met: 7 8 * Redistributions of source code must retain the above copyright notice, 9 * this list of conditions and the following disclaimer. 10 11 * Redistributions in binary form must reproduce the above copyright notice, 12 * this list of conditions and the following disclaimer in the documentation 13 * and/or other materials provided with the distribution. 14 15 * Neither the name of Intel Corporation nor the names of its contributors 16 * may be used to endorse or promote products derived from this software 17 * without specific prior written permission. 18 19THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 20ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 21WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 22DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR 23ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 24(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 25LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 26ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 28SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29*/ 30 31/******************************************************************************/ 32// ALGORITHM DESCRIPTION 33// --------------------- 34// 35// cosh(x)=(exp(x)+exp(-x))/2 36// 37// Let |x|=xH+xL (upper 26 bits, lower 27 bits) 38// log2(e) rounded to 26 bits (high part) plus a double precision low part is 39// L2EH+L2EL (upper 26, lower 53 bits) 40// 41// Let xH*L2EH=k+f+r`, where (k+f)*2^7=int(xH*L2EH*2^7), 42// f=0.b1 b2 ... b7, k integer 43// 2^f is approximated as Tp[f]+Dp[f], and 2^{-f} as Tn[f]+Dn[f] 44// Tp stores higher 53 bits, Dp stores (2^f-Tp[f]) rounded to double precision 45// 46// e^|x|=2^{k+f}*2^r, r=r`+xL*L2EH+|x|*L2EL, |r|<2^{-8}+2^{-14}, 47// for |x| in [1/8,3*2^8) 48// e^{-|x|}=2^{-k-f}*2^{-r} 49// 50// e^|x| is approximated as 2^k*Tp+2^k*Tp*c1*r(1+c2*r+..+c5*r^4)+2^k*Dp= 51// =2^k*Tp+2^k*Tp*P15+2^k*Dp 52// e^{-|x|} approximated as 2^{-k}*Tn-2^{-k}*Tn*c1*r(1-c2*r+..+c5*r^4) 53// 54// For |x| in [1/8, 3*2^7), cosh(x) is formed as 55// RN(2^k*Tp+2^{-k}*Tn)+2^k*Tp*P15+2^{-k}*Tn*P`15+2^{-k}*TnL+2^{-k}*Dn+2^k*Dp 56// 57// For |x| in [3*2^7, 3*2^8), (e^|x|)/2 is returned, and 58// the result is checked for overflow. 59// 60// For |x|<1/8, a Taylor polynomial expansion is used (degree 10) 61// (error bound for polynomial expansion is below 0.501 ulp) 62// 63// Special cases: 64// cosh(NaN) = quiet NaN, and raise invalid exception 65// cosh(INF) = that INF 66// cosh(0)=1 67// for finite argument, only cosh(0)=1 is exact 68// For IEEE double 69// cosh(x) overflows 70// for x > 710.47586007394386342639336362481117248535156250 = MAXLOG+log(2) 71// 72/******************************************************************************/ 73 74#include <private/bionic_asm.h> 75 76# -- Begin cosh 77ENTRY(cosh) 78# parameter 1: %xmm0 79..B1.1: 80..___tag_value_cosh.1: 81 pushq %rsi 82..___tag_value_cosh.3: 83..B1.2: 84 movsd HALFMASK(%rip), %xmm3 85 xorpd %xmm4, %xmm4 86 movsd L2E(%rip), %xmm1 87 movsd 8+L2E(%rip), %xmm2 88 movl $32768, %eax 89 pinsrw $3, %eax, %xmm4 90 movsd Shifter(%rip), %xmm6 91 pextrw $3, %xmm0, %ecx 92 andpd %xmm0, %xmm3 93 andnpd %xmm0, %xmm4 94 pshufd $68, %xmm4, %xmm5 95 andl $32767, %ecx 96 subl $16320, %ecx 97 cmpl $200, %ecx 98 jae .L_2TAG_PACKET_0.0.2 99 subsd %xmm3, %xmm4 100 mulsd %xmm1, %xmm3 101 mulsd %xmm5, %xmm2 102 cvtsd2si %xmm3, %eax 103 movq %xmm3, %xmm7 104 addsd %xmm6, %xmm3 105 mulsd %xmm4, %xmm1 106 xorpd %xmm5, %xmm5 107 subsd %xmm6, %xmm3 108 movapd cv(%rip), %xmm4 109 addsd %xmm1, %xmm2 110 movapd 16+cv(%rip), %xmm6 111 subsd %xmm3, %xmm7 112 movl $32704, %edx 113 pinsrw $3, %edx, %xmm5 114 movapd 32+cv(%rip), %xmm1 115 addsd %xmm7, %xmm2 116 movl $127, %edx 117 andl %eax, %edx 118 addl %edx, %edx 119 shrl $3, %eax 120 andl $65520, %eax 121 addl $16352, %eax 122 xorpd %xmm0, %xmm0 123 cmpl $184, %ecx 124 jae .L_2TAG_PACKET_1.0.2 125 pshufd $68, %xmm5, %xmm5 126 pinsrw $3, %eax, %xmm0 127 pshufd $68, %xmm0, %xmm0 128 psubw %xmm0, %xmm5 129 lea T2f(%rip), %r8 130 mulpd (%r8,%rdx,8), %xmm0 131 lea T2_neg_f(%rip), %r8 132 mulpd (%r8,%rdx,8), %xmm5 133 pshufd $68, %xmm2, %xmm3 134 movapd 48+cv(%rip), %xmm7 135 pshufd $68, %xmm2, %xmm2 136 mulpd %xmm3, %xmm3 137 mulpd %xmm2, %xmm4 138 mulpd %xmm2, %xmm6 139 mulpd 64+cv(%rip), %xmm2 140 mulpd %xmm3, %xmm1 141 mulpd %xmm3, %xmm7 142 mulpd %xmm3, %xmm4 143 mulpd %xmm3, %xmm1 144 addpd %xmm7, %xmm6 145 movq %xmm0, %xmm7 146 addpd %xmm1, %xmm4 147 shufpd $0, %xmm5, %xmm7 148 addpd %xmm5, %xmm0 149 mulpd %xmm7, %xmm2 150 addpd %xmm6, %xmm4 151 subsd %xmm0, %xmm7 152 mulpd %xmm2, %xmm4 153 pshufd $238, %xmm0, %xmm6 154 addsd %xmm5, %xmm7 155 addpd %xmm2, %xmm4 156 addsd %xmm6, %xmm7 157 pshufd $238, %xmm4, %xmm2 158 addsd %xmm7, %xmm2 159 addsd %xmm4, %xmm2 160 addsd %xmm2, %xmm0 161 jmp ..B1.5 162.L_2TAG_PACKET_0.0.2: 163 addl $16320, %ecx 164 cmpl $16320, %ecx 165 ja .L_2TAG_PACKET_2.0.2 166 cmpl $15952, %ecx 167 jae .L_2TAG_PACKET_3.0.2 168 addsd %xmm2, %xmm6 169 movq ONEMASK(%rip), %xmm0 170 jmp ..B1.5 171.L_2TAG_PACKET_1.0.2: 172 subl $16352, %eax 173 movl %eax, %ecx 174 andl $32752, %eax 175 shrl $1, %eax 176 andl $65520, %eax 177 subl %eax, %ecx 178 addl $16352, %eax 179 pinsrw $3, %eax, %xmm0 180 pshufd $68, %xmm0, %xmm0 181 lea T2f(%rip), %r8 182 mulpd (%r8,%rdx,8), %xmm0 183 pshufd $68, %xmm2, %xmm3 184 movsd 48+cv(%rip), %xmm7 185 mulsd %xmm3, %xmm3 186 mulsd %xmm2, %xmm4 187 mulsd %xmm2, %xmm6 188 mulsd 64+cv(%rip), %xmm2 189 mulsd %xmm3, %xmm1 190 mulsd %xmm3, %xmm7 191 mulsd %xmm3, %xmm4 192 addl $16368, %ecx 193 pinsrw $3, %ecx, %xmm5 194 mulsd %xmm3, %xmm1 195 addsd %xmm7, %xmm6 196 addsd %xmm1, %xmm4 197 mulsd %xmm0, %xmm2 198 addsd %xmm6, %xmm4 199 mulsd %xmm2, %xmm4 200 pshufd $238, %xmm0, %xmm6 201 addsd %xmm6, %xmm4 202 addsd %xmm4, %xmm2 203 addsd %xmm2, %xmm0 204 mulsd %xmm5, %xmm0 205 pextrw $3, %xmm0, %eax 206 andl $32752, %eax 207 cmpl $32752, %eax 208 je .L_2TAG_PACKET_4.0.2 209 jmp ..B1.5 210.L_2TAG_PACKET_3.0.2: 211 movapd pv(%rip), %xmm1 212 mulpd %xmm5, %xmm5 213 movapd 16+pv(%rip), %xmm2 214 xorpd %xmm3, %xmm3 215 movq %xmm5, %xmm0 216 mulpd %xmm5, %xmm1 217 movsd ONEMASK(%rip), %xmm6 218 mulpd %xmm5, %xmm5 219 movl $16352, %eax 220 pinsrw $3, %eax, %xmm3 221 addpd %xmm2, %xmm1 222 mulpd %xmm5, %xmm1 223 pshufd $238, %xmm1, %xmm2 224 mulsd %xmm1, %xmm5 225 mulsd %xmm3, %xmm0 226 addsd %xmm5, %xmm2 227 addsd %xmm2, %xmm0 228 addsd %xmm6, %xmm0 229 jmp ..B1.5 230.L_2TAG_PACKET_2.0.2: 231 cmpl $32752, %ecx 232 jae .L_2TAG_PACKET_5.0.2 233 xorpd %xmm0, %xmm0 234 movl $32736, %eax 235 pinsrw $3, %eax, %xmm0 236 mulsd %xmm0, %xmm0 237 jmp .L_2TAG_PACKET_4.0.2 238.L_2TAG_PACKET_5.0.2: 239 mulsd %xmm0, %xmm0 240 jmp ..B1.5 241.L_2TAG_PACKET_4.0.2: 242 movq %xmm0, (%rsp) 243..B1.3: 244 movq (%rsp), %xmm0 245.L_2TAG_PACKET_6.0.2: 246..B1.5: 247 popq %rcx 248..___tag_value_cosh.4: 249 ret 250..___tag_value_cosh.5: 251END(cosh) 252# -- End cosh 253 .section .rodata, "a" 254 .align 16 255 .align 16 256L2E: 257 .long 1610612736 258 .long 1080497479 259 .long 4166901572 260 .long 1053077003 261 .type L2E,@object 262 .size L2E,16 263 .align 16 264Shifter: 265 .long 0 266 .long 1127743488 267 .long 0 268 .long 3275227136 269 .type Shifter,@object 270 .size Shifter,16 271 .align 16 272cv: 273 .long 3607404736 274 .long 1044146952 275 .long 3607404736 276 .long 3191630600 277 .long 4277811695 278 .long 1063661122 279 .long 4277811695 280 .long 3211144770 281 .long 2140175755 282 .long 1033864261 283 .long 2140175755 284 .long 1033864261 285 .long 4289495988 286 .long 1054113747 287 .long 4289495988 288 .long 1054113747 289 .long 4277811695 290 .long 1064709698 291 .long 4277811695 292 .long 3212193346 293 .type cv,@object 294 .size cv,80 295 .align 16 296T2f: 297 .long 0 298 .long 1072693248 299 .long 0 300 .long 0 301 .long 2851812149 302 .long 1072698941 303 .long 2595802551 304 .long 1016815913 305 .long 1048019041 306 .long 1072704666 307 .long 1398474845 308 .long 3161559171 309 .long 3899555717 310 .long 1072710421 311 .long 427280750 312 .long 3163595548 313 .long 3541402996 314 .long 1072716208 315 .long 2759177317 316 .long 1015903202 317 .long 702412510 318 .long 1072722027 319 .long 3803266087 320 .long 3163328991 321 .long 410360776 322 .long 1072727877 323 .long 1269990655 324 .long 1013024446 325 .long 3402036099 326 .long 1072733758 327 .long 405889334 328 .long 1016154232 329 .long 1828292879 330 .long 1072739672 331 .long 1255956747 332 .long 1016636974 333 .long 728909815 334 .long 1072745618 335 .long 383930225 336 .long 1016078044 337 .long 852742562 338 .long 1072751596 339 .long 667253586 340 .long 1010842135 341 .long 2952712987 342 .long 1072757606 343 .long 3293494651 344 .long 3161168877 345 .long 3490863953 346 .long 1072763649 347 .long 960797498 348 .long 3163997456 349 .long 3228316108 350 .long 1072769725 351 .long 3010241991 352 .long 3159471380 353 .long 2930322912 354 .long 1072775834 355 .long 2599499422 356 .long 3163762623 357 .long 3366293073 358 .long 1072781976 359 .long 3119426314 360 .long 1015169130 361 .long 1014845819 362 .long 1072788152 363 .long 3117910646 364 .long 3162607681 365 .long 948735466 366 .long 1072794361 367 .long 3516338028 368 .long 3163623459 369 .long 3949972341 370 .long 1072800603 371 .long 2068408548 372 .long 1015962444 373 .long 2214878420 374 .long 1072806880 375 .long 892270087 376 .long 3164164998 377 .long 828946858 378 .long 1072813191 379 .long 10642492 380 .long 1016988014 381 .long 586995997 382 .long 1072819536 383 .long 41662348 384 .long 3163676568 385 .long 2288159958 386 .long 1072825915 387 .long 2169144469 388 .long 1015924597 389 .long 2440944790 390 .long 1072832329 391 .long 2492769774 392 .long 1015196030 393 .long 1853186616 394 .long 1072838778 395 .long 3066496371 396 .long 1016705150 397 .long 1337108031 398 .long 1072845262 399 .long 3203724452 400 .long 1015726421 401 .long 1709341917 402 .long 1072851781 403 .long 2571168217 404 .long 1015201075 405 .long 3790955393 406 .long 1072858335 407 .long 2352942462 408 .long 3164228666 409 .long 4112506593 410 .long 1072864925 411 .long 2947355221 412 .long 1015419624 413 .long 3504003472 414 .long 1072871551 415 .long 3594001060 416 .long 3158379228 417 .long 2799960843 418 .long 1072878213 419 .long 1423655381 420 .long 1016070727 421 .long 2839424854 422 .long 1072884911 423 .long 1171596163 424 .long 1014090255 425 .long 171030293 426 .long 1072891646 427 .long 3526460132 428 .long 1015477354 429 .long 4232894513 430 .long 1072898416 431 .long 2383938684 432 .long 1015717095 433 .long 2992903935 434 .long 1072905224 435 .long 2218154406 436 .long 1016276769 437 .long 1603444721 438 .long 1072912069 439 .long 1548633640 440 .long 3163249902 441 .long 926591435 442 .long 1072918951 443 .long 3208833762 444 .long 3163962090 445 .long 1829099622 446 .long 1072925870 447 .long 1016661181 448 .long 3164509581 449 .long 887463927 450 .long 1072932827 451 .long 3596744163 452 .long 3161842742 453 .long 3272845541 454 .long 1072939821 455 .long 928852419 456 .long 3164536824 457 .long 1276261410 458 .long 1072946854 459 .long 300981948 460 .long 1015732745 461 .long 78413852 462 .long 1072953925 463 .long 4183226867 464 .long 3164065827 465 .long 569847338 466 .long 1072961034 467 .long 472945272 468 .long 3160339305 469 .long 3645941911 470 .long 1072968181 471 .long 3814685081 472 .long 3162621917 473 .long 1617004845 474 .long 1072975368 475 .long 82804944 476 .long 1011391354 477 .long 3978100823 478 .long 1072982593 479 .long 3513027190 480 .long 1016894539 481 .long 3049340112 482 .long 1072989858 483 .long 3062915824 484 .long 1014219171 485 .long 4040676318 486 .long 1072997162 487 .long 4090609238 488 .long 1016712034 489 .long 3577096743 490 .long 1073004506 491 .long 2951496418 492 .long 1014842263 493 .long 2583551245 494 .long 1073011890 495 .long 3161094195 496 .long 1016655067 497 .long 1990012071 498 .long 1073019314 499 .long 3529070563 500 .long 3163861769 501 .long 2731501122 502 .long 1073026778 503 .long 1774031855 504 .long 3163518597 505 .long 1453150082 506 .long 1073034283 507 .long 498154669 508 .long 3162536638 509 .long 3395129871 510 .long 1073041828 511 .long 4025345435 512 .long 3163383964 513 .long 917841882 514 .long 1073049415 515 .long 18715565 516 .long 1016707884 517 .long 3566716925 518 .long 1073057042 519 .long 1536826856 520 .long 1015191009 521 .long 3712504873 522 .long 1073064711 523 .long 88491949 524 .long 1016476236 525 .long 2321106615 526 .long 1073072422 527 .long 2171176610 528 .long 1010584347 529 .long 363667784 530 .long 1073080175 531 .long 813753950 532 .long 1016833785 533 .long 3111574537 534 .long 1073087969 535 .long 2606161479 536 .long 3163808322 537 .long 2956612997 538 .long 1073095806 539 .long 2118169751 540 .long 3163784129 541 .long 885834528 542 .long 1073103686 543 .long 1973258547 544 .long 3163310140 545 .long 2186617381 546 .long 1073111608 547 .long 2270764084 548 .long 3164321289 549 .long 3561793907 550 .long 1073119573 551 .long 1157054053 552 .long 1012938926 553 .long 1719614413 554 .long 1073127582 555 .long 330458198 556 .long 3164331316 557 .long 1963711167 558 .long 1073135634 559 .long 1744767757 560 .long 3161622870 561 .long 1013258799 562 .long 1073143730 563 .long 1748797611 564 .long 3161177658 565 .long 4182873220 566 .long 1073151869 567 .long 629542646 568 .long 3163044879 569 .long 3907805044 570 .long 1073160053 571 .long 2257091225 572 .long 3162598983 573 .long 1218806132 574 .long 1073168282 575 .long 1818613052 576 .long 3163597017 577 .long 1447192521 578 .long 1073176555 579 .long 1462857171 580 .long 3163563097 581 .long 1339972927 582 .long 1073184873 583 .long 167908909 584 .long 1016620728 585 .long 1944781191 586 .long 1073193236 587 .long 3993278767 588 .long 3162772855 589 .long 19972402 590 .long 1073201645 591 .long 3507899862 592 .long 1017057868 593 .long 919555682 594 .long 1073210099 595 .long 3121969534 596 .long 1013996802 597 .long 1413356050 598 .long 1073218599 599 .long 1651349291 600 .long 3163716742 601 .long 2571947539 602 .long 1073227145 603 .long 3558159064 604 .long 3164425245 605 .long 1176749997 606 .long 1073235738 607 .long 2738998779 608 .long 3163084420 609 .long 2604962541 610 .long 1073244377 611 .long 2614425274 612 .long 3164587768 613 .long 3649726105 614 .long 1073253063 615 .long 4085036346 616 .long 1016698050 617 .long 1110089947 618 .long 1073261797 619 .long 1451641639 620 .long 1016523249 621 .long 380978316 622 .long 1073270578 623 .long 854188970 624 .long 3161511262 625 .long 2568320822 626 .long 1073279406 627 .long 2732824428 628 .long 1015401491 629 .long 194117574 630 .long 1073288283 631 .long 777528612 632 .long 3164460665 633 .long 2966275557 634 .long 1073297207 635 .long 2176155324 636 .long 3160891335 637 .long 3418903055 638 .long 1073306180 639 .long 2527457337 640 .long 3161869180 641 .long 2682146384 642 .long 1073315202 643 .long 2082178513 644 .long 3164411995 645 .long 1892288442 646 .long 1073324273 647 .long 2446255666 648 .long 3163648957 649 .long 2191782032 650 .long 1073333393 651 .long 2960257726 652 .long 1014791238 653 .long 434316067 654 .long 1073342563 655 .long 2028358766 656 .long 1014506698 657 .long 2069751141 658 .long 1073351782 659 .long 1562170675 660 .long 3163773257 661 .long 3964284211 662 .long 1073361051 663 .long 2111583915 664 .long 1016475740 665 .long 2990417245 666 .long 1073370371 667 .long 3683467745 668 .long 3164417902 669 .long 321958744 670 .long 1073379742 671 .long 3401933767 672 .long 1016843134 673 .long 1434058175 674 .long 1073389163 675 .long 251133233 676 .long 1016134345 677 .long 3218338682 678 .long 1073398635 679 .long 3404164304 680 .long 3163525684 681 .long 2572866477 682 .long 1073408159 683 .long 878562433 684 .long 1016570317 685 .long 697153126 686 .long 1073417735 687 .long 1283515429 688 .long 3164331765 689 .long 3092190715 690 .long 1073427362 691 .long 814012168 692 .long 3160571998 693 .long 2380618042 694 .long 1073437042 695 .long 3149557219 696 .long 3164369375 697 .long 4076559943 698 .long 1073446774 699 .long 2119478331 700 .long 3161806927 701 .long 815859274 702 .long 1073456560 703 .long 240396590 704 .long 3164536019 705 .long 2420883922 706 .long 1073466398 707 .long 2049810052 708 .long 1015168464 709 .long 1540824585 710 .long 1073476290 711 .long 1064017011 712 .long 3164536266 713 .long 3716502172 714 .long 1073486235 715 .long 2303740125 716 .long 1015091301 717 .long 1610600570 718 .long 1073496235 719 .long 3766732298 720 .long 1016808759 721 .long 777507147 722 .long 1073506289 723 .long 4282924205 724 .long 1016236109 725 .long 2483480501 726 .long 1073516397 727 .long 1216371780 728 .long 1014082748 729 .long 3706687593 730 .long 1073526560 731 .long 3521726940 732 .long 1014301643 733 .long 1432208378 734 .long 1073536779 735 .long 1401068914 736 .long 3163412539 737 .long 1242007932 738 .long 1073547053 739 .long 1132034716 740 .long 3164388407 741 .long 135105010 742 .long 1073557383 743 .long 1906148728 744 .long 3164424315 745 .long 3707479175 746 .long 1073567768 747 .long 3613079303 748 .long 1015213314 749 .long 382305176 750 .long 1073578211 751 .long 2347622376 752 .long 3163627201 753 .long 64696965 754 .long 1073588710 755 .long 1768797490 756 .long 1016865536 757 .long 4076975200 758 .long 1073599265 759 .long 2029000899 760 .long 1016257111 761 .long 863738719 762 .long 1073609879 763 .long 1326992220 764 .long 3163661773 765 .long 351641897 766 .long 1073620550 767 .long 2172261526 768 .long 3164059175 769 .long 3884662774 770 .long 1073631278 771 .long 2158611599 772 .long 1015258761 773 .long 4224142467 774 .long 1073642065 775 .long 3389820386 776 .long 1016255778 777 .long 2728693978 778 .long 1073652911 779 .long 396109971 780 .long 3164511267 781 .long 764307441 782 .long 1073663816 783 .long 3021057420 784 .long 3164378099 785 .long 3999357479 786 .long 1073674779 787 .long 2258941616 788 .long 1016973300 789 .long 929806999 790 .long 1073685803 791 .long 3205336643 792 .long 1016308133 793 .long 1533953344 794 .long 1073696886 795 .long 769171851 796 .long 1016714209 797 .long 2912730644 798 .long 1073708029 799 .long 3490067722 800 .long 3164453650 801 .long 2174652632 802 .long 1073719233 803 .long 4087714590 804 .long 1015498835 805 .long 730821105 806 .long 1073730498 807 .long 2523232743 808 .long 1013115764 809 .type T2f,@object 810 .size T2f,2048 811 .align 16 812T2_neg_f: 813 .long 0 814 .long 1072693248 815 .long 0 816 .long 0 817 .long 730821105 818 .long 1072681922 819 .long 2523232743 820 .long 1012067188 821 .long 2174652632 822 .long 1072670657 823 .long 4087714590 824 .long 1014450259 825 .long 2912730644 826 .long 1072659453 827 .long 3490067722 828 .long 3163405074 829 .long 1533953344 830 .long 1072648310 831 .long 769171851 832 .long 1015665633 833 .long 929806999 834 .long 1072637227 835 .long 3205336643 836 .long 1015259557 837 .long 3999357479 838 .long 1072626203 839 .long 2258941616 840 .long 1015924724 841 .long 764307441 842 .long 1072615240 843 .long 3021057420 844 .long 3163329523 845 .long 2728693978 846 .long 1072604335 847 .long 396109971 848 .long 3163462691 849 .long 4224142467 850 .long 1072593489 851 .long 3389820386 852 .long 1015207202 853 .long 3884662774 854 .long 1072582702 855 .long 2158611599 856 .long 1014210185 857 .long 351641897 858 .long 1072571974 859 .long 2172261526 860 .long 3163010599 861 .long 863738719 862 .long 1072561303 863 .long 1326992220 864 .long 3162613197 865 .long 4076975200 866 .long 1072550689 867 .long 2029000899 868 .long 1015208535 869 .long 64696965 870 .long 1072540134 871 .long 1768797490 872 .long 1015816960 873 .long 382305176 874 .long 1072529635 875 .long 2347622376 876 .long 3162578625 877 .long 3707479175 878 .long 1072519192 879 .long 3613079303 880 .long 1014164738 881 .long 135105010 882 .long 1072508807 883 .long 1906148728 884 .long 3163375739 885 .long 1242007932 886 .long 1072498477 887 .long 1132034716 888 .long 3163339831 889 .long 1432208378 890 .long 1072488203 891 .long 1401068914 892 .long 3162363963 893 .long 3706687593 894 .long 1072477984 895 .long 3521726940 896 .long 1013253067 897 .long 2483480501 898 .long 1072467821 899 .long 1216371780 900 .long 1013034172 901 .long 777507147 902 .long 1072457713 903 .long 4282924205 904 .long 1015187533 905 .long 1610600570 906 .long 1072447659 907 .long 3766732298 908 .long 1015760183 909 .long 3716502172 910 .long 1072437659 911 .long 2303740125 912 .long 1014042725 913 .long 1540824585 914 .long 1072427714 915 .long 1064017011 916 .long 3163487690 917 .long 2420883922 918 .long 1072417822 919 .long 2049810052 920 .long 1014119888 921 .long 815859274 922 .long 1072407984 923 .long 240396590 924 .long 3163487443 925 .long 4076559943 926 .long 1072398198 927 .long 2119478331 928 .long 3160758351 929 .long 2380618042 930 .long 1072388466 931 .long 3149557219 932 .long 3163320799 933 .long 3092190715 934 .long 1072378786 935 .long 814012168 936 .long 3159523422 937 .long 697153126 938 .long 1072369159 939 .long 1283515429 940 .long 3163283189 941 .long 2572866477 942 .long 1072359583 943 .long 878562433 944 .long 1015521741 945 .long 3218338682 946 .long 1072350059 947 .long 3404164304 948 .long 3162477108 949 .long 1434058175 950 .long 1072340587 951 .long 251133233 952 .long 1015085769 953 .long 321958744 954 .long 1072331166 955 .long 3401933767 956 .long 1015794558 957 .long 2990417245 958 .long 1072321795 959 .long 3683467745 960 .long 3163369326 961 .long 3964284211 962 .long 1072312475 963 .long 2111583915 964 .long 1015427164 965 .long 2069751141 966 .long 1072303206 967 .long 1562170675 968 .long 3162724681 969 .long 434316067 970 .long 1072293987 971 .long 2028358766 972 .long 1013458122 973 .long 2191782032 974 .long 1072284817 975 .long 2960257726 976 .long 1013742662 977 .long 1892288442 978 .long 1072275697 979 .long 2446255666 980 .long 3162600381 981 .long 2682146384 982 .long 1072266626 983 .long 2082178513 984 .long 3163363419 985 .long 3418903055 986 .long 1072257604 987 .long 2527457337 988 .long 3160820604 989 .long 2966275557 990 .long 1072248631 991 .long 2176155324 992 .long 3159842759 993 .long 194117574 994 .long 1072239707 995 .long 777528612 996 .long 3163412089 997 .long 2568320822 998 .long 1072230830 999 .long 2732824428 1000 .long 1014352915 1001 .long 380978316 1002 .long 1072222002 1003 .long 854188970 1004 .long 3160462686 1005 .long 1110089947 1006 .long 1072213221 1007 .long 1451641639 1008 .long 1015474673 1009 .long 3649726105 1010 .long 1072204487 1011 .long 4085036346 1012 .long 1015649474 1013 .long 2604962541 1014 .long 1072195801 1015 .long 2614425274 1016 .long 3163539192 1017 .long 1176749997 1018 .long 1072187162 1019 .long 2738998779 1020 .long 3162035844 1021 .long 2571947539 1022 .long 1072178569 1023 .long 3558159064 1024 .long 3163376669 1025 .long 1413356050 1026 .long 1072170023 1027 .long 1651349291 1028 .long 3162668166 1029 .long 919555682 1030 .long 1072161523 1031 .long 3121969534 1032 .long 1012948226 1033 .long 19972402 1034 .long 1072153069 1035 .long 3507899862 1036 .long 1016009292 1037 .long 1944781191 1038 .long 1072144660 1039 .long 3993278767 1040 .long 3161724279 1041 .long 1339972927 1042 .long 1072136297 1043 .long 167908909 1044 .long 1015572152 1045 .long 1447192521 1046 .long 1072127979 1047 .long 1462857171 1048 .long 3162514521 1049 .long 1218806132 1050 .long 1072119706 1051 .long 1818613052 1052 .long 3162548441 1053 .long 3907805044 1054 .long 1072111477 1055 .long 2257091225 1056 .long 3161550407 1057 .long 4182873220 1058 .long 1072103293 1059 .long 629542646 1060 .long 3161996303 1061 .long 1013258799 1062 .long 1072095154 1063 .long 1748797611 1064 .long 3160129082 1065 .long 1963711167 1066 .long 1072087058 1067 .long 1744767757 1068 .long 3160574294 1069 .long 1719614413 1070 .long 1072079006 1071 .long 330458198 1072 .long 3163282740 1073 .long 3561793907 1074 .long 1072070997 1075 .long 1157054053 1076 .long 1011890350 1077 .long 2186617381 1078 .long 1072063032 1079 .long 2270764084 1080 .long 3163272713 1081 .long 885834528 1082 .long 1072055110 1083 .long 1973258547 1084 .long 3162261564 1085 .long 2956612997 1086 .long 1072047230 1087 .long 2118169751 1088 .long 3162735553 1089 .long 3111574537 1090 .long 1072039393 1091 .long 2606161479 1092 .long 3162759746 1093 .long 363667784 1094 .long 1072031599 1095 .long 813753950 1096 .long 1015785209 1097 .long 2321106615 1098 .long 1072023846 1099 .long 2171176610 1100 .long 1009535771 1101 .long 3712504873 1102 .long 1072016135 1103 .long 88491949 1104 .long 1015427660 1105 .long 3566716925 1106 .long 1072008466 1107 .long 1536826856 1108 .long 1014142433 1109 .long 917841882 1110 .long 1072000839 1111 .long 18715565 1112 .long 1015659308 1113 .long 3395129871 1114 .long 1071993252 1115 .long 4025345435 1116 .long 3162335388 1117 .long 1453150082 1118 .long 1071985707 1119 .long 498154669 1120 .long 3161488062 1121 .long 2731501122 1122 .long 1071978202 1123 .long 1774031855 1124 .long 3162470021 1125 .long 1990012071 1126 .long 1071970738 1127 .long 3529070563 1128 .long 3162813193 1129 .long 2583551245 1130 .long 1071963314 1131 .long 3161094195 1132 .long 1015606491 1133 .long 3577096743 1134 .long 1071955930 1135 .long 2951496418 1136 .long 1013793687 1137 .long 4040676318 1138 .long 1071948586 1139 .long 4090609238 1140 .long 1015663458 1141 .long 3049340112 1142 .long 1071941282 1143 .long 3062915824 1144 .long 1013170595 1145 .long 3978100823 1146 .long 1071934017 1147 .long 3513027190 1148 .long 1015845963 1149 .long 1617004845 1150 .long 1071926792 1151 .long 82804944 1152 .long 1010342778 1153 .long 3645941911 1154 .long 1071919605 1155 .long 3814685081 1156 .long 3161573341 1157 .long 569847338 1158 .long 1071912458 1159 .long 472945272 1160 .long 3159290729 1161 .long 78413852 1162 .long 1071905349 1163 .long 4183226867 1164 .long 3163017251 1165 .long 1276261410 1166 .long 1071898278 1167 .long 300981948 1168 .long 1014684169 1169 .long 3272845541 1170 .long 1071891245 1171 .long 928852419 1172 .long 3163488248 1173 .long 887463927 1174 .long 1071884251 1175 .long 3596744163 1176 .long 3160794166 1177 .long 1829099622 1178 .long 1071877294 1179 .long 1016661181 1180 .long 3163461005 1181 .long 926591435 1182 .long 1071870375 1183 .long 3208833762 1184 .long 3162913514 1185 .long 1603444721 1186 .long 1071863493 1187 .long 1548633640 1188 .long 3162201326 1189 .long 2992903935 1190 .long 1071856648 1191 .long 2218154406 1192 .long 1015228193 1193 .long 4232894513 1194 .long 1071849840 1195 .long 2383938684 1196 .long 1014668519 1197 .long 171030293 1198 .long 1071843070 1199 .long 3526460132 1200 .long 1014428778 1201 .long 2839424854 1202 .long 1071836335 1203 .long 1171596163 1204 .long 1013041679 1205 .long 2799960843 1206 .long 1071829637 1207 .long 1423655381 1208 .long 1015022151 1209 .long 3504003472 1210 .long 1071822975 1211 .long 3594001060 1212 .long 3157330652 1213 .long 4112506593 1214 .long 1071816349 1215 .long 2947355221 1216 .long 1014371048 1217 .long 3790955393 1218 .long 1071809759 1219 .long 2352942462 1220 .long 3163180090 1221 .long 1709341917 1222 .long 1071803205 1223 .long 2571168217 1224 .long 1014152499 1225 .long 1337108031 1226 .long 1071796686 1227 .long 3203724452 1228 .long 1014677845 1229 .long 1853186616 1230 .long 1071790202 1231 .long 3066496371 1232 .long 1015656574 1233 .long 2440944790 1234 .long 1071783753 1235 .long 2492769774 1236 .long 1014147454 1237 .long 2288159958 1238 .long 1071777339 1239 .long 2169144469 1240 .long 1014876021 1241 .long 586995997 1242 .long 1071770960 1243 .long 41662348 1244 .long 3162627992 1245 .long 828946858 1246 .long 1071764615 1247 .long 10642492 1248 .long 1015939438 1249 .long 2214878420 1250 .long 1071758304 1251 .long 892270087 1252 .long 3163116422 1253 .long 3949972341 1254 .long 1071752027 1255 .long 2068408548 1256 .long 1014913868 1257 .long 948735466 1258 .long 1071745785 1259 .long 3516338028 1260 .long 3162574883 1261 .long 1014845819 1262 .long 1071739576 1263 .long 3117910646 1264 .long 3161559105 1265 .long 3366293073 1266 .long 1071733400 1267 .long 3119426314 1268 .long 1014120554 1269 .long 2930322912 1270 .long 1071727258 1271 .long 2599499422 1272 .long 3162714047 1273 .long 3228316108 1274 .long 1071721149 1275 .long 3010241991 1276 .long 3158422804 1277 .long 3490863953 1278 .long 1071715073 1279 .long 960797498 1280 .long 3162948880 1281 .long 2952712987 1282 .long 1071709030 1283 .long 3293494651 1284 .long 3160120301 1285 .long 852742562 1286 .long 1071703020 1287 .long 667253586 1288 .long 1009793559 1289 .long 728909815 1290 .long 1071697042 1291 .long 383930225 1292 .long 1015029468 1293 .long 1828292879 1294 .long 1071691096 1295 .long 1255956747 1296 .long 1015588398 1297 .long 3402036099 1298 .long 1071685182 1299 .long 405889334 1300 .long 1015105656 1301 .long 410360776 1302 .long 1071679301 1303 .long 1269990655 1304 .long 1011975870 1305 .long 702412510 1306 .long 1071673451 1307 .long 3803266087 1308 .long 3162280415 1309 .long 3541402996 1310 .long 1071667632 1311 .long 2759177317 1312 .long 1014854626 1313 .long 3899555717 1314 .long 1071661845 1315 .long 427280750 1316 .long 3162546972 1317 .long 1048019041 1318 .long 1071656090 1319 .long 1398474845 1320 .long 3160510595 1321 .long 2851812149 1322 .long 1071650365 1323 .long 2595802551 1324 .long 1015767337 1325 .type T2_neg_f,@object 1326 .size T2_neg_f,2048 1327 .align 16 1328pv: 1329 .long 3078135644 1330 .long 1049787983 1331 .long 381774870 1332 .long 1062650220 1333 .long 436314137 1334 .long 1056571808 1335 .long 1431655765 1336 .long 1067799893 1337 .type pv,@object 1338 .size pv,32 1339 .align 4 1340HALFMASK: 1341 .long 4160749568 1342 .long 2147483647 1343 .type HALFMASK,@object 1344 .size HALFMASK,8 1345 .align 4 1346ONEMASK: 1347 .long 0 1348 .long 1072693248 1349 .type ONEMASK,@object 1350 .size ONEMASK,8 1351 .data 1352 .section .note.GNU-stack, "" 1353// -- Begin DWARF2 SEGMENT .eh_frame 1354 .section .eh_frame,"a",@progbits 1355.eh_frame_seg: 1356 .align 1 1357 .4byte 0x00000014 1358 .8byte 0x00527a0100000000 1359 .8byte 0x08070c1b01107801 1360 .4byte 0x00000190 1361 .4byte 0x0000001c 1362 .4byte 0x0000001c 1363 .4byte ..___tag_value_cosh.1-. 1364 .4byte ..___tag_value_cosh.5-..___tag_value_cosh.1 1365 .2byte 0x0400 1366 .4byte ..___tag_value_cosh.3-..___tag_value_cosh.1 1367 .2byte 0x100e 1368 .byte 0x04 1369 .4byte ..___tag_value_cosh.4-..___tag_value_cosh.3 1370 .2byte 0x080e 1371 .byte 0x00 1372# End 1373