928 lines
20 KiB
ArmAsm
928 lines
20 KiB
ArmAsm
|
/*
|
||
|
Copyright (c) 2014, Intel Corporation
|
||
|
All rights reserved.
|
||
|
|
||
|
Redistribution and use in source and binary forms, with or without
|
||
|
modification, are permitted provided that the following conditions are met:
|
||
|
|
||
|
* Redistributions of source code must retain the above copyright notice,
|
||
|
* this list of conditions and the following disclaimer.
|
||
|
|
||
|
* Redistributions in binary form must reproduce the above copyright notice,
|
||
|
* this list of conditions and the following disclaimer in the documentation
|
||
|
* and/or other materials provided with the distribution.
|
||
|
|
||
|
* Neither the name of Intel Corporation nor the names of its contributors
|
||
|
* may be used to endorse or promote products derived from this software
|
||
|
* without specific prior written permission.
|
||
|
|
||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||
|
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||
|
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||
|
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
|
||
|
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||
|
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||
|
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||
|
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||
|
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||
|
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||
|
*/
|
||
|
|
||
|
/******************************************************************************/
|
||
|
// ALGORITHM DESCRIPTION
|
||
|
// ---------------------
|
||
|
//
|
||
|
// This implementation uses the main path for |x| in [2^{-5},2^65).
|
||
|
// For |x| in [2^{-64},2^{-5}), a secondary path is used.
|
||
|
// For the biased exponent of X within 3FFH-64 and 3FF+64, we use one branch.
|
||
|
// We use the following definition of B and X` so that the formula
|
||
|
// atan(X) = Tau + atan( (X`-B) / (One + BX) ) is correct
|
||
|
//
|
||
|
// X = (-1)^s * 2^k * 1. x1 x2 ... x52
|
||
|
//
|
||
|
// Define X` = 0 if k >= 5; and X` = |X| otherwise
|
||
|
// Define One = 0 if k >= 5; and One = 1 otherwise
|
||
|
// Define B = 0 if k <= -6; B = 2^k * 1.x1 x2 x3 x4 1 if -5 <= k <= 4
|
||
|
// Define B = 2^5 * 1.0 0 ... 0 if k >= 5
|
||
|
//
|
||
|
// Tau is 0 if k <= -6;
|
||
|
// Tau is atan( B ) if -5 <= k <= 4
|
||
|
// Tau is pi/2 if k >= 5
|
||
|
//
|
||
|
// Special cases:
|
||
|
// atan(NaN) = quiet NaN
|
||
|
// atan(+/-INF) = +/-Pi/2
|
||
|
// atan(+/-0) = +/-0
|
||
|
//
|
||
|
/******************************************************************************/
|
||
|
|
||
|
#include <private/bionic_asm.h>
|
||
|
# -- Begin atan
|
||
|
ENTRY(atan)
|
||
|
# parameter 1: %xmm0
|
||
|
..B1.1:
|
||
|
..___tag_value_atan.1:
|
||
|
pushq %rsi
|
||
|
..___tag_value_atan.3:
|
||
|
movsd %xmm0, (%rsp)
|
||
|
..B1.2:
|
||
|
movq $0xffff000000000000, %r8
|
||
|
movd %r8, %xmm3
|
||
|
movq ONEMASK(%rip), %xmm5
|
||
|
movq $0x800000000000, %r9
|
||
|
movd %r9, %xmm4
|
||
|
pextrw $3, %xmm0, %edx
|
||
|
andpd %xmm0, %xmm3
|
||
|
pshufd $68, %xmm0, %xmm1
|
||
|
orpd %xmm4, %xmm3
|
||
|
movl %edx, %eax
|
||
|
andl $32767, %edx
|
||
|
subl $16288, %edx
|
||
|
cmpl $159, %edx
|
||
|
ja .L_2TAG_PACKET_0.0.1
|
||
|
mulsd %xmm3, %xmm1
|
||
|
subsd %xmm3, %xmm0
|
||
|
addsd %xmm5, %xmm1
|
||
|
divsd %xmm1, %xmm0
|
||
|
addl $1, %edx
|
||
|
movq a2(%rip), %xmm2
|
||
|
movq b2(%rip), %xmm4
|
||
|
andl $32768, %eax
|
||
|
xorpd %xmm7, %xmm7
|
||
|
pinsrw $3, %eax, %xmm7
|
||
|
addl %edx, %edx
|
||
|
lea atan_tbl(%rip), %r8
|
||
|
movq (%r8,%rdx,8), %xmm6
|
||
|
movq 8(%r8,%rdx,8), %xmm5
|
||
|
xorpd %xmm7, %xmm5
|
||
|
xorpd %xmm7, %xmm6
|
||
|
movq 8+a2(%rip), %xmm7
|
||
|
movddup %xmm0, %xmm1
|
||
|
mulsd %xmm0, %xmm0
|
||
|
movddup %xmm1, %xmm3
|
||
|
addsd %xmm6, %xmm1
|
||
|
mulsd %xmm0, %xmm2
|
||
|
addsd %xmm0, %xmm4
|
||
|
subsd %xmm1, %xmm6
|
||
|
mulsd %xmm0, %xmm4
|
||
|
addsd %xmm7, %xmm2
|
||
|
mulsd %xmm3, %xmm0
|
||
|
addsd %xmm3, %xmm6
|
||
|
mulsd %xmm2, %xmm0
|
||
|
addsd 8+b2(%rip), %xmm4
|
||
|
addsd %xmm5, %xmm6
|
||
|
mulsd %xmm4, %xmm0
|
||
|
addsd %xmm6, %xmm0
|
||
|
addsd %xmm1, %xmm0
|
||
|
jmp .L_2TAG_PACKET_1.0.1
|
||
|
.L_2TAG_PACKET_0.0.1:
|
||
|
addl $944, %edx
|
||
|
cmpl $1103, %edx
|
||
|
ja .L_2TAG_PACKET_2.0.1
|
||
|
movq a2(%rip), %xmm4
|
||
|
movq b2(%rip), %xmm7
|
||
|
movq (%rsp), %xmm0
|
||
|
mulsd %xmm1, %xmm1
|
||
|
movq 8+a2(%rip), %xmm2
|
||
|
movq 8+b2(%rip), %xmm5
|
||
|
mulsd %xmm1, %xmm4
|
||
|
addsd %xmm1, %xmm7
|
||
|
movq %xmm1, %xmm6
|
||
|
mulsd %xmm0, %xmm1
|
||
|
addsd %xmm4, %xmm2
|
||
|
mulsd %xmm6, %xmm7
|
||
|
mulsd %xmm1, %xmm2
|
||
|
addsd %xmm5, %xmm7
|
||
|
mulsd %xmm7, %xmm2
|
||
|
addsd %xmm2, %xmm0
|
||
|
jmp .L_2TAG_PACKET_1.0.1
|
||
|
.L_2TAG_PACKET_2.0.1:
|
||
|
addl $15344, %edx
|
||
|
cmpl $16368, %edx
|
||
|
ja .L_2TAG_PACKET_3.0.1
|
||
|
movq (%rsp), %xmm0
|
||
|
movq (%rsp), %xmm1
|
||
|
cmpl $16, %edx
|
||
|
jae .L_2TAG_PACKET_1.0.1
|
||
|
mulsd %xmm0, %xmm1
|
||
|
jmp .L_2TAG_PACKET_1.0.1
|
||
|
.L_2TAG_PACKET_3.0.1:
|
||
|
cmpl $17392, %edx
|
||
|
jae .L_2TAG_PACKET_4.0.1
|
||
|
movq $0xbff0000000000000, %r8
|
||
|
movd %r8, %xmm1
|
||
|
divsd %xmm0, %xmm1
|
||
|
movq a2(%rip), %xmm2
|
||
|
movq b2(%rip), %xmm4
|
||
|
andl $32768, %eax
|
||
|
xorpd %xmm7, %xmm7
|
||
|
pinsrw $3, %eax, %xmm7
|
||
|
addl %edx, %edx
|
||
|
movq pi_table(%rip), %xmm6
|
||
|
movq 8+pi_table(%rip), %xmm5
|
||
|
xorpd %xmm7, %xmm5
|
||
|
xorpd %xmm7, %xmm6
|
||
|
movq 8+a2(%rip), %xmm7
|
||
|
movddup %xmm1, %xmm0
|
||
|
mulsd %xmm1, %xmm1
|
||
|
movddup %xmm0, %xmm3
|
||
|
addsd %xmm6, %xmm0
|
||
|
mulsd %xmm1, %xmm2
|
||
|
addsd %xmm1, %xmm4
|
||
|
subsd %xmm0, %xmm6
|
||
|
mulsd %xmm1, %xmm4
|
||
|
addsd %xmm7, %xmm2
|
||
|
mulsd %xmm3, %xmm1
|
||
|
addsd %xmm3, %xmm6
|
||
|
mulsd %xmm2, %xmm1
|
||
|
addsd 8+b2(%rip), %xmm4
|
||
|
addsd %xmm5, %xmm6
|
||
|
mulsd %xmm4, %xmm1
|
||
|
addsd %xmm6, %xmm1
|
||
|
addsd %xmm1, %xmm0
|
||
|
jmp .L_2TAG_PACKET_1.0.1
|
||
|
.L_2TAG_PACKET_4.0.1:
|
||
|
movq (%rsp), %xmm4
|
||
|
movq SGNMASK(%rip), %xmm0
|
||
|
movq pi_table(%rip), %xmm2
|
||
|
movq 8+pi_table(%rip), %xmm3
|
||
|
movd %xmm1, %eax
|
||
|
psrlq $32, %xmm1
|
||
|
movd %xmm1, %edx
|
||
|
andl $2147483647, %edx
|
||
|
cmpl $2146435072, %edx
|
||
|
jae .L_2TAG_PACKET_5.0.1
|
||
|
.L_2TAG_PACKET_6.0.1:
|
||
|
andnpd %xmm4, %xmm0
|
||
|
orpd %xmm0, %xmm2
|
||
|
orpd %xmm3, %xmm0
|
||
|
addsd %xmm2, %xmm0
|
||
|
jmp .L_2TAG_PACKET_1.0.1
|
||
|
.L_2TAG_PACKET_5.0.1:
|
||
|
subl $2146435072, %edx
|
||
|
orl %edx, %eax
|
||
|
cmpl $0, %eax
|
||
|
je .L_2TAG_PACKET_6.0.1
|
||
|
movq %xmm4, %xmm0
|
||
|
addsd %xmm0, %xmm0
|
||
|
.L_2TAG_PACKET_1.0.1:
|
||
|
..B1.3:
|
||
|
popq %rcx
|
||
|
..___tag_value_atan.4:
|
||
|
ret
|
||
|
..___tag_value_atan.5:
|
||
|
END(atan)
|
||
|
# -- End atan
|
||
|
.section .rodata, "a"
|
||
|
.align 4
|
||
|
.align 4
|
||
|
ONEMASK:
|
||
|
.long 0
|
||
|
.long 1072693248
|
||
|
.type ONEMASK,@object
|
||
|
.size ONEMASK,8
|
||
|
.align 4
|
||
|
a2:
|
||
|
.long 2006262985
|
||
|
.long 1069310863
|
||
|
.long 2358449471
|
||
|
.long 3217342131
|
||
|
.type a2,@object
|
||
|
.size a2,16
|
||
|
.align 4
|
||
|
b2:
|
||
|
.long 3845454352
|
||
|
.long 1069952297
|
||
|
.long 2829679149
|
||
|
.long 1073771565
|
||
|
.type b2,@object
|
||
|
.size b2,16
|
||
|
.align 4
|
||
|
atan_tbl:
|
||
|
.long 0
|
||
|
.long 0
|
||
|
.long 0
|
||
|
.long 0
|
||
|
.long 3819695742
|
||
|
.long 1067482761
|
||
|
.long 2398680355
|
||
|
.long 3155462074
|
||
|
.long 2998791009
|
||
|
.long 1067548225
|
||
|
.long 3868465248
|
||
|
.long 3157182472
|
||
|
.long 3339424991
|
||
|
.long 1067613680
|
||
|
.long 3296670360
|
||
|
.long 1010752543
|
||
|
.long 2710002256
|
||
|
.long 1067679126
|
||
|
.long 3403896007
|
||
|
.long 1010910768
|
||
|
.long 3275701428
|
||
|
.long 1067744562
|
||
|
.long 119959933
|
||
|
.long 1011482843
|
||
|
.long 2908636881
|
||
|
.long 1067809988
|
||
|
.long 2464489612
|
||
|
.long 1011545526
|
||
|
.long 3777889398
|
||
|
.long 1067875403
|
||
|
.long 3262682165
|
||
|
.long 1009703919
|
||
|
.long 3759667419
|
||
|
.long 1067940807
|
||
|
.long 1838130851
|
||
|
.long 3157373556
|
||
|
.long 732369940
|
||
|
.long 1068006200
|
||
|
.long 1203428313
|
||
|
.long 1010055371
|
||
|
.long 1166616461
|
||
|
.long 1068071580
|
||
|
.long 2901274051
|
||
|
.long 3158549977
|
||
|
.long 2945472892
|
||
|
.long 1068136947
|
||
|
.long 3726120658
|
||
|
.long 1009762715
|
||
|
.long 3954480976
|
||
|
.long 1068202301
|
||
|
.long 1289173457
|
||
|
.long 1009429861
|
||
|
.long 2081752829
|
||
|
.long 1068267642
|
||
|
.long 1836909874
|
||
|
.long 1006212095
|
||
|
.long 3807999788
|
||
|
.long 1068332968
|
||
|
.long 2172459940
|
||
|
.long 3156162078
|
||
|
.long 2731789884
|
||
|
.long 1068398280
|
||
|
.long 3450718392
|
||
|
.long 3159216547
|
||
|
.long 1044477961
|
||
|
.long 1068463577
|
||
|
.long 2230553229
|
||
|
.long 1011424339
|
||
|
.long 1486930287
|
||
|
.long 1068530218
|
||
|
.long 2861547474
|
||
|
.long 1012041376
|
||
|
.long 2293016881
|
||
|
.long 1068595466
|
||
|
.long 136843272
|
||
|
.long 1012684797
|
||
|
.long 201518157
|
||
|
.long 1068660680
|
||
|
.long 63231984
|
||
|
.long 1012427198
|
||
|
.long 4054234584
|
||
|
.long 1068725856
|
||
|
.long 3927006960
|
||
|
.long 1011878955
|
||
|
.long 1246477213
|
||
|
.long 1068790995
|
||
|
.long 1494265652
|
||
|
.long 3155219350
|
||
|
.long 678186699
|
||
|
.long 1068856093
|
||
|
.long 1264361424
|
||
|
.long 3159256693
|
||
|
.long 2690594995
|
||
|
.long 1068921148
|
||
|
.long 3906996379
|
||
|
.long 1009288267
|
||
|
.long 3362611517
|
||
|
.long 1068986159
|
||
|
.long 1650970041
|
||
|
.long 3158331771
|
||
|
.long 3102162111
|
||
|
.long 1069051124
|
||
|
.long 365917035
|
||
|
.long 3160264153
|
||
|
.long 2352611067
|
||
|
.long 1069116041
|
||
|
.long 4008970190
|
||
|
.long 3159478182
|
||
|
.long 1594134794
|
||
|
.long 1069180908
|
||
|
.long 466690178
|
||
|
.long 1012526501
|
||
|
.long 1345079306
|
||
|
.long 1069245723
|
||
|
.long 2268273568
|
||
|
.long 3160164092
|
||
|
.long 2163300970
|
||
|
.long 1069310484
|
||
|
.long 2750834800
|
||
|
.long 3158113482
|
||
|
.long 352522716
|
||
|
.long 1069375190
|
||
|
.long 1750411372
|
||
|
.long 1011790845
|
||
|
.long 848541647
|
||
|
.long 1069439838
|
||
|
.long 2164207573
|
||
|
.long 1011698350
|
||
|
.long 40647312
|
||
|
.long 1069504427
|
||
|
.long 2949165434
|
||
|
.long 3159107267
|
||
|
.long 2216766270
|
||
|
.long 1069574357
|
||
|
.long 2197920765
|
||
|
.long 3161055954
|
||
|
.long 1090914384
|
||
|
.long 1069638757
|
||
|
.long 2330454674
|
||
|
.long 1013365998
|
||
|
.long 387601244
|
||
|
.long 1069703022
|
||
|
.long 3185681168
|
||
|
.long 1013434071
|
||
|
.long 3991640484
|
||
|
.long 1069767144
|
||
|
.long 1313211590
|
||
|
.long 3161087959
|
||
|
.long 3322489502
|
||
|
.long 1069831118
|
||
|
.long 3013977995
|
||
|
.long 1013053011
|
||
|
.long 3121698570
|
||
|
.long 1069894936
|
||
|
.long 4069015667
|
||
|
.long 1013023362
|
||
|
.long 4289964660
|
||
|
.long 1069958591
|
||
|
.long 1736191156
|
||
|
.long 3158266731
|
||
|
.long 3903312386
|
||
|
.long 1070022077
|
||
|
.long 1833592413
|
||
|
.long 3159731471
|
||
|
.long 3818449864
|
||
|
.long 1070085387
|
||
|
.long 851036429
|
||
|
.long 3159730451
|
||
|
.long 2097480306
|
||
|
.long 1070148515
|
||
|
.long 3506390884
|
||
|
.long 3160462302
|
||
|
.long 1611694502
|
||
|
.long 1070211454
|
||
|
.long 2785735540
|
||
|
.long 3160465144
|
||
|
.long 1464694796
|
||
|
.long 1070274198
|
||
|
.long 4229277299
|
||
|
.long 3159907000
|
||
|
.long 1299612775
|
||
|
.long 1070336741
|
||
|
.long 4116653788
|
||
|
.long 3160427739
|
||
|
.long 1310544789
|
||
|
.long 1070399077
|
||
|
.long 1064430331
|
||
|
.long 1013218202
|
||
|
.long 2253168030
|
||
|
.long 1070461200
|
||
|
.long 1405044609
|
||
|
.long 3157623179
|
||
|
.long 1159567373
|
||
|
.long 1070523105
|
||
|
.long 2353445521
|
||
|
.long 3159992176
|
||
|
.long 1359373750
|
||
|
.long 1070605818
|
||
|
.long 1748171336
|
||
|
.long 3161879263
|
||
|
.long 908341706
|
||
|
.long 1070667034
|
||
|
.long 3372710815
|
||
|
.long 3161775245
|
||
|
.long 1743027350
|
||
|
.long 1070727765
|
||
|
.long 687089934
|
||
|
.long 3160507171
|
||
|
.long 2055355646
|
||
|
.long 1070787992
|
||
|
.long 2392855242
|
||
|
.long 1013682469
|
||
|
.long 690426164
|
||
|
.long 1070847697
|
||
|
.long 1103926666
|
||
|
.long 1014052810
|
||
|
.long 1483247847
|
||
|
.long 1070906862
|
||
|
.long 2082645847
|
||
|
.long 3161345479
|
||
|
.long 392040270
|
||
|
.long 1070965472
|
||
|
.long 2407720023
|
||
|
.long 1014053754
|
||
|
.long 2673846014
|
||
|
.long 1071023511
|
||
|
.long 1293605532
|
||
|
.long 3158464385
|
||
|
.long 1384215810
|
||
|
.long 1071080967
|
||
|
.long 2446095872
|
||
|
.long 3159216407
|
||
|
.long 3101660631
|
||
|
.long 1071137826
|
||
|
.long 698040758
|
||
|
.long 1014855328
|
||
|
.long 2094057058
|
||
|
.long 1071194078
|
||
|
.long 2282048339
|
||
|
.long 1014040385
|
||
|
.long 1712750594
|
||
|
.long 1071249712
|
||
|
.long 1204372378
|
||
|
.long 3162276464
|
||
|
.long 1411515787
|
||
|
.long 1071304719
|
||
|
.long 949080808
|
||
|
.long 1015006403
|
||
|
.long 931538085
|
||
|
.long 1071359091
|
||
|
.long 3027127039
|
||
|
.long 1014307233
|
||
|
.long 179139065
|
||
|
.long 1071412821
|
||
|
.long 4285547492
|
||
|
.long 3161934731
|
||
|
.long 3387721259
|
||
|
.long 1071465902
|
||
|
.long 373225773
|
||
|
.long 1013486625
|
||
|
.long 2132236852
|
||
|
.long 1071544299
|
||
|
.long 3250533429
|
||
|
.long 1014031677
|
||
|
.long 1942070284
|
||
|
.long 1071645596
|
||
|
.long 1237964179
|
||
|
.long 3163239113
|
||
|
.long 1532707802
|
||
|
.long 1071695380
|
||
|
.long 330645583
|
||
|
.long 1012495610
|
||
|
.long 2294184979
|
||
|
.long 1071743834
|
||
|
.long 3959472897
|
||
|
.long 1015833116
|
||
|
.long 3805060714
|
||
|
.long 1071790961
|
||
|
.long 2671256142
|
||
|
.long 1013727772
|
||
|
.long 2215037898
|
||
|
.long 1071836770
|
||
|
.long 2683359117
|
||
|
.long 1015831902
|
||
|
.long 483661594
|
||
|
.long 1071881273
|
||
|
.long 836288326
|
||
|
.long 3162648643
|
||
|
.long 1534679894
|
||
|
.long 1071924486
|
||
|
.long 373258696
|
||
|
.long 3162470096
|
||
|
.long 1538714628
|
||
|
.long 1071966430
|
||
|
.long 3199433068
|
||
|
.long 1015325501
|
||
|
.long 527642555
|
||
|
.long 1072007128
|
||
|
.long 3636832592
|
||
|
.long 3161843145
|
||
|
.long 291339150
|
||
|
.long 1072046605
|
||
|
.long 890169537
|
||
|
.long 3160586117
|
||
|
.long 2450210201
|
||
|
.long 1072084888
|
||
|
.long 1636353294
|
||
|
.long 3163193400
|
||
|
.long 2411367951
|
||
|
.long 1072122007
|
||
|
.long 374899873
|
||
|
.long 1011331750
|
||
|
.long 681549971
|
||
|
.long 1072157992
|
||
|
.long 506411689
|
||
|
.long 1015373954
|
||
|
.long 1466745541
|
||
|
.long 1072192873
|
||
|
.long 2143860931
|
||
|
.long 1013364334
|
||
|
.long 2845622366
|
||
|
.long 1072226682
|
||
|
.long 2869178209
|
||
|
.long 3162423682
|
||
|
.long 2838871438
|
||
|
.long 1072275456
|
||
|
.long 3742223599
|
||
|
.long 1014338577
|
||
|
.long 4200275274
|
||
|
.long 1072337034
|
||
|
.long 1566539915
|
||
|
.long 3161839550
|
||
|
.long 3034733530
|
||
|
.long 1072394897
|
||
|
.long 652621408
|
||
|
.long 3162261964
|
||
|
.long 3207412993
|
||
|
.long 1072449290
|
||
|
.long 3206124665
|
||
|
.long 1014408733
|
||
|
.long 624461478
|
||
|
.long 1072500450
|
||
|
.long 932437485
|
||
|
.long 1015204343
|
||
|
.long 767665908
|
||
|
.long 1072548600
|
||
|
.long 1037911952
|
||
|
.long 3163527627
|
||
|
.long 1110773639
|
||
|
.long 1072593952
|
||
|
.long 2371517912
|
||
|
.long 3160465741
|
||
|
.long 1940828530
|
||
|
.long 1072636704
|
||
|
.long 2731408428
|
||
|
.long 3162895795
|
||
|
.long 1911329388
|
||
|
.long 1072677041
|
||
|
.long 1773089615
|
||
|
.long 3159569267
|
||
|
.long 1764715788
|
||
|
.long 1072704191
|
||
|
.long 691346949
|
||
|
.long 3164069946
|
||
|
.long 3332979233
|
||
|
.long 1072722195
|
||
|
.long 3550733983
|
||
|
.long 1014770628
|
||
|
.long 1321870254
|
||
|
.long 1072739231
|
||
|
.long 1415315820
|
||
|
.long 1016224052
|
||
|
.long 3657429030
|
||
|
.long 1072755365
|
||
|
.long 3910539033
|
||
|
.long 1015966402
|
||
|
.long 4197624557
|
||
|
.long 1072770661
|
||
|
.long 2333399254
|
||
|
.long 3164546480
|
||
|
.long 1512059493
|
||
|
.long 1072785177
|
||
|
.long 2701510318
|
||
|
.long 1016178092
|
||
|
.long 453379037
|
||
|
.long 1072798965
|
||
|
.long 4046344253
|
||
|
.long 3162814364
|
||
|
.long 1942345162
|
||
|
.long 1072818388
|
||
|
.long 621134147
|
||
|
.long 1016335195
|
||
|
.long 4210176273
|
||
|
.long 1072842164
|
||
|
.long 2701013387
|
||
|
.long 3164326619
|
||
|
.long 4185644010
|
||
|
.long 1072863795
|
||
|
.long 4163699341
|
||
|
.long 1016203112
|
||
|
.long 679688788
|
||
|
.long 1072883543
|
||
|
.long 4147276762
|
||
|
.long 1014066750
|
||
|
.long 29432865
|
||
|
.long 1072901630
|
||
|
.long 970415797
|
||
|
.long 1016902063
|
||
|
.long 4070721092
|
||
|
.long 1072918247
|
||
|
.long 2539004411
|
||
|
.long 3163736096
|
||
|
.long 2252468843
|
||
|
.long 1072933561
|
||
|
.long 3424082887
|
||
|
.long 3163407177
|
||
|
.long 2929724825
|
||
|
.long 1072947712
|
||
|
.long 3661482235
|
||
|
.long 3163846989
|
||
|
.long 1377513368
|
||
|
.long 1072960824
|
||
|
.long 3987926680
|
||
|
.long 1013647908
|
||
|
.long 1031632908
|
||
|
.long 1072973003
|
||
|
.long 3672217151
|
||
|
.long 1016614619
|
||
|
.long 2516508130
|
||
|
.long 1072984342
|
||
|
.long 545855020
|
||
|
.long 3162728930
|
||
|
.long 3792452178
|
||
|
.long 1072994923
|
||
|
.long 3420119467
|
||
|
.long 1016471430
|
||
|
.long 3147791459
|
||
|
.long 1073004818
|
||
|
.long 1342204979
|
||
|
.long 1013937254
|
||
|
.long 999189752
|
||
|
.long 1073014090
|
||
|
.long 1006335472
|
||
|
.long 3162850919
|
||
|
.long 711011011
|
||
|
.long 1073022794
|
||
|
.long 4633488
|
||
|
.long 3162966895
|
||
|
.long 15640363
|
||
|
.long 1073030980
|
||
|
.long 1686389560
|
||
|
.long 3164376226
|
||
|
.long 1218463589
|
||
|
.long 1073042382
|
||
|
.long 1526837110
|
||
|
.long 3163533985
|
||
|
.long 2538470555
|
||
|
.long 1073056144
|
||
|
.long 2273304406
|
||
|
.long 3163784996
|
||
|
.long 1229720947
|
||
|
.long 1073068489
|
||
|
.long 2971628206
|
||
|
.long 3162356540
|
||
|
.long 3115427016
|
||
|
.long 1073079621
|
||
|
.long 4215132957
|
||
|
.long 3164282762
|
||
|
.long 4030612557
|
||
|
.long 1073089709
|
||
|
.long 1913251691
|
||
|
.long 3163671292
|
||
|
.long 2728521257
|
||
|
.long 1073098892
|
||
|
.long 2861089500
|
||
|
.long 1015454459
|
||
|
.long 1118696283
|
||
|
.long 1073107285
|
||
|
.long 1628948053
|
||
|
.long 1016179658
|
||
|
.long 2682711255
|
||
|
.long 1073114984
|
||
|
.long 2906306266
|
||
|
.long 1014142643
|
||
|
.long 2073898081
|
||
|
.long 1073122072
|
||
|
.long 1322740454
|
||
|
.long 3164497217
|
||
|
.long 1403700297
|
||
|
.long 1073128618
|
||
|
.long 416137895
|
||
|
.long 3162781466
|
||
|
.long 2502685617
|
||
|
.long 1073134681
|
||
|
.long 3242008732
|
||
|
.long 1014593495
|
||
|
.long 1531926851
|
||
|
.long 1073140313
|
||
|
.long 1362708094
|
||
|
.long 1016517604
|
||
|
.long 3572814411
|
||
|
.long 1073145557
|
||
|
.long 3709790527
|
||
|
.long 1012646874
|
||
|
.long 1695536111
|
||
|
.long 1073150453
|
||
|
.long 3980346340
|
||
|
.long 1016705136
|
||
|
.long 2363057203
|
||
|
.long 1073155033
|
||
|
.long 2551194792
|
||
|
.long 1012569695
|
||
|
.long 2873365682
|
||
|
.long 1073159327
|
||
|
.long 3181154748
|
||
|
.long 1017041450
|
||
|
.long 1053384691
|
||
|
.long 1073165288
|
||
|
.long 3074536879
|
||
|
.long 1016965660
|
||
|
.long 3270542712
|
||
|
.long 1073172451
|
||
|
.long 2535319415
|
||
|
.long 3163051778
|
||
|
.long 1353631484
|
||
|
.long 1073178850
|
||
|
.long 1173833755
|
||
|
.long 1015534537
|
||
|
.long 3511218460
|
||
|
.long 1073184599
|
||
|
.long 1243608109
|
||
|
.long 3161592122
|
||
|
.long 4121259284
|
||
|
.long 1073189793
|
||
|
.long 398584912
|
||
|
.long 3163829923
|
||
|
.long 1193862106
|
||
|
.long 1073194509
|
||
|
.long 1873745539
|
||
|
.long 3163802819
|
||
|
.long 3861949790
|
||
|
.long 1073198808
|
||
|
.long 3841261147
|
||
|
.long 1015587248
|
||
|
.long 1486904578
|
||
|
.long 1073202745
|
||
|
.long 1634726776
|
||
|
.long 3163847886
|
||
|
.long 2879153715
|
||
|
.long 1073206362
|
||
|
.long 200456242
|
||
|
.long 3164138657
|
||
|
.long 385353253
|
||
|
.long 1073209698
|
||
|
.long 1186355517
|
||
|
.long 1014887155
|
||
|
.long 1125865839
|
||
|
.long 1073212783
|
||
|
.long 203561262
|
||
|
.long 3161244927
|
||
|
.long 1221361475
|
||
|
.long 1073215645
|
||
|
.long 3382476563
|
||
|
.long 1014936138
|
||
|
.long 2077323573
|
||
|
.long 1073218307
|
||
|
.long 1005121005
|
||
|
.long 3164430752
|
||
|
.long 215611373
|
||
|
.long 1073220790
|
||
|
.long 353198764
|
||
|
.long 3164485137
|
||
|
.long 2347419265
|
||
|
.long 1073223110
|
||
|
.long 1103143360
|
||
|
.long 1016542137
|
||
|
.long 1379112765
|
||
|
.long 1073225284
|
||
|
.long 381583533
|
||
|
.long 3162870833
|
||
|
.long 3891198463
|
||
|
.long 1073228298
|
||
|
.long 1771275754
|
||
|
.long 1014654681
|
||
|
.long 3395914051
|
||
|
.long 1073231917
|
||
|
.long 2350900914
|
||
|
.long 3164013978
|
||
|
.long 2799919478
|
||
|
.long 1073235146
|
||
|
.long 2893950164
|
||
|
.long 3163260901
|
||
|
.long 1138673476
|
||
|
.long 1073238045
|
||
|
.long 2622204785
|
||
|
.long 3164174388
|
||
|
.long 3408855940
|
||
|
.long 1073240661
|
||
|
.long 2800881650
|
||
|
.long 1016008624
|
||
|
.long 2044858738
|
||
|
.long 1073243035
|
||
|
.long 604544785
|
||
|
.long 1017022901
|
||
|
.long 2578795176
|
||
|
.long 1073245198
|
||
|
.long 2557332925
|
||
|
.long 1016135165
|
||
|
.long 4196285314
|
||
|
.long 1073247177
|
||
|
.long 2032365307
|
||
|
.long 1016194735
|
||
|
.long 224877747
|
||
|
.long 1073248996
|
||
|
.long 497926916
|
||
|
.long 1016947111
|
||
|
.long 3271386490
|
||
|
.long 1073250671
|
||
|
.long 2689994846
|
||
|
.long 1016631513
|
||
|
.long 813635989
|
||
|
.long 1073252221
|
||
|
.long 747035277
|
||
|
.long 3164530136
|
||
|
.long 369829519
|
||
|
.long 1073253658
|
||
|
.long 2182033858
|
||
|
.long 3163190340
|
||
|
.long 1187679052
|
||
|
.long 1073254994
|
||
|
.long 673954443
|
||
|
.long 1016149821
|
||
|
.long 4232586098
|
||
|
.long 1073256239
|
||
|
.long 497775200
|
||
|
.long 3162179015
|
||
|
.long 426690558
|
||
|
.long 1073257404
|
||
|
.long 3063343247
|
||
|
.long 1016865578
|
||
|
.long 1624065902
|
||
|
.long 1073258494
|
||
|
.long 1354224996
|
||
|
.long 3163503778
|
||
|
.long 1413754136
|
||
|
.long 1073291771
|
||
|
.long 856972295
|
||
|
.long 1016178214
|
||
|
.type atan_tbl,@object
|
||
|
.size atan_tbl,2592
|
||
|
.align 4
|
||
|
pi_table:
|
||
|
.long 1413754136
|
||
|
.long 1073291771
|
||
|
.long 856972295
|
||
|
.long 1016178214
|
||
|
.type pi_table,@object
|
||
|
.size pi_table,16
|
||
|
.align 4
|
||
|
SGNMASK:
|
||
|
.long 4294967295
|
||
|
.long 2147483647
|
||
|
.type SGNMASK,@object
|
||
|
.size SGNMASK,8
|
||
|
.data
|
||
|
.section .note.GNU-stack, ""
|
||
|
// -- Begin DWARF2 SEGMENT .eh_frame
|
||
|
.section .eh_frame,"a",@progbits
|
||
|
.eh_frame_seg:
|
||
|
.align 1
|
||
|
.4byte 0x00000014
|
||
|
.8byte 0x00527a0100000000
|
||
|
.8byte 0x08070c1b01107801
|
||
|
.4byte 0x00000190
|
||
|
.4byte 0x0000001c
|
||
|
.4byte 0x0000001c
|
||
|
.4byte ..___tag_value_atan.1-.
|
||
|
.4byte ..___tag_value_atan.5-..___tag_value_atan.1
|
||
|
.2byte 0x0400
|
||
|
.4byte ..___tag_value_atan.3-..___tag_value_atan.1
|
||
|
.2byte 0x100e
|
||
|
.byte 0x04
|
||
|
.4byte ..___tag_value_atan.4-..___tag_value_atan.3
|
||
|
.2byte 0x080e
|
||
|
.byte 0x00
|
||
|
# End
|