From 36870482d2a33e3b703bd74b52063594389e827a Mon Sep 17 00:00:00 2001 From: Andrew Senkevich Date: Wed, 24 Jun 2015 17:44:35 +0300 Subject: Combination of data tables for x86_64 vector functions sinf, cosf and sincosf. * sysdeps/x86_64/fpu/Makefile (libmvec-support): Fixed files list. * sysdeps/x86_64/fpu/multiarch/svml_s_cosf4_core_sse4.S: Renamed variable and included header. * sysdeps/x86_64/fpu/multiarch/svml_s_cosf8_core_avx2.S: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_s_cosf16_core_avx512.S: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_s_sinf4_core_sse4.S: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_s_sinf8_core_avx2.S: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_s_sinf16_core_avx512.S: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_s_sincosf4_core_sse4.S: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_s_sincosf8_core_avx2.S: Likewise. * sysdeps/x86_64/fpu/multiarch/svml_s_sincosf16_core_avx512.S: Likewise. * sysdeps/x86_64/fpu/svml_s_trig_data.S: New file. * sysdeps/x86_64/fpu/svml_s_trig_data.h: Likewise. * sysdeps/x86_64/fpu/svml_s_cosf_data.S: Removed file. * sysdeps/x86_64/fpu/svml_s_cosf_data.h: Likewise. * sysdeps/x86_64/fpu/svml_s_sinf_data.S: Likewise. * sysdeps/x86_64/fpu/svml_s_sinf_data.h: Likewise. * sysdeps/x86_64/fpu/svml_s_sincosf_data.S: Likewise. * sysdeps/x86_64/fpu/svml_s_sincosf_data.h: Likewise. --- ChangeLog | 22 + sysdeps/x86_64/fpu/Makefile | 7 +- .../fpu/multiarch/svml_s_cosf16_core_avx512.S | 6 +- .../x86_64/fpu/multiarch/svml_s_cosf4_core_sse4.S | 4 +- .../x86_64/fpu/multiarch/svml_s_cosf8_core_avx2.S | 4 +- .../fpu/multiarch/svml_s_sincosf16_core_avx512.S | 6 +- .../fpu/multiarch/svml_s_sincosf4_core_sse4.S | 4 +- .../fpu/multiarch/svml_s_sincosf8_core_avx2.S | 4 +- .../fpu/multiarch/svml_s_sinf16_core_avx512.S | 6 +- .../x86_64/fpu/multiarch/svml_s_sinf4_core_sse4.S | 4 +- .../x86_64/fpu/multiarch/svml_s_sinf8_core_avx2.S | 4 +- sysdeps/x86_64/fpu/svml_s_cosf_data.S | 1130 ------------------- sysdeps/x86_64/fpu/svml_s_cosf_data.h | 58 - sysdeps/x86_64/fpu/svml_s_sincosf_data.S | 1140 -------------------- sysdeps/x86_64/fpu/svml_s_sincosf_data.h | 61 -- sysdeps/x86_64/fpu/svml_s_sinf_data.S | 1118 ------------------- sysdeps/x86_64/fpu/svml_s_sinf_data.h | 54 - sysdeps/x86_64/fpu/svml_s_trig_data.S | 111 ++ sysdeps/x86_64/fpu/svml_s_trig_data.h | 62 ++ 19 files changed, 219 insertions(+), 3586 deletions(-) delete mode 100644 sysdeps/x86_64/fpu/svml_s_cosf_data.S delete mode 100644 sysdeps/x86_64/fpu/svml_s_cosf_data.h delete mode 100644 sysdeps/x86_64/fpu/svml_s_sincosf_data.S delete mode 100644 sysdeps/x86_64/fpu/svml_s_sincosf_data.h delete mode 100644 sysdeps/x86_64/fpu/svml_s_sinf_data.S delete mode 100644 sysdeps/x86_64/fpu/svml_s_sinf_data.h create mode 100644 sysdeps/x86_64/fpu/svml_s_trig_data.S create mode 100644 sysdeps/x86_64/fpu/svml_s_trig_data.h diff --git a/ChangeLog b/ChangeLog index 53766d829d..b5e19b1817 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,25 @@ +2015-06-24 Andrew Senkevich + + * sysdeps/x86_64/fpu/Makefile (libmvec-support): Fixed files list. + * sysdeps/x86_64/fpu/multiarch/svml_s_cosf4_core_sse4.S: Renamed variable + and included header. + * sysdeps/x86_64/fpu/multiarch/svml_s_cosf8_core_avx2.S: Likewise. + * sysdeps/x86_64/fpu/multiarch/svml_s_cosf16_core_avx512.S: Likewise. + * sysdeps/x86_64/fpu/multiarch/svml_s_sinf4_core_sse4.S: Likewise. + * sysdeps/x86_64/fpu/multiarch/svml_s_sinf8_core_avx2.S: Likewise. + * sysdeps/x86_64/fpu/multiarch/svml_s_sinf16_core_avx512.S: Likewise. + * sysdeps/x86_64/fpu/multiarch/svml_s_sincosf4_core_sse4.S: Likewise. + * sysdeps/x86_64/fpu/multiarch/svml_s_sincosf8_core_avx2.S: Likewise. + * sysdeps/x86_64/fpu/multiarch/svml_s_sincosf16_core_avx512.S: Likewise. + * sysdeps/x86_64/fpu/svml_s_trig_data.S: New file. + * sysdeps/x86_64/fpu/svml_s_trig_data.h: Likewise. + * sysdeps/x86_64/fpu/svml_s_cosf_data.S: Removed file. + * sysdeps/x86_64/fpu/svml_s_cosf_data.h: Likewise. + * sysdeps/x86_64/fpu/svml_s_sinf_data.S: Likewise. + * sysdeps/x86_64/fpu/svml_s_sinf_data.h: Likewise. + * sysdeps/x86_64/fpu/svml_s_sincosf_data.S: Likewise. + * sysdeps/x86_64/fpu/svml_s_sincosf_data.h: Likewise. + 2015-06-23 Joseph Myers [BZ #16526] diff --git a/sysdeps/x86_64/fpu/Makefile b/sysdeps/x86_64/fpu/Makefile index c377100d1a..e270b8af55 100644 --- a/sysdeps/x86_64/fpu/Makefile +++ b/sysdeps/x86_64/fpu/Makefile @@ -4,9 +4,9 @@ libmvec-support += svml_d_cos2_core svml_d_cos4_core_avx \ svml_d_sin2_core svml_d_sin4_core_avx \ svml_d_sin4_core svml_d_sin8_core svml_d_trig_data \ svml_s_cosf4_core svml_s_cosf8_core_avx \ - svml_s_cosf8_core svml_s_cosf16_core svml_s_cosf_data \ + svml_s_cosf8_core svml_s_cosf16_core svml_s_trig_data \ svml_s_sinf4_core svml_s_sinf8_core_avx \ - svml_s_sinf8_core svml_s_sinf16_core svml_s_sinf_data \ + svml_s_sinf8_core svml_s_sinf16_core \ svml_d_sincos2_core svml_d_sincos4_core_avx \ svml_d_sincos4_core svml_d_sincos8_core \ svml_d_log2_core svml_d_log4_core_avx svml_d_log4_core \ @@ -20,8 +20,7 @@ libmvec-support += svml_d_cos2_core svml_d_cos4_core_avx \ svml_d_pow_data svml_s_powf4_core svml_s_powf8_core_avx \ svml_s_powf8_core svml_s_powf16_core svml_s_powf_data \ svml_s_sincosf4_core svml_s_sincosf8_core_avx \ - svml_s_sincosf8_core svml_s_sincosf16_core \ - svml_s_sincosf_data init-arch + svml_s_sincosf8_core svml_s_sincosf16_core init-arch endif # Variables for libmvec tests. diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_cosf16_core_avx512.S b/sysdeps/x86_64/fpu/multiarch/svml_s_cosf16_core_avx512.S index a78ae2ee7e..e777476d73 100644 --- a/sysdeps/x86_64/fpu/multiarch/svml_s_cosf16_core_avx512.S +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_cosf16_core_avx512.S @@ -17,7 +17,7 @@ . */ #include -#include "svml_s_cosf_data.h" +#include "svml_s_trig_data.h" #include "svml_s_wrapper_impl.h" .text @@ -54,7 +54,7 @@ WRAPPER_IMPL_AVX512 _ZGVdN8v_cosf cfi_def_cfa_register (%rbp) andq $-64, %rsp subq $1280, %rsp - movq __svml_scos_data@GOTPCREL(%rip), %rdx + movq __svml_s_trig_data@GOTPCREL(%rip), %rdx /* h) Subtract Y*PI from X argument, where PI divided to 4 parts: @@ -271,7 +271,7 @@ WRAPPER_IMPL_AVX512 _ZGVdN8v_cosf cfi_def_cfa_register (%rbp) andq $-64, %rsp subq $1280, %rsp - movq __svml_scos_data@GOTPCREL(%rip), %rax + movq __svml_s_trig_data@GOTPCREL(%rip), %rax /* h) Subtract Y*PI from X argument, where PI divided to 4 parts: diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_cosf4_core_sse4.S b/sysdeps/x86_64/fpu/multiarch/svml_s_cosf4_core_sse4.S index f231ba253a..bdb6591905 100644 --- a/sysdeps/x86_64/fpu/multiarch/svml_s_cosf4_core_sse4.S +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_cosf4_core_sse4.S @@ -17,7 +17,7 @@ . */ #include -#include "svml_s_cosf_data.h" +#include "svml_s_trig_data.h" .text ENTRY (_ZGVbN4v_cosf_sse4) @@ -51,7 +51,7 @@ ENTRY (_ZGVbN4v_cosf_sse4) andq $-64, %rsp subq $320, %rsp movaps %xmm0, %xmm4 - movq __svml_scos_data@GOTPCREL(%rip), %rax + movq __svml_s_trig_data@GOTPCREL(%rip), %rax movups __sHalfPI(%rax), %xmm1 movups __sRShifter(%rax), %xmm5 diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_cosf8_core_avx2.S b/sysdeps/x86_64/fpu/multiarch/svml_s_cosf8_core_avx2.S index 6c25e145d6..1efc943295 100644 --- a/sysdeps/x86_64/fpu/multiarch/svml_s_cosf8_core_avx2.S +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_cosf8_core_avx2.S @@ -18,7 +18,7 @@ #include -#include "svml_s_cosf_data.h" +#include "svml_s_trig_data.h" .text ENTRY (_ZGVdN8v_cosf_avx2) @@ -51,7 +51,7 @@ ENTRY (_ZGVdN8v_cosf_avx2) cfi_def_cfa_register (%rbp) andq $-64, %rsp subq $448, %rsp - movq __svml_scos_data@GOTPCREL(%rip), %rax + movq __svml_s_trig_data@GOTPCREL(%rip), %rax vmovaps %ymm0, %ymm2 vmovups __sRShifter(%rax), %ymm5 vmovups __sPI1_FMA(%rax), %ymm7 diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_sincosf16_core_avx512.S b/sysdeps/x86_64/fpu/multiarch/svml_s_sincosf16_core_avx512.S index cae49f63a6..efff91bb0d 100644 --- a/sysdeps/x86_64/fpu/multiarch/svml_s_sincosf16_core_avx512.S +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_sincosf16_core_avx512.S @@ -17,7 +17,7 @@ . */ #include -#include "svml_s_sincosf_data.h" +#include "svml_s_trig_data.h" #include "svml_s_wrapper_impl.h" /* @@ -60,7 +60,7 @@ WRAPPER_IMPL_AVX512_fFF _ZGVdN8vvv_sincosf cfi_def_cfa_register (%rbp) andq $-64, %rsp subq $1344, %rsp - movq __svml_ssincos_data@GOTPCREL(%rip), %rax + movq __svml_s_trig_data@GOTPCREL(%rip), %rax vmovaps %zmm0, %zmm2 movl $-1, %edx vmovups __sAbsMask(%rax), %zmm0 @@ -280,7 +280,7 @@ WRAPPER_IMPL_AVX512_fFF _ZGVdN8vvv_sincosf cfi_def_cfa_register (%rbp) andq $-64, %rsp subq $1344, %rsp - movq __svml_ssincos_data@GOTPCREL(%rip), %rax + movq __svml_s_trig_data@GOTPCREL(%rip), %rax vmovaps %zmm0, %zmm4 vmovups __sAbsMask(%rax), %zmm3 vmovups __sInvPI(%rax), %zmm5 diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_sincosf4_core_sse4.S b/sysdeps/x86_64/fpu/multiarch/svml_s_sincosf4_core_sse4.S index 8c51e44988..4d846b5d7e 100644 --- a/sysdeps/x86_64/fpu/multiarch/svml_s_sincosf4_core_sse4.S +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_sincosf4_core_sse4.S @@ -17,7 +17,7 @@ . */ #include -#include "svml_s_sincosf_data.h" +#include "svml_s_trig_data.h" .text ENTRY (_ZGVbN4vvv_sincosf_sse4) @@ -56,7 +56,7 @@ ENTRY (_ZGVbN4vvv_sincosf_sse4) cfi_def_cfa_register (%rbp) andq $-64, %rsp subq $320, %rsp - movq __svml_ssincos_data@GOTPCREL(%rip), %rax + movq __svml_s_trig_data@GOTPCREL(%rip), %rax movups %xmm12, 176(%rsp) movups %xmm9, 160(%rsp) movups __sAbsMask(%rax), %xmm12 diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_sincosf8_core_avx2.S b/sysdeps/x86_64/fpu/multiarch/svml_s_sincosf8_core_avx2.S index 153c315799..0108fd5126 100644 --- a/sysdeps/x86_64/fpu/multiarch/svml_s_sincosf8_core_avx2.S +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_sincosf8_core_avx2.S @@ -17,7 +17,7 @@ . */ #include -#include "svml_s_sincosf_data.h" +#include "svml_s_trig_data.h" .text ENTRY(_ZGVdN8vvv_sincosf_avx2) @@ -56,7 +56,7 @@ ENTRY(_ZGVdN8vvv_sincosf_avx2) cfi_def_cfa_register (%rbp) andq $-64, %rsp subq $448, %rsp - movq __svml_ssincos_data@GOTPCREL(%rip), %rax + movq __svml_s_trig_data@GOTPCREL(%rip), %rax vmovdqa %ymm0, %ymm5 vmovups %ymm13, 352(%rsp) vmovups __sAbsMask(%rax), %ymm2 diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_sinf16_core_avx512.S b/sysdeps/x86_64/fpu/multiarch/svml_s_sinf16_core_avx512.S index 717267e76c..f13ed96af8 100644 --- a/sysdeps/x86_64/fpu/multiarch/svml_s_sinf16_core_avx512.S +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_sinf16_core_avx512.S @@ -17,7 +17,7 @@ . */ #include -#include "svml_s_sinf_data.h" +#include "svml_s_trig_data.h" #include "svml_s_wrapper_impl.h" .text @@ -55,7 +55,7 @@ WRAPPER_IMPL_AVX512 _ZGVdN8v_sinf cfi_def_cfa_register (%rbp) andq $-64, %rsp subq $1280, %rsp - movq __svml_ssin_data@GOTPCREL(%rip), %rax + movq __svml_s_trig_data@GOTPCREL(%rip), %rax /* Check for large and special values */ movl $-1, %edx @@ -277,7 +277,7 @@ WRAPPER_IMPL_AVX512 _ZGVdN8v_sinf cfi_def_cfa_register (%rbp) andq $-64, %rsp subq $1280, %rsp - movq __svml_ssin_data@GOTPCREL(%rip), %rax + movq __svml_s_trig_data@GOTPCREL(%rip), %rax /* Check for large and special values */ vmovups .L_2il0floatpacket.11(%rip), %zmm14 diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_sinf4_core_sse4.S b/sysdeps/x86_64/fpu/multiarch/svml_s_sinf4_core_sse4.S index 746e3efb2b..b8b852bcae 100644 --- a/sysdeps/x86_64/fpu/multiarch/svml_s_sinf4_core_sse4.S +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_sinf4_core_sse4.S @@ -18,7 +18,7 @@ #include -#include "svml_s_sinf_data.h" +#include "svml_s_trig_data.h" .text ENTRY(_ZGVbN4v_sinf_sse4) @@ -53,7 +53,7 @@ ENTRY(_ZGVbN4v_sinf_sse4) andq $-64, %rsp subq $320, %rsp movaps %xmm0, %xmm5 - movq __svml_ssin_data@GOTPCREL(%rip), %rax + movq __svml_s_trig_data@GOTPCREL(%rip), %rax movups __sAbsMask(%rax), %xmm2 /* b) Remove sign using AND operation */ diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_sinf8_core_avx2.S b/sysdeps/x86_64/fpu/multiarch/svml_s_sinf8_core_avx2.S index aea4cdd5c0..a130d25fce 100644 --- a/sysdeps/x86_64/fpu/multiarch/svml_s_sinf8_core_avx2.S +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_sinf8_core_avx2.S @@ -17,7 +17,7 @@ . */ #include -#include "svml_s_sinf_data.h" +#include "svml_s_trig_data.h" .text ENTRY(_ZGVdN8v_sinf_avx2) @@ -51,7 +51,7 @@ ENTRY(_ZGVdN8v_sinf_avx2) cfi_def_cfa_register (%rbp) andq $-64, %rsp subq $448, %rsp - movq __svml_ssin_data@GOTPCREL(%rip), %rax + movq __svml_s_trig_data@GOTPCREL(%rip), %rax vmovdqa %ymm0, %ymm5 vmovups __sAbsMask(%rax), %ymm3 vmovups __sInvPI(%rax), %ymm7 diff --git a/sysdeps/x86_64/fpu/svml_s_cosf_data.S b/sysdeps/x86_64/fpu/svml_s_cosf_data.S deleted file mode 100644 index 2f7303c6ce..0000000000 --- a/sysdeps/x86_64/fpu/svml_s_cosf_data.S +++ /dev/null @@ -1,1130 +0,0 @@ -/* Data for function cosf. - Copyright (C) 2014-2015 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include "svml_s_cosf_data.h" - - .section .rodata, "a" - .align 64 - -/* Data table for vector implementations of function cosf. - The table may contain polynomial, reduction, lookup coefficients - and other macro_names obtained through different methods - of research and experimental work. */ - - .globl __svml_scos_data -__svml_scos_data: - -/* Lookup table for high accuracy version (CHL,SHi,SLo,Sigma). */ -.if .-__svml_scos_data != __dT -.err -.endif - .long 0x00000000 - .long 0x3f800000 - .long 0x00000000 - .long 0x00000000 - .long 0x3bdbd541 - .long 0x3f7fec43 - .long 0x3084cd0d - .long 0xbd000000 - .long 0x3c5c1342 - .long 0x3f7fb10f - .long 0x31de5b5f - .long 0xbd800000 - .long 0xbc354825 - .long 0x3f7f4e6d - .long 0x32d01884 - .long 0xbd800000 - .long 0x3cdd0b28 - .long 0x3f7ec46d - .long 0x31f44949 - .long 0xbe000000 - .long 0x3b29b1a9 - .long 0x3f7e1324 - .long 0xb2f1e603 - .long 0xbe000000 - .long 0xbcb2041c - .long 0x3f7d3aac - .long 0xb0f75ae9 - .long 0xbe000000 - .long 0xbd3c4289 - .long 0x3f7c3b28 - .long 0xb231d68b - .long 0xbe000000 - .long 0x3d60e8f8 - .long 0x3f7b14be - .long 0x32ff75cb - .long 0xbe800000 - .long 0x3cfd1f65 - .long 0x3f79c79d - .long 0x32c64e59 - .long 0xbe800000 - .long 0x3be60685 - .long 0x3f7853f8 - .long 0xb20db9e5 - .long 0xbe800000 - .long 0xbc88e931 - .long 0x3f76ba07 - .long 0x326d092c - .long 0xbe800000 - .long 0xbd25018c - .long 0x3f74fa0b - .long 0xb2939d22 - .long 0xbe800000 - .long 0xbd826b93 - .long 0x3f731447 - .long 0x32c48e11 - .long 0xbe800000 - .long 0xbdb1f34f - .long 0x3f710908 - .long 0x321ed0dd - .long 0xbe800000 - .long 0x3e0f77ad - .long 0x3f6ed89e - .long 0xb29333dc - .long 0xbf000000 - .long 0x3df043ab - .long 0x3f6c835e - .long 0x32f328d4 - .long 0xbf000000 - .long 0x3dc210d8 - .long 0x3f6a09a7 - .long 0xb2eb236c - .long 0xbf000000 - .long 0x3d945dff - .long 0x3f676bd8 - .long 0xb2bc3389 - .long 0xbf000000 - .long 0x3d4e645a - .long 0x3f64aa59 - .long 0x311a08fa - .long 0xbf000000 - .long 0x3cea5164 - .long 0x3f61c598 - .long 0xb2e7f425 - .long 0xbf000000 - .long 0x3be8b648 - .long 0x3f5ebe05 - .long 0x32c6f953 - .long 0xbf000000 - .long 0xbc670f32 - .long 0x3f5b941a - .long 0x32232dc8 - .long 0xbf000000 - .long 0xbd0f59aa - .long 0x3f584853 - .long 0xb27d5fc0 - .long 0xbf000000 - .long 0xbd639d9d - .long 0x3f54db31 - .long 0x3290ea1a - .long 0xbf000000 - .long 0xbd9b4153 - .long 0x3f514d3d - .long 0x300c4f04 - .long 0xbf000000 - .long 0xbdc3fdff - .long 0x3f4d9f02 - .long 0x327e70e8 - .long 0xbf000000 - .long 0xbdebfe8a - .long 0x3f49d112 - .long 0x32992640 - .long 0xbf000000 - .long 0xbe099e65 - .long 0x3f45e403 - .long 0x32b15174 - .long 0xbf000000 - .long 0xbe1cd957 - .long 0x3f41d870 - .long 0x32bff977 - .long 0xbf000000 - .long 0xbe2fad27 - .long 0x3f3daef9 - .long 0x319aabec - .long 0xbf000000 - .long 0xbe4216eb - .long 0x3f396842 - .long 0xb2810007 - .long 0xbf000000 - .long 0x3e95f61a - .long 0x3f3504f3 - .long 0x324fe77a - .long 0xbf800000 - .long 0x3e8d2f7d - .long 0x3f3085bb - .long 0xb2ae2d32 - .long 0xbf800000 - .long 0x3e84a20e - .long 0x3f2beb4a - .long 0xb2b73136 - .long 0xbf800000 - .long 0x3e789e3f - .long 0x3f273656 - .long 0xb2038343 - .long 0xbf800000 - .long 0x3e686ff3 - .long 0x3f226799 - .long 0x322123bb - .long 0xbf800000 - .long 0x3e58bbb7 - .long 0x3f1d7fd1 - .long 0x3292050c - .long 0xbf800000 - .long 0x3e4983f7 - .long 0x3f187fc0 - .long 0xb1c7a3f3 - .long 0xbf800000 - .long 0x3e3acb0c - .long 0x3f13682a - .long 0x32cdd12e - .long 0xbf800000 - .long 0x3e2c933b - .long 0x3f0e39da - .long 0xb24a32e7 - .long 0xbf800000 - .long 0x3e1edeb5 - .long 0x3f08f59b - .long 0xb2be4b4e - .long 0xbf800000 - .long 0x3e11af97 - .long 0x3f039c3d - .long 0xb25ba002 - .long 0xbf800000 - .long 0x3e0507ea - .long 0x3efc5d27 - .long 0xb180eca9 - .long 0xbf800000 - .long 0x3df1d344 - .long 0x3ef15aea - .long 0xb1ff2139 - .long 0xbf800000 - .long 0x3ddaad38 - .long 0x3ee63375 - .long 0xb1d9c774 - .long 0xbf800000 - .long 0x3dc4a143 - .long 0x3edae880 - .long 0x321e15cc - .long 0xbf800000 - .long 0x3dafb2cc - .long 0x3ecf7bca - .long 0x316a3b63 - .long 0xbf800000 - .long 0x3d9be50c - .long 0x3ec3ef15 - .long 0x31d5d52c - .long 0xbf800000 - .long 0x3d893b12 - .long 0x3eb8442a - .long 0xb2705ba6 - .long 0xbf800000 - .long 0x3d6f6f7e - .long 0x3eac7cd4 - .long 0xb2254e02 - .long 0xbf800000 - .long 0x3d4ebb8a - .long 0x3ea09ae5 - .long 0xb23e89a0 - .long 0xbf800000 - .long 0x3d305f55 - .long 0x3e94a031 - .long 0x326d59f0 - .long 0xbf800000 - .long 0x3d145f8c - .long 0x3e888e93 - .long 0x312c7d9e - .long 0xbf800000 - .long 0x3cf58104 - .long 0x3e78cfcc - .long 0xb11bd41d - .long 0xbf800000 - .long 0x3cc70c54 - .long 0x3e605c13 - .long 0x31a7e4f6 - .long 0xbf800000 - .long 0x3c9d6830 - .long 0x3e47c5c2 - .long 0xb0e5967d - .long 0xbf800000 - .long 0x3c71360b - .long 0x3e2f10a2 - .long 0x311167f9 - .long 0xbf800000 - .long 0x3c315502 - .long 0x3e164083 - .long 0x31e8e614 - .long 0xbf800000 - .long 0x3bf66e3c - .long 0x3dfab273 - .long 0xb11568cf - .long 0xbf800000 - .long 0x3b9dc971 - .long 0x3dc8bd36 - .long 0xb07592f5 - .long 0xbf800000 - .long 0x3b319298 - .long 0x3d96a905 - .long 0xb1531e61 - .long 0xbf800000 - .long 0x3a9de1c8 - .long 0x3d48fb30 - .long 0xb0ef227f - .long 0xbf800000 - .long 0x399de7df - .long 0x3cc90ab0 - .long 0xb005c998 - .long 0xbf800000 - .long 0x00000000 - .long 0x00000000 - .long 0x00000000 - .long 0xbf800000 - .long 0x399de7df - .long 0xbcc90ab0 - .long 0x3005c998 - .long 0xbf800000 - .long 0x3a9de1c8 - .long 0xbd48fb30 - .long 0x30ef227f - .long 0xbf800000 - .long 0x3b319298 - .long 0xbd96a905 - .long 0x31531e61 - .long 0xbf800000 - .long 0x3b9dc971 - .long 0xbdc8bd36 - .long 0x307592f5 - .long 0xbf800000 - .long 0x3bf66e3c - .long 0xbdfab273 - .long 0x311568cf - .long 0xbf800000 - .long 0x3c315502 - .long 0xbe164083 - .long 0xb1e8e614 - .long 0xbf800000 - .long 0x3c71360b - .long 0xbe2f10a2 - .long 0xb11167f9 - .long 0xbf800000 - .long 0x3c9d6830 - .long 0xbe47c5c2 - .long 0x30e5967d - .long 0xbf800000 - .long 0x3cc70c54 - .long 0xbe605c13 - .long 0xb1a7e4f6 - .long 0xbf800000 - .long 0x3cf58104 - .long 0xbe78cfcc - .long 0x311bd41d - .long 0xbf800000 - .long 0x3d145f8c - .long 0xbe888e93 - .long 0xb12c7d9e - .long 0xbf800000 - .long 0x3d305f55 - .long 0xbe94a031 - .long 0xb26d59f0 - .long 0xbf800000 - .long 0x3d4ebb8a - .long 0xbea09ae5 - .long 0x323e89a0 - .long 0xbf800000 - .long 0x3d6f6f7e - .long 0xbeac7cd4 - .long 0x32254e02 - .long 0xbf800000 - .long 0x3d893b12 - .long 0xbeb8442a - .long 0x32705ba6 - .long 0xbf800000 - .long 0x3d9be50c - .long 0xbec3ef15 - .long 0xb1d5d52c - .long 0xbf800000 - .long 0x3dafb2cc - .long 0xbecf7bca - .long 0xb16a3b63 - .long 0xbf800000 - .long 0x3dc4a143 - .long 0xbedae880 - .long 0xb21e15cc - .long 0xbf800000 - .long 0x3ddaad38 - .long 0xbee63375 - .long 0x31d9c774 - .long 0xbf800000 - .long 0x3df1d344 - .long 0xbef15aea - .long 0x31ff2139 - .long 0xbf800000 - .long 0x3e0507ea - .long 0xbefc5d27 - .long 0x3180eca9 - .long 0xbf800000 - .long 0x3e11af97 - .long 0xbf039c3d - .long 0x325ba002 - .long 0xbf800000 - .long 0x3e1edeb5 - .long 0xbf08f59b - .long 0x32be4b4e - .long 0xbf800000 - .long 0x3e2c933b - .long 0xbf0e39da - .long 0x324a32e7 - .long 0xbf800000 - .long 0x3e3acb0c - .long 0xbf13682a - .long 0xb2cdd12e - .long 0xbf800000 - .long 0x3e4983f7 - .long 0xbf187fc0 - .long 0x31c7a3f3 - .long 0xbf800000 - .long 0x3e58bbb7 - .long 0xbf1d7fd1 - .long 0xb292050c - .long 0xbf800000 - .long 0x3e686ff3 - .long 0xbf226799 - .long 0xb22123bb - .long 0xbf800000 - .long 0x3e789e3f - .long 0xbf273656 - .long 0x32038343 - .long 0xbf800000 - .long 0x3e84a20e - .long 0xbf2beb4a - .long 0x32b73136 - .long 0xbf800000 - .long 0x3e8d2f7d - .long 0xbf3085bb - .long 0x32ae2d32 - .long 0xbf800000 - .long 0x3e95f61a - .long 0xbf3504f3 - .long 0xb24fe77a - .long 0xbf800000 - .long 0xbe4216eb - .long 0xbf396842 - .long 0x32810007 - .long 0xbf000000 - .long 0xbe2fad27 - .long 0xbf3daef9 - .long 0xb19aabec - .long 0xbf000000 - .long 0xbe1cd957 - .long 0xbf41d870 - .long 0xb2bff977 - .long 0xbf000000 - .long 0xbe099e65 - .long 0xbf45e403 - .long 0xb2b15174 - .long 0xbf000000 - .long 0xbdebfe8a - .long 0xbf49d112 - .long 0xb2992640 - .long 0xbf000000 - .long 0xbdc3fdff - .long 0xbf4d9f02 - .long 0xb27e70e8 - .long 0xbf000000 - .long 0xbd9b4153 - .long 0xbf514d3d - .long 0xb00c4f04 - .long 0xbf000000 - .long 0xbd639d9d - .long 0xbf54db31 - .long 0xb290ea1a - .long 0xbf000000 - .long 0xbd0f59aa - .long 0xbf584853 - .long 0x327d5fc0 - .long 0xbf000000 - .long 0xbc670f32 - .long 0xbf5b941a - .long 0xb2232dc8 - .long 0xbf000000 - .long 0x3be8b648 - .long 0xbf5ebe05 - .long 0xb2c6f953 - .long 0xbf000000 - .long 0x3cea5164 - .long 0xbf61c598 - .long 0x32e7f425 - .long 0xbf000000 - .long 0x3d4e645a - .long 0xbf64aa59 - .long 0xb11a08fa - .long 0xbf000000 - .long 0x3d945dff - .long 0xbf676bd8 - .long 0x32bc3389 - .long 0xbf000000 - .long 0x3dc210d8 - .long 0xbf6a09a7 - .long 0x32eb236c - .long 0xbf000000 - .long 0x3df043ab - .long 0xbf6c835e - .long 0xb2f328d4 - .long 0xbf000000 - .long 0x3e0f77ad - .long 0xbf6ed89e - .long 0x329333dc - .long 0xbf000000 - .long 0xbdb1f34f - .long 0xbf710908 - .long 0xb21ed0dd - .long 0xbe800000 - .long 0xbd826b93 - .long 0xbf731447 - .long 0xb2c48e11 - .long 0xbe800000 - .long 0xbd25018c - .long 0xbf74fa0b - .long 0x32939d22 - .long 0xbe800000 - .long 0xbc88e931 - .long 0xbf76ba07 - .long 0xb26d092c - .long 0xbe800000 - .long 0x3be60685 - .long 0xbf7853f8 - .long 0x320db9e5 - .long 0xbe800000 - .long 0x3cfd1f65 - .long 0xbf79c79d - .long 0xb2c64e59 - .long 0xbe800000 - .long 0x3d60e8f8 - .long 0xbf7b14be - .long 0xb2ff75cb - .long 0xbe800000 - .long 0xbd3c4289 - .long 0xbf7c3b28 - .long 0x3231d68b - .long 0xbe000000 - .long 0xbcb2041c - .long 0xbf7d3aac - .long 0x30f75ae9 - .long 0xbe000000 - .long 0x3b29b1a9 - .long 0xbf7e1324 - .long 0x32f1e603 - .long 0xbe000000 - .long 0x3cdd0b28 - .long 0xbf7ec46d - .long 0xb1f44949 - .long 0xbe000000 - .long 0xbc354825 - .long 0xbf7f4e6d - .long 0xb2d01884 - .long 0xbd800000 - .long 0x3c5c1342 - .long 0xbf7fb10f - .long 0xb1de5b5f - .long 0xbd800000 - .long 0x3bdbd541 - .long 0xbf7fec43 - .long 0xb084cd0d - .long 0xbd000000 - .long 0x00000000 - .long 0xbf800000 - .long 0x00000000 - .long 0x00000000 - .long 0xbbdbd541 - .long 0xbf7fec43 - .long 0xb084cd0d - .long 0x3d000000 - .long 0xbc5c1342 - .long 0xbf7fb10f - .long 0xb1de5b5f - .long 0x3d800000 - .long 0x3c354825 - .long 0xbf7f4e6d - .long 0xb2d01884 - .long 0x3d800000 - .long 0xbcdd0b28 - .long 0xbf7ec46d - .long 0xb1f44949 - .long 0x3e000000 - .long 0xbb29b1a9 - .long 0xbf7e1324 - .long 0x32f1e603 - .long 0x3e000000 - .long 0x3cb2041c - .long 0xbf7d3aac - .long 0x30f75ae9 - .long 0x3e000000 - .long 0x3d3c4289 - .long 0xbf7c3b28 - .long 0x3231d68b - .long 0x3e000000 - .long 0xbd60e8f8 - .long 0xbf7b14be - .long 0xb2ff75cb - .long 0x3e800000 - .long 0xbcfd1f65 - .long 0xbf79c79d - .long 0xb2c64e59 - .long 0x3e800000 - .long 0xbbe60685 - .long 0xbf7853f8 - .long 0x320db9e5 - .long 0x3e800000 - .long 0x3c88e931 - .long 0xbf76ba07 - .long 0xb26d092c - .long 0x3e800000 - .long 0x3d25018c - .long 0xbf74fa0b - .long 0x32939d22 - .long 0x3e800000 - .long 0x3d826b93 - .long 0xbf731447 - .long 0xb2c48e11 - .long 0x3e800000 - .long 0x3db1f34f - .long 0xbf710908 - .long 0xb21ed0dd - .long 0x3e800000 - .long 0xbe0f77ad - .long 0xbf6ed89e - .long 0x329333dc - .long 0x3f000000 - .long 0xbdf043ab - .long 0xbf6c835e - .long 0xb2f328d4 - .long 0x3f000000 - .long 0xbdc210d8 - .long 0xbf6a09a7 - .long 0x32eb236c - .long 0x3f000000 - .long 0xbd945dff - .long 0xbf676bd8 - .long 0x32bc3389 - .long 0x3f000000 - .long 0xbd4e645a - .long 0xbf64aa59 - .long 0xb11a08fa - .long 0x3f000000 - .long 0xbcea5164 - .long 0xbf61c598 - .long 0x32e7f425 - .long 0x3f000000 - .long 0xbbe8b648 - .long 0xbf5ebe05 - .long 0xb2c6f953 - .long 0x3f000000 - .long 0x3c670f32 - .long 0xbf5b941a - .long 0xb2232dc8 - .long 0x3f000000 - .long 0x3d0f59aa - .long 0xbf584853 - .long 0x327d5fc0 - .long 0x3f000000 - .long 0x3d639d9d - .long 0xbf54db31 - .long 0xb290ea1a - .long 0x3f000000 - .long 0x3d9b4153 - .long 0xbf514d3d - .long 0xb00c4f04 - .long 0x3f000000 - .long 0x3dc3fdff - .long 0xbf4d9f02 - .long 0xb27e70e8 - .long 0x3f000000 - .long 0x3debfe8a - .long 0xbf49d112 - .long 0xb2992640 - .long 0x3f000000 - .long 0x3e099e65 - .long 0xbf45e403 - .long 0xb2b15174 - .long 0x3f000000 - .long 0x3e1cd957 - .long 0xbf41d870 - .long 0xb2bff977 - .long 0x3f000000 - .long 0x3e2fad27 - .long 0xbf3daef9 - .long 0xb19aabec - .long 0x3f000000 - .long 0x3e4216eb - .long 0xbf396842 - .long 0x32810007 - .long 0x3f000000 - .long 0xbe95f61a - .long 0xbf3504f3 - .long 0xb24fe77a - .long 0x3f800000 - .long 0xbe8d2f7d - .long 0xbf3085bb - .long 0x32ae2d32 - .long 0x3f800000 - .long 0xbe84a20e - .long 0xbf2beb4a - .long 0x32b73136 - .long 0x3f800000 - .long 0xbe789e3f - .long 0xbf273656 - .long 0x32038343 - .long 0x3f800000 - .long 0xbe686ff3 - .long 0xbf226799 - .long 0xb22123bb - .long 0x3f800000 - .long 0xbe58bbb7 - .long 0xbf1d7fd1 - .long 0xb292050c - .long 0x3f800000 - .long 0xbe4983f7 - .long 0xbf187fc0 - .long 0x31c7a3f3 - .long 0x3f800000 - .long 0xbe3acb0c - .long 0xbf13682a - .long 0xb2cdd12e - .long 0x3f800000 - .long 0xbe2c933b - .long 0xbf0e39da - .long 0x324a32e7 - .long 0x3f800000 - .long 0xbe1edeb5 - .long 0xbf08f59b - .long 0x32be4b4e - .long 0x3f800000 - .long 0xbe11af97 - .long 0xbf039c3d - .long 0x325ba002 - .long 0x3f800000 - .long 0xbe0507ea - .long 0xbefc5d27 - .long 0x3180eca9 - .long 0x3f800000 - .long 0xbdf1d344 - .long 0xbef15aea - .long 0x31ff2139 - .long 0x3f800000 - .long 0xbddaad38 - .long 0xbee63375 - .long 0x31d9c774 - .long 0x3f800000 - .long 0xbdc4a143 - .long 0xbedae880 - .long 0xb21e15cc - .long 0x3f800000 - .long 0xbdafb2cc - .long 0xbecf7bca - .long 0xb16a3b63 - .long 0x3f800000 - .long 0xbd9be50c - .long 0xbec3ef15 - .long 0xb1d5d52c - .long 0x3f800000 - .long 0xbd893b12 - .long 0xbeb8442a - .long 0x32705ba6 - .long 0x3f800000 - .long 0xbd6f6f7e - .long 0xbeac7cd4 - .long 0x32254e02 - .long 0x3f800000 - .long 0xbd4ebb8a - .long 0xbea09ae5 - .long 0x323e89a0 - .long 0x3f800000 - .long 0xbd305f55 - .long 0xbe94a031 - .long 0xb26d59f0 - .long 0x3f800000 - .long 0xbd145f8c - .long 0xbe888e93 - .long 0xb12c7d9e - .long 0x3f800000 - .long 0xbcf58104 - .long 0xbe78cfcc - .long 0x311bd41d - .long 0x3f800000 - .long 0xbcc70c54 - .long 0xbe605c13 - .long 0xb1a7e4f6 - .long 0x3f800000 - .long 0xbc9d6830 - .long 0xbe47c5c2 - .long 0x30e5967d - .long 0x3f800000 - .long 0xbc71360b - .long 0xbe2f10a2 - .long 0xb11167f9 - .long 0x3f800000 - .long 0xbc315502 - .long 0xbe164083 - .long 0xb1e8e614 - .long 0x3f800000 - .long 0xbbf66e3c - .long 0xbdfab273 - .long 0x311568cf - .long 0x3f800000 - .long 0xbb9dc971 - .long 0xbdc8bd36 - .long 0x307592f5 - .long 0x3f800000 - .long 0xbb319298 - .long 0xbd96a905 - .long 0x31531e61 - .long 0x3f800000 - .long 0xba9de1c8 - .long 0xbd48fb30 - .long 0x30ef227f - .long 0x3f800000 - .long 0xb99de7df - .long 0xbcc90ab0 - .long 0x3005c998 - .long 0x3f800000 - .long 0x00000000 - .long 0x00000000 - .long 0x00000000 - .long 0x3f800000 - .long 0xb99de7df - .long 0x3cc90ab0 - .long 0xb005c998 - .long 0x3f800000 - .long 0xba9de1c8 - .long 0x3d48fb30 - .long 0xb0ef227f - .long 0x3f800000 - .long 0xbb319298 - .long 0x3d96a905 - .long 0xb1531e61 - .long 0x3f800000 - .long 0xbb9dc971 - .long 0x3dc8bd36 - .long 0xb07592f5 - .long 0x3f800000 - .long 0xbbf66e3c - .long 0x3dfab273 - .long 0xb11568cf - .long 0x3f800000 - .long 0xbc315502 - .long 0x3e164083 - .long 0x31e8e614 - .long 0x3f800000 - .long 0xbc71360b - .long 0x3e2f10a2 - .long 0x311167f9 - .long 0x3f800000 - .long 0xbc9d6830 - .long 0x3e47c5c2 - .long 0xb0e5967d - .long 0x3f800000 - .long 0xbcc70c54 - .long 0x3e605c13 - .long 0x31a7e4f6 - .long 0x3f800000 - .long 0xbcf58104 - .long 0x3e78cfcc - .long 0xb11bd41d - .long 0x3f800000 - .long 0xbd145f8c - .long 0x3e888e93 - .long 0x312c7d9e - .long 0x3f800000 - .long 0xbd305f55 - .long 0x3e94a031 - .long 0x326d59f0 - .long 0x3f800000 - .long 0xbd4ebb8a - .long 0x3ea09ae5 - .long 0xb23e89a0 - .long 0x3f800000 - .long 0xbd6f6f7e - .long 0x3eac7cd4 - .long 0xb2254e02 - .long 0x3f800000 - .long 0xbd893b12 - .long 0x3eb8442a - .long 0xb2705ba6 - .long 0x3f800000 - .long 0xbd9be50c - .long 0x3ec3ef15 - .long 0x31d5d52c - .long 0x3f800000 - .long 0xbdafb2cc - .long 0x3ecf7bca - .long 0x316a3b63 - .long 0x3f800000 - .long 0xbdc4a143 - .long 0x3edae880 - .long 0x321e15cc - .long 0x3f800000 - .long 0xbddaad38 - .long 0x3ee63375 - .long 0xb1d9c774 - .long 0x3f800000 - .long 0xbdf1d344 - .long 0x3ef15aea - .long 0xb1ff2139 - .long 0x3f800000 - .long 0xbe0507ea - .long 0x3efc5d27 - .long 0xb180eca9 - .long 0x3f800000 - .long 0xbe11af97 - .long 0x3f039c3d - .long 0xb25ba002 - .long 0x3f800000 - .long 0xbe1edeb5 - .long 0x3f08f59b - .long 0xb2be4b4e - .long 0x3f800000 - .long 0xbe2c933b - .long 0x3f0e39da - .long 0xb24a32e7 - .long 0x3f800000 - .long 0xbe3acb0c - .long 0x3f13682a - .long 0x32cdd12e - .long 0x3f800000 - .long 0xbe4983f7 - .long 0x3f187fc0 - .long 0xb1c7a3f3 - .long 0x3f800000 - .long 0xbe58bbb7 - .long 0x3f1d7fd1 - .long 0x3292050c - .long 0x3f800000 - .long 0xbe686ff3 - .long 0x3f226799 - .long 0x322123bb - .long 0x3f800000 - .long 0xbe789e3f - .long 0x3f273656 - .long 0xb2038343 - .long 0x3f800000 - .long 0xbe84a20e - .long 0x3f2beb4a - .long 0xb2b73136 - .long 0x3f800000 - .long 0xbe8d2f7d - .long 0x3f3085bb - .long 0xb2ae2d32 - .long 0x3f800000 - .long 0xbe95f61a - .long 0x3f3504f3 - .long 0x324fe77a - .long 0x3f800000 - .long 0x3e4216eb - .long 0x3f396842 - .long 0xb2810007 - .long 0x3f000000 - .long 0x3e2fad27 - .long 0x3f3daef9 - .long 0x319aabec - .long 0x3f000000 - .long 0x3e1cd957 - .long 0x3f41d870 - .long 0x32bff977 - .long 0x3f000000 - .long 0x3e099e65 - .long 0x3f45e403 - .long 0x32b15174 - .long 0x3f000000 - .long 0x3debfe8a - .long 0x3f49d112 - .long 0x32992640 - .long 0x3f000000 - .long 0x3dc3fdff - .long 0x3f4d9f02 - .long 0x327e70e8 - .long 0x3f000000 - .long 0x3d9b4153 - .long 0x3f514d3d - .long 0x300c4f04 - .long 0x3f000000 - .long 0x3d639d9d - .long 0x3f54db31 - .long 0x3290ea1a - .long 0x3f000000 - .long 0x3d0f59aa - .long 0x3f584853 - .long 0xb27d5fc0 - .long 0x3f000000 - .long 0x3c670f32 - .long 0x3f5b941a - .long 0x32232dc8 - .long 0x3f000000 - .long 0xbbe8b648 - .long 0x3f5ebe05 - .long 0x32c6f953 - .long 0x3f000000 - .long 0xbcea5164 - .long 0x3f61c598 - .long 0xb2e7f425 - .long 0x3f000000 - .long 0xbd4e645a - .long 0x3f64aa59 - .long 0x311a08fa - .long 0x3f000000 - .long 0xbd945dff - .long 0x3f676bd8 - .long 0xb2bc3389 - .long 0x3f000000 - .long 0xbdc210d8 - .long 0x3f6a09a7 - .long 0xb2eb236c - .long 0x3f000000 - .long 0xbdf043ab - .long 0x3f6c835e - .long 0x32f328d4 - .long 0x3f000000 - .long 0xbe0f77ad - .long 0x3f6ed89e - .long 0xb29333dc - .long 0x3f000000 - .long 0x3db1f34f - .long 0x3f710908 - .long 0x321ed0dd - .long 0x3e800000 - .long 0x3d826b93 - .long 0x3f731447 - .long 0x32c48e11 - .long 0x3e800000 - .long 0x3d25018c - .long 0x3f74fa0b - .long 0xb2939d22 - .long 0x3e800000 - .long 0x3c88e931 - .long 0x3f76ba07 - .long 0x326d092c - .long 0x3e800000 - .long 0xbbe60685 - .long 0x3f7853f8 - .long 0xb20db9e5 - .long 0x3e800000 - .long 0xbcfd1f65 - .long 0x3f79c79d - .long 0x32c64e59 - .long 0x3e800000 - .long 0xbd60e8f8 - .long 0x3f7b14be - .long 0x32ff75cb - .long 0x3e800000 - .long 0x3d3c4289 - .long 0x3f7c3b28 - .long 0xb231d68b - .long 0x3e000000 - .long 0x3cb2041c - .long 0x3f7d3aac - .long 0xb0f75ae9 - .long 0x3e000000 - .long 0xbb29b1a9 - .long 0x3f7e1324 - .long 0xb2f1e603 - .long 0x3e000000 - .long 0xbcdd0b28 - .long 0x3f7ec46d - .long 0x31f44949 - .long 0x3e000000 - .long 0x3c354825 - .long 0x3f7f4e6d - .long 0x32d01884 - .long 0x3d800000 - .long 0xbc5c1342 - .long 0x3f7fb10f - .long 0x31de5b5f - .long 0x3d800000 - .long 0xbbdbd541 - .long 0x3f7fec43 - .long 0x3084cd0d - .long 0x3d000000 - -/* General purpose constants: - absolute value mask */ -float_vector __sAbsMask 0x7fffffff - -/* threshold for out-of-range values */ -float_vector __sRangeReductionVal 0x461c4000 - -/* +INF */ -float_vector __sRangeVal 0x7f800000 - -/* High Accuracy version polynomial coefficients: - S1 = -1.66666666664728165763e-01 */ -float_vector __sS1 0xbe2aaaab - -/* S2 = 8.33329173045453069014e-03 */ -float_vector __sS2 0x3c08885c - -/* C1 = -5.00000000000000000000e-01 */ -float_vector __sC1 0xbf000000 - -/* C2 = 4.16638942914469202550e-02 */ -float_vector __sC2 0x3d2aaa7c - -/* Range reduction PI-based constants: - PI high part */ -float_vector __sPI1 0x40490000 - -/* PI mid part 1 */ -float_vector __sPI2 0x3a7da000 - -/* PI mid part 2 */ -float_vector __sPI3 0x34222000 - -/* PI low part */ -float_vector __sPI4 0x2cb4611a - -/* PI1, PI2, and PI3 when FMA is available - PI high part (when FMA available) */ -float_vector __sPI1_FMA 0x40490fdb - -/* PI mid part (when FMA available) */ -float_vector __sPI2_FMA 0xb3bbbd2e - -/* PI low part (when FMA available) */ -float_vector __sPI3_FMA 0xa7772ced - -/* Polynomial constants for work w/o FMA, relative error ~ 2^(-26.625) */ -float_vector __sA3 0xbe2aaaa6 -float_vector __sA5 0x3c08876a -float_vector __sA7 0xb94fb7ff -float_vector __sA9 0x362edef8 - -/* Polynomial constants, work with FMA, relative error ~ 2^(-26.417) */ -float_vector __sA5_FMA 0x3c088768 -float_vector __sA7_FMA 0xb94fb6cf -float_vector __sA9_FMA 0x362ec335 - -/* 1/PI */ -float_vector __sInvPI 0x3ea2f983 - -/* right-shifter constant */ -float_vector __sRShifter 0x4b400000 - -/* PI/2 */ -float_vector __sHalfPI 0x3fc90fdb - -/* 1/2 */ -float_vector __sOneHalf 0x3f000000 - .type __svml_scos_data,@object - .size __svml_scos_data,.-__svml_scos_data diff --git a/sysdeps/x86_64/fpu/svml_s_cosf_data.h b/sysdeps/x86_64/fpu/svml_s_cosf_data.h deleted file mode 100644 index 1e25c5a56d..0000000000 --- a/sysdeps/x86_64/fpu/svml_s_cosf_data.h +++ /dev/null @@ -1,58 +0,0 @@ -/* Offsets for data table for vectorized cosf. - Copyright (C) 2014-2015 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef S_COSF_DATA_H -#define S_COSF_DATA_H - -.macro float_vector offset value -.if .-__svml_scos_data != \offset -.err -.endif -.rept 16 -.long \value -.endr -.endm - -#define __dT 0 -#define __sAbsMask 4096 -#define __sRangeReductionVal 4160 -#define __sRangeVal 4224 -#define __sS1 4288 -#define __sS2 4352 -#define __sC1 4416 -#define __sC2 4480 -#define __sPI1 4544 -#define __sPI2 4608 -#define __sPI3 4672 -#define __sPI4 4736 -#define __sPI1_FMA 4800 -#define __sPI2_FMA 4864 -#define __sPI3_FMA 4928 -#define __sA3 4992 -#define __sA5 5056 -#define __sA7 5120 -#define __sA9 5184 -#define __sA5_FMA 5248 -#define __sA7_FMA 5312 -#define __sA9_FMA 5376 -#define __sInvPI 5440 -#define __sRShifter 5504 -#define __sHalfPI 5568 -#define __sOneHalf 5632 - -#endif diff --git a/sysdeps/x86_64/fpu/svml_s_sincosf_data.S b/sysdeps/x86_64/fpu/svml_s_sincosf_data.S deleted file mode 100644 index 040414d377..0000000000 --- a/sysdeps/x86_64/fpu/svml_s_sincosf_data.S +++ /dev/null @@ -1,1140 +0,0 @@ -/* Data for function sincosf. - Copyright (C) 2014-2015 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include "svml_s_sincosf_data.h" - - .section .rodata, "a" - .align 64 - .align 64 - -/* Data table for vector implementations of function sincosf. - The table may contain polynomial, reduction, lookup coefficients - and other coefficients obtained through different methods of research - and experimental work. */ - - .globl __svml_ssincos_data -__svml_ssincos_data: - -/* Lookup table for high accuracy version (CHL,SHi,SLo,Sigma) */ -.if .-__svml_ssincos_data != __dT -.err -.endif - .long 0x00000000 - .long 0x00000000 - .long 0x00000000 - .long 0x3f800000 - .long 0xb99de7df - .long 0x3cc90ab0 - .long 0xb005c998 - .long 0x3f800000 - .long 0xba9de1c8 - .long 0x3d48fb30 - .long 0xb0ef227f - .long 0x3f800000 - .long 0xbb319298 - .long 0x3d96a905 - .long 0xb1531e61 - .long 0x3f800000 - .long 0xbb9dc971 - .long 0x3dc8bd36 - .long 0xb07592f5 - .long 0x3f800000 - .long 0xbbf66e3c - .long 0x3dfab273 - .long 0xb11568cf - .long 0x3f800000 - .long 0xbc315502 - .long 0x3e164083 - .long 0x31e8e614 - .long 0x3f800000 - .long 0xbc71360b - .long 0x3e2f10a2 - .long 0x311167f9 - .long 0x3f800000 - .long 0xbc9d6830 - .long 0x3e47c5c2 - .long 0xb0e5967d - .long 0x3f800000 - .long 0xbcc70c54 - .long 0x3e605c13 - .long 0x31a7e4f6 - .long 0x3f800000 - .long 0xbcf58104 - .long 0x3e78cfcc - .long 0xb11bd41d - .long 0x3f800000 - .long 0xbd145f8c - .long 0x3e888e93 - .long 0x312c7d9e - .long 0x3f800000 - .long 0xbd305f55 - .long 0x3e94a031 - .long 0x326d59f0 - .long 0x3f800000 - .long 0xbd4ebb8a - .long 0x3ea09ae5 - .long 0xb23e89a0 - .long 0x3f800000 - .long 0xbd6f6f7e - .long 0x3eac7cd4 - .long 0xb2254e02 - .long 0x3f800000 - .long 0xbd893b12 - .long 0x3eb8442a - .long 0xb2705ba6 - .long 0x3f800000 - .long 0xbd9be50c - .long 0x3ec3ef15 - .long 0x31d5d52c - .long 0x3f800000 - .long 0xbdafb2cc - .long 0x3ecf7bca - .long 0x316a3b63 - .long 0x3f800000 - .long 0xbdc4a143 - .long 0x3edae880 - .long 0x321e15cc - .long 0x3f800000 - .long 0xbddaad38 - .long 0x3ee63375 - .long 0xb1d9c774 - .long 0x3f800000 - .long 0xbdf1d344 - .long 0x3ef15aea - .long 0xb1ff2139 - .long 0x3f800000 - .long 0xbe0507ea - .long 0x3efc5d27 - .long 0xb180eca9 - .long 0x3f800000 - .long 0xbe11af97 - .long 0x3f039c3d - .long 0xb25ba002 - .long 0x3f800000 - .long 0xbe1edeb5 - .long 0x3f08f59b - .long 0xb2be4b4e - .long 0x3f800000 - .long 0xbe2c933b - .long 0x3f0e39da - .long 0xb24a32e7 - .long 0x3f800000 - .long 0xbe3acb0c - .long 0x3f13682a - .long 0x32cdd12e - .long 0x3f800000 - .long 0xbe4983f7 - .long 0x3f187fc0 - .long 0xb1c7a3f3 - .long 0x3f800000 - .long 0xbe58bbb7 - .long 0x3f1d7fd1 - .long 0x3292050c - .long 0x3f800000 - .long 0xbe686ff3 - .long 0x3f226799 - .long 0x322123bb - .long 0x3f800000 - .long 0xbe789e3f - .long 0x3f273656 - .long 0xb2038343 - .long 0x3f800000 - .long 0xbe84a20e - .long 0x3f2beb4a - .long 0xb2b73136 - .long 0x3f800000 - .long 0xbe8d2f7d - .long 0x3f3085bb - .long 0xb2ae2d32 - .long 0x3f800000 - .long 0xbe95f61a - .long 0x3f3504f3 - .long 0x324fe77a - .long 0x3f800000 - .long 0x3e4216eb - .long 0x3f396842 - .long 0xb2810007 - .long 0x3f000000 - .long 0x3e2fad27 - .long 0x3f3daef9 - .long 0x319aabec - .long 0x3f000000 - .long 0x3e1cd957 - .long 0x3f41d870 - .long 0x32bff977 - .long 0x3f000000 - .long 0x3e099e65 - .long 0x3f45e403 - .long 0x32b15174 - .long 0x3f000000 - .long 0x3debfe8a - .long 0x3f49d112 - .long 0x32992640 - .long 0x3f000000 - .long 0x3dc3fdff - .long 0x3f4d9f02 - .long 0x327e70e8 - .long 0x3f000000 - .long 0x3d9b4153 - .long 0x3f514d3d - .long 0x300c4f04 - .long 0x3f000000 - .long 0x3d639d9d - .long 0x3f54db31 - .long 0x3290ea1a - .long 0x3f000000 - .long 0x3d0f59aa - .long 0x3f584853 - .long 0xb27d5fc0 - .long 0x3f000000 - .long 0x3c670f32 - .long 0x3f5b941a - .long 0x32232dc8 - .long 0x3f000000 - .long 0xbbe8b648 - .long 0x3f5ebe05 - .long 0x32c6f953 - .long 0x3f000000 - .long 0xbcea5164 - .long 0x3f61c598 - .long 0xb2e7f425 - .long 0x3f000000 - .long 0xbd4e645a - .long 0x3f64aa59 - .long 0x311a08fa - .long 0x3f000000 - .long 0xbd945dff - .long 0x3f676bd8 - .long 0xb2bc3389 - .long 0x3f000000 - .long 0xbdc210d8 - .long 0x3f6a09a7 - .long 0xb2eb236c - .long 0x3f000000 - .long 0xbdf043ab - .long 0x3f6c835e - .long 0x32f328d4 - .long 0x3f000000 - .long 0xbe0f77ad - .long 0x3f6ed89e - .long 0xb29333dc - .long 0x3f000000 - .long 0x3db1f34f - .long 0x3f710908 - .long 0x321ed0dd - .long 0x3e800000 - .long 0x3d826b93 - .long 0x3f731447 - .long 0x32c48e11 - .long 0x3e800000 - .long 0x3d25018c - .long 0x3f74fa0b - .long 0xb2939d22 - .long 0x3e800000 - .long 0x3c88e931 - .long 0x3f76ba07 - .long 0x326d092c - .long 0x3e800000 - .long 0xbbe60685 - .long 0x3f7853f8 - .long 0xb20db9e5 - .long 0x3e800000 - .long 0xbcfd1f65 - .long 0x3f79c79d - .long 0x32c64e59 - .long 0x3e800000 - .long 0xbd60e8f8 - .long 0x3f7b14be - .long 0x32ff75cb - .long 0x3e800000 - .long 0x3d3c4289 - .long 0x3f7c3b28 - .long 0xb231d68b - .long 0x3e000000 - .long 0x3cb2041c - .long 0x3f7d3aac - .long 0xb0f75ae9 - .long 0x3e000000 - .long 0xbb29b1a9 - .long 0x3f7e1324 - .long 0xb2f1e603 - .long 0x3e000000 - .long 0xbcdd0b28 - .long 0x3f7ec46d - .long 0x31f44949 - .long 0x3e000000 - .long 0x3c354825 - .long 0x3f7f4e6d - .long 0x32d01884 - .long 0x3d800000 - .long 0xbc5c1342 - .long 0x3f7fb10f - .long 0x31de5b5f - .long 0x3d800000 - .long 0xbbdbd541 - .long 0x3f7fec43 - .long 0x3084cd0d - .long 0x3d000000 - .long 0x00000000 - .long 0x3f800000 - .long 0x00000000 - .long 0x00000000 - .long 0x3bdbd541 - .long 0x3f7fec43 - .long 0x3084cd0d - .long 0xbd000000 - .long 0x3c5c1342 - .long 0x3f7fb10f - .long 0x31de5b5f - .long 0xbd800000 - .long 0xbc354825 - .long 0x3f7f4e6d - .long 0x32d01884 - .long 0xbd800000 - .long 0x3cdd0b28 - .long 0x3f7ec46d - .long 0x31f44949 - .long 0xbe000000 - .long 0x3b29b1a9 - .long 0x3f7e1324 - .long 0xb2f1e603 - .long 0xbe000000 - .long 0xbcb2041c - .long 0x3f7d3aac - .long 0xb0f75ae9 - .long 0xbe000000 - .long 0xbd3c4289 - .long 0x3f7c3b28 - .long 0xb231d68b - .long 0xbe000000 - .long 0x3d60e8f8 - .long 0x3f7b14be - .long 0x32ff75cb - .long 0xbe800000 - .long 0x3cfd1f65 - .long 0x3f79c79d - .long 0x32c64e59 - .long 0xbe800000 - .long 0x3be60685 - .long 0x3f7853f8 - .long 0xb20db9e5 - .long 0xbe800000 - .long 0xbc88e931 - .long 0x3f76ba07 - .long 0x326d092c - .long 0xbe800000 - .long 0xbd25018c - .long 0x3f74fa0b - .long 0xb2939d22 - .long 0xbe800000 - .long 0xbd826b93 - .long 0x3f731447 - .long 0x32c48e11 - .long 0xbe800000 - .long 0xbdb1f34f - .long 0x3f710908 - .long 0x321ed0dd - .long 0xbe800000 - .long 0x3e0f77ad - .long 0x3f6ed89e - .long 0xb29333dc - .long 0xbf000000 - .long 0x3df043ab - .long 0x3f6c835e - .long 0x32f328d4 - .long 0xbf000000 - .long 0x3dc210d8 - .long 0x3f6a09a7 - .long 0xb2eb236c - .long 0xbf000000 - .long 0x3d945dff - .long 0x3f676bd8 - .long 0xb2bc3389 - .long 0xbf000000 - .long 0x3d4e645a - .long 0x3f64aa59 - .long 0x311a08fa - .long 0xbf000000 - .long 0x3cea5164 - .long 0x3f61c598 - .long 0xb2e7f425 - .long 0xbf000000 - .long 0x3be8b648 - .long 0x3f5ebe05 - .long 0x32c6f953 - .long 0xbf000000 - .long 0xbc670f32 - .long 0x3f5b941a - .long 0x32232dc8 - .long 0xbf000000 - .long 0xbd0f59aa - .long 0x3f584853 - .long 0xb27d5fc0 - .long 0xbf000000 - .long 0xbd639d9d - .long 0x3f54db31 - .long 0x3290ea1a - .long 0xbf000000 - .long 0xbd9b4153 - .long 0x3f514d3d - .long 0x300c4f04 - .long 0xbf000000 - .long 0xbdc3fdff - .long 0x3f4d9f02 - .long 0x327e70e8 - .long 0xbf000000 - .long 0xbdebfe8a - .long 0x3f49d112 - .long 0x32992640 - .long 0xbf000000 - .long 0xbe099e65 - .long 0x3f45e403 - .long 0x32b15174 - .long 0xbf000000 - .long 0xbe1cd957 - .long 0x3f41d870 - .long 0x32bff977 - .long 0xbf000000 - .long 0xbe2fad27 - .long 0x3f3daef9 - .long 0x319aabec - .long 0xbf000000 - .long 0xbe4216eb - .long 0x3f396842 - .long 0xb2810007 - .long 0xbf000000 - .long 0x3e95f61a - .long 0x3f3504f3 - .long 0x324fe77a - .long 0xbf800000 - .long 0x3e8d2f7d - .long 0x3f3085bb - .long 0xb2ae2d32 - .long 0xbf800000 - .long 0x3e84a20e - .long 0x3f2beb4a - .long 0xb2b73136 - .long 0xbf800000 - .long 0x3e789e3f - .long 0x3f273656 - .long 0xb2038343 - .long 0xbf800000 - .long 0x3e686ff3 - .long 0x3f226799 - .long 0x322123bb - .long 0xbf800000 - .long 0x3e58bbb7 - .long 0x3f1d7fd1 - .long 0x3292050c - .long 0xbf800000 - .long 0x3e4983f7 - .long 0x3f187fc0 - .long 0xb1c7a3f3 - .long 0xbf800000 - .long 0x3e3acb0c - .long 0x3f13682a - .long 0x32cdd12e - .long 0xbf800000 - .long 0x3e2c933b - .long 0x3f0e39da - .long 0xb24a32e7 - .long 0xbf800000 - .long 0x3e1edeb5 - .long 0x3f08f59b - .long 0xb2be4b4e - .long 0xbf800000 - .long 0x3e11af97 - .long 0x3f039c3d - .long 0xb25ba002 - .long 0xbf800000 - .long 0x3e0507ea - .long 0x3efc5d27 - .long 0xb180eca9 - .long 0xbf800000 - .long 0x3df1d344 - .long 0x3ef15aea - .long 0xb1ff2139 - .long 0xbf800000 - .long 0x3ddaad38 - .long 0x3ee63375 - .long 0xb1d9c774 - .long 0xbf800000 - .long 0x3dc4a143 - .long 0x3edae880 - .long 0x321e15cc - .long 0xbf800000 - .long 0x3dafb2cc - .long 0x3ecf7bca - .long 0x316a3b63 - .long 0xbf800000 - .long 0x3d9be50c - .long 0x3ec3ef15 - .long 0x31d5d52c - .long 0xbf800000 - .long 0x3d893b12 - .long 0x3eb8442a - .long 0xb2705ba6 - .long 0xbf800000 - .long 0x3d6f6f7e - .long 0x3eac7cd4 - .long 0xb2254e02 - .long 0xbf800000 - .long 0x3d4ebb8a - .long 0x3ea09ae5 - .long 0xb23e89a0 - .long 0xbf800000 - .long 0x3d305f55 - .long 0x3e94a031 - .long 0x326d59f0 - .long 0xbf800000 - .long 0x3d145f8c - .long 0x3e888e93 - .long 0x312c7d9e - .long 0xbf800000 - .long 0x3cf58104 - .long 0x3e78cfcc - .long 0xb11bd41d - .long 0xbf800000 - .long 0x3cc70c54 - .long 0x3e605c13 - .long 0x31a7e4f6 - .long 0xbf800000 - .long 0x3c9d6830 - .long 0x3e47c5c2 - .long 0xb0e5967d - .long 0xbf800000 - .long 0x3c71360b - .long 0x3e2f10a2 - .long 0x311167f9 - .long 0xbf800000 - .long 0x3c315502 - .long 0x3e164083 - .long 0x31e8e614 - .long 0xbf800000 - .long 0x3bf66e3c - .long 0x3dfab273 - .long 0xb11568cf - .long 0xbf800000 - .long 0x3b9dc971 - .long 0x3dc8bd36 - .long 0xb07592f5 - .long 0xbf800000 - .long 0x3b319298 - .long 0x3d96a905 - .long 0xb1531e61 - .long 0xbf800000 - .long 0x3a9de1c8 - .long 0x3d48fb30 - .long 0xb0ef227f - .long 0xbf800000 - .long 0x399de7df - .long 0x3cc90ab0 - .long 0xb005c998 - .long 0xbf800000 - .long 0x00000000 - .long 0x00000000 - .long 0x00000000 - .long 0xbf800000 - .long 0x399de7df - .long 0xbcc90ab0 - .long 0x3005c998 - .long 0xbf800000 - .long 0x3a9de1c8 - .long 0xbd48fb30 - .long 0x30ef227f - .long 0xbf800000 - .long 0x3b319298 - .long 0xbd96a905 - .long 0x31531e61 - .long 0xbf800000 - .long 0x3b9dc971 - .long 0xbdc8bd36 - .long 0x307592f5 - .long 0xbf800000 - .long 0x3bf66e3c - .long 0xbdfab273 - .long 0x311568cf - .long 0xbf800000 - .long 0x3c315502 - .long 0xbe164083 - .long 0xb1e8e614 - .long 0xbf800000 - .long 0x3c71360b - .long 0xbe2f10a2 - .long 0xb11167f9 - .long 0xbf800000 - .long 0x3c9d6830 - .long 0xbe47c5c2 - .long 0x30e5967d - .long 0xbf800000 - .long 0x3cc70c54 - .long 0xbe605c13 - .long 0xb1a7e4f6 - .long 0xbf800000 - .long 0x3cf58104 - .long 0xbe78cfcc - .long 0x311bd41d - .long 0xbf800000 - .long 0x3d145f8c - .long 0xbe888e93 - .long 0xb12c7d9e - .long 0xbf800000 - .long 0x3d305f55 - .long 0xbe94a031 - .long 0xb26d59f0 - .long 0xbf800000 - .long 0x3d4ebb8a - .long 0xbea09ae5 - .long 0x323e89a0 - .long 0xbf800000 - .long 0x3d6f6f7e - .long 0xbeac7cd4 - .long 0x32254e02 - .long 0xbf800000 - .long 0x3d893b12 - .long 0xbeb8442a - .long 0x32705ba6 - .long 0xbf800000 - .long 0x3d9be50c - .long 0xbec3ef15 - .long 0xb1d5d52c - .long 0xbf800000 - .long 0x3dafb2cc - .long 0xbecf7bca - .long 0xb16a3b63 - .long 0xbf800000 - .long 0x3dc4a143 - .long 0xbedae880 - .long 0xb21e15cc - .long 0xbf800000 - .long 0x3ddaad38 - .long 0xbee63375 - .long 0x31d9c774 - .long 0xbf800000 - .long 0x3df1d344 - .long 0xbef15aea - .long 0x31ff2139 - .long 0xbf800000 - .long 0x3e0507ea - .long 0xbefc5d27 - .long 0x3180eca9 - .long 0xbf800000 - .long 0x3e11af97 - .long 0xbf039c3d - .long 0x325ba002 - .long 0xbf800000 - .long 0x3e1edeb5 - .long 0xbf08f59b - .long 0x32be4b4e - .long 0xbf800000 - .long 0x3e2c933b - .long 0xbf0e39da - .long 0x324a32e7 - .long 0xbf800000 - .long 0x3e3acb0c - .long 0xbf13682a - .long 0xb2cdd12e - .long 0xbf800000 - .long 0x3e4983f7 - .long 0xbf187fc0 - .long 0x31c7a3f3 - .long 0xbf800000 - .long 0x3e58bbb7 - .long 0xbf1d7fd1 - .long 0xb292050c - .long 0xbf800000 - .long 0x3e686ff3 - .long 0xbf226799 - .long 0xb22123bb - .long 0xbf800000 - .long 0x3e789e3f - .long 0xbf273656 - .long 0x32038343 - .long 0xbf800000 - .long 0x3e84a20e - .long 0xbf2beb4a - .long 0x32b73136 - .long 0xbf800000 - .long 0x3e8d2f7d - .long 0xbf3085bb - .long 0x32ae2d32 - .long 0xbf800000 - .long 0x3e95f61a - .long 0xbf3504f3 - .long 0xb24fe77a - .long 0xbf800000 - .long 0xbe4216eb - .long 0xbf396842 - .long 0x32810007 - .long 0xbf000000 - .long 0xbe2fad27 - .long 0xbf3daef9 - .long 0xb19aabec - .long 0xbf000000 - .long 0xbe1cd957 - .long 0xbf41d870 - .long 0xb2bff977 - .long 0xbf000000 - .long 0xbe099e65 - .long 0xbf45e403 - .long 0xb2b15174 - .long 0xbf000000 - .long 0xbdebfe8a - .long 0xbf49d112 - .long 0xb2992640 - .long 0xbf000000 - .long 0xbdc3fdff - .long 0xbf4d9f02 - .long 0xb27e70e8 - .long 0xbf000000 - .long 0xbd9b4153 - .long 0xbf514d3d - .long 0xb00c4f04 - .long 0xbf000000 - .long 0xbd639d9d - .long 0xbf54db31 - .long 0xb290ea1a - .long 0xbf000000 - .long 0xbd0f59aa - .long 0xbf584853 - .long 0x327d5fc0 - .long 0xbf000000 - .long 0xbc670f32 - .long 0xbf5b941a - .long 0xb2232dc8 - .long 0xbf000000 - .long 0x3be8b648 - .long 0xbf5ebe05 - .long 0xb2c6f953 - .long 0xbf000000 - .long 0x3cea5164 - .long 0xbf61c598 - .long 0x32e7f425 - .long 0xbf000000 - .long 0x3d4e645a - .long 0xbf64aa59 - .long 0xb11a08fa - .long 0xbf000000 - .long 0x3d945dff - .long 0xbf676bd8 - .long 0x32bc3389 - .long 0xbf000000 - .long 0x3dc210d8 - .long 0xbf6a09a7 - .long 0x32eb236c - .long 0xbf000000 - .long 0x3df043ab - .long 0xbf6c835e - .long 0xb2f328d4 - .long 0xbf000000 - .long 0x3e0f77ad - .long 0xbf6ed89e - .long 0x329333dc - .long 0xbf000000 - .long 0xbdb1f34f - .long 0xbf710908 - .long 0xb21ed0dd - .long 0xbe800000 - .long 0xbd826b93 - .long 0xbf731447 - .long 0xb2c48e11 - .long 0xbe800000 - .long 0xbd25018c - .long 0xbf74fa0b - .long 0x32939d22 - .long 0xbe800000 - .long 0xbc88e931 - .long 0xbf76ba07 - .long 0xb26d092c - .long 0xbe800000 - .long 0x3be60685 - .long 0xbf7853f8 - .long 0x320db9e5 - .long 0xbe800000 - .long 0x3cfd1f65 - .long 0xbf79c79d - .long 0xb2c64e59 - .long 0xbe800000 - .long 0x3d60e8f8 - .long 0xbf7b14be - .long 0xb2ff75cb - .long 0xbe800000 - .long 0xbd3c4289 - .long 0xbf7c3b28 - .long 0x3231d68b - .long 0xbe000000 - .long 0xbcb2041c - .long 0xbf7d3aac - .long 0x30f75ae9 - .long 0xbe000000 - .long 0x3b29b1a9 - .long 0xbf7e1324 - .long 0x32f1e603 - .long 0xbe000000 - .long 0x3cdd0b28 - .long 0xbf7ec46d - .long 0xb1f44949 - .long 0xbe000000 - .long 0xbc354825 - .long 0xbf7f4e6d - .long 0xb2d01884 - .long 0xbd800000 - .long 0x3c5c1342 - .long 0xbf7fb10f - .long 0xb1de5b5f - .long 0xbd800000 - .long 0x3bdbd541 - .long 0xbf7fec43 - .long 0xb084cd0d - .long 0xbd000000 - .long 0x00000000 - .long 0xbf800000 - .long 0x00000000 - .long 0x00000000 - .long 0xbbdbd541 - .long 0xbf7fec43 - .long 0xb084cd0d - .long 0x3d000000 - .long 0xbc5c1342 - .long 0xbf7fb10f - .long 0xb1de5b5f - .long 0x3d800000 - .long 0x3c354825 - .long 0xbf7f4e6d - .long 0xb2d01884 - .long 0x3d800000 - .long 0xbcdd0b28 - .long 0xbf7ec46d - .long 0xb1f44949 - .long 0x3e000000 - .long 0xbb29b1a9 - .long 0xbf7e1324 - .long 0x32f1e603 - .long 0x3e000000 - .long 0x3cb2041c - .long 0xbf7d3aac - .long 0x30f75ae9 - .long 0x3e000000 - .long 0x3d3c4289 - .long 0xbf7c3b28 - .long 0x3231d68b - .long 0x3e000000 - .long 0xbd60e8f8 - .long 0xbf7b14be - .long 0xb2ff75cb - .long 0x3e800000 - .long 0xbcfd1f65 - .long 0xbf79c79d - .long 0xb2c64e59 - .long 0x3e800000 - .long 0xbbe60685 - .long 0xbf7853f8 - .long 0x320db9e5 - .long 0x3e800000 - .long 0x3c88e931 - .long 0xbf76ba07 - .long 0xb26d092c - .long 0x3e800000 - .long 0x3d25018c - .long 0xbf74fa0b - .long 0x32939d22 - .long 0x3e800000 - .long 0x3d826b93 - .long 0xbf731447 - .long 0xb2c48e11 - .long 0x3e800000 - .long 0x3db1f34f - .long 0xbf710908 - .long 0xb21ed0dd - .long 0x3e800000 - .long 0xbe0f77ad - .long 0xbf6ed89e - .long 0x329333dc - .long 0x3f000000 - .long 0xbdf043ab - .long 0xbf6c835e - .long 0xb2f328d4 - .long 0x3f000000 - .long 0xbdc210d8 - .long 0xbf6a09a7 - .long 0x32eb236c - .long 0x3f000000 - .long 0xbd945dff - .long 0xbf676bd8 - .long 0x32bc3389 - .long 0x3f000000 - .long 0xbd4e645a - .long 0xbf64aa59 - .long 0xb11a08fa - .long 0x3f000000 - .long 0xbcea5164 - .long 0xbf61c598 - .long 0x32e7f425 - .long 0x3f000000 - .long 0xbbe8b648 - .long 0xbf5ebe05 - .long 0xb2c6f953 - .long 0x3f000000 - .long 0x3c670f32 - .long 0xbf5b941a - .long 0xb2232dc8 - .long 0x3f000000 - .long 0x3d0f59aa - .long 0xbf584853 - .long 0x327d5fc0 - .long 0x3f000000 - .long 0x3d639d9d - .long 0xbf54db31 - .long 0xb290ea1a - .long 0x3f000000 - .long 0x3d9b4153 - .long 0xbf514d3d - .long 0xb00c4f04 - .long 0x3f000000 - .long 0x3dc3fdff - .long 0xbf4d9f02 - .long 0xb27e70e8 - .long 0x3f000000 - .long 0x3debfe8a - .long 0xbf49d112 - .long 0xb2992640 - .long 0x3f000000 - .long 0x3e099e65 - .long 0xbf45e403 - .long 0xb2b15174 - .long 0x3f000000 - .long 0x3e1cd957 - .long 0xbf41d870 - .long 0xb2bff977 - .long 0x3f000000 - .long 0x3e2fad27 - .long 0xbf3daef9 - .long 0xb19aabec - .long 0x3f000000 - .long 0x3e4216eb - .long 0xbf396842 - .long 0x32810007 - .long 0x3f000000 - .long 0xbe95f61a - .long 0xbf3504f3 - .long 0xb24fe77a - .long 0x3f800000 - .long 0xbe8d2f7d - .long 0xbf3085bb - .long 0x32ae2d32 - .long 0x3f800000 - .long 0xbe84a20e - .long 0xbf2beb4a - .long 0x32b73136 - .long 0x3f800000 - .long 0xbe789e3f - .long 0xbf273656 - .long 0x32038343 - .long 0x3f800000 - .long 0xbe686ff3 - .long 0xbf226799 - .long 0xb22123bb - .long 0x3f800000 - .long 0xbe58bbb7 - .long 0xbf1d7fd1 - .long 0xb292050c - .long 0x3f800000 - .long 0xbe4983f7 - .long 0xbf187fc0 - .long 0x31c7a3f3 - .long 0x3f800000 - .long 0xbe3acb0c - .long 0xbf13682a - .long 0xb2cdd12e - .long 0x3f800000 - .long 0xbe2c933b - .long 0xbf0e39da - .long 0x324a32e7 - .long 0x3f800000 - .long 0xbe1edeb5 - .long 0xbf08f59b - .long 0x32be4b4e - .long 0x3f800000 - .long 0xbe11af97 - .long 0xbf039c3d - .long 0x325ba002 - .long 0x3f800000 - .long 0xbe0507ea - .long 0xbefc5d27 - .long 0x3180eca9 - .long 0x3f800000 - .long 0xbdf1d344 - .long 0xbef15aea - .long 0x31ff2139 - .long 0x3f800000 - .long 0xbddaad38 - .long 0xbee63375 - .long 0x31d9c774 - .long 0x3f800000 - .long 0xbdc4a143 - .long 0xbedae880 - .long 0xb21e15cc - .long 0x3f800000 - .long 0xbdafb2cc - .long 0xbecf7bca - .long 0xb16a3b63 - .long 0x3f800000 - .long 0xbd9be50c - .long 0xbec3ef15 - .long 0xb1d5d52c - .long 0x3f800000 - .long 0xbd893b12 - .long 0xbeb8442a - .long 0x32705ba6 - .long 0x3f800000 - .long 0xbd6f6f7e - .long 0xbeac7cd4 - .long 0x32254e02 - .long 0x3f800000 - .long 0xbd4ebb8a - .long 0xbea09ae5 - .long 0x323e89a0 - .long 0x3f800000 - .long 0xbd305f55 - .long 0xbe94a031 - .long 0xb26d59f0 - .long 0x3f800000 - .long 0xbd145f8c - .long 0xbe888e93 - .long 0xb12c7d9e - .long 0x3f800000 - .long 0xbcf58104 - .long 0xbe78cfcc - .long 0x311bd41d - .long 0x3f800000 - .long 0xbcc70c54 - .long 0xbe605c13 - .long 0xb1a7e4f6 - .long 0x3f800000 - .long 0xbc9d6830 - .long 0xbe47c5c2 - .long 0x30e5967d - .long 0x3f800000 - .long 0xbc71360b - .long 0xbe2f10a2 - .long 0xb11167f9 - .long 0x3f800000 - .long 0xbc315502 - .long 0xbe164083 - .long 0xb1e8e614 - .long 0x3f800000 - .long 0xbbf66e3c - .long 0xbdfab273 - .long 0x311568cf - .long 0x3f800000 - .long 0xbb9dc971 - .long 0xbdc8bd36 - .long 0x307592f5 - .long 0x3f800000 - .long 0xbb319298 - .long 0xbd96a905 - .long 0x31531e61 - .long 0x3f800000 - .long 0xba9de1c8 - .long 0xbd48fb30 - .long 0x30ef227f - .long 0x3f800000 - .long 0xb99de7df - .long 0xbcc90ab0 - .long 0x3005c998 - .long 0x3f800000 - -/* General purpose constants: - absolute value mask */ -float_vector __sAbsMask 0x7fffffff - -/* threshold for out-of-range values */ -float_vector __sRangeReductionVal 0x461c4000 - -/* +INF */ -float_vector __sRangeVal 0x7f800000 - -/* High Accuracy version polynomial coefficients: - S1 = -1.66666666664728165763e-01 */ -float_vector __sS1 0xbe2aaaab - -/* S2 = 8.33329173045453069014e-03 */ -float_vector __sS2 0x3c08885c - -/* C1 = -5.00000000000000000000e-01 */ -float_vector __sC1 0xbf000000 - -/* C2 = 4.16638942914469202550e-02 */ -float_vector __sC2 0x3d2aaa7c - -/* high accuracy table index mask */ -float_vector __iIndexMask 0x000000ff - -/* 2^(k-1) */ -float_vector __i2pK_1 0x00000040 - -/* sign field mask */ -float_vector __sSignMask 0x80000000 - -/* Range reduction PI-based constants: - PI high part */ -float_vector __sPI1 0x40490000 - -/* PI mid part 1 */ -float_vector __sPI2 0x3a7da000 - -/* PI mid part 2 */ -float_vector __sPI3 0x34222000 - -/* PI low part */ -float_vector __sPI4 0x2cb4611a - -/* Range reduction PI-based constants if FMA available: - PI high part (when FMA available) */ -float_vector __sPI1_FMA 0x40490fdb - -/* PI mid part (when FMA available) */ -float_vector __sPI2_FMA 0xb3bbbd2e - -/* PI low part (when FMA available) */ -float_vector __sPI3_FMA 0xa7772ced - -/* Polynomial coefficients: */ -float_vector __sA3 0xbe2aaaa6 -float_vector __sA5 0x3c08876a -float_vector __sA7 0xb94fb7ff -float_vector __sA9 0x362edef8 - -/* Polynomial coefficients (when hardware FMA available) */ -float_vector __sA5_FMA 0x3c088768 -float_vector __sA7_FMA 0xb94fb6cf -float_vector __sA9_FMA 0x362ec335 - -/* 1/PI */ -float_vector __sInvPI 0x3ea2f983 - -/* right-shifter constant */ -float_vector __sRShifter 0x4b400000 - -/* PI/2 */ -float_vector __sHalfPI 0x3fc90fdb - -/* 1/2 */ -float_vector __sOneHalf 0x3f000000 - .type __svml_ssincos_data,@object - .size __svml_ssincos_data,.-__svml_ssincos_data diff --git a/sysdeps/x86_64/fpu/svml_s_sincosf_data.h b/sysdeps/x86_64/fpu/svml_s_sincosf_data.h deleted file mode 100644 index 432511776a..0000000000 --- a/sysdeps/x86_64/fpu/svml_s_sincosf_data.h +++ /dev/null @@ -1,61 +0,0 @@ -/* Offsets for data table for function sincosf. - Copyright (C) 2014-2015 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef S_SINCOSF_DATA_H -#define S_SINCOSF_DATA_H - -#define __dT 0 -#define __sAbsMask 4096 -#define __sRangeReductionVal 4160 -#define __sRangeVal 4224 -#define __sS1 4288 -#define __sS2 4352 -#define __sC1 4416 -#define __sC2 4480 -#define __iIndexMask 4544 -#define __i2pK_1 4608 -#define __sSignMask 4672 -#define __sPI1 4736 -#define __sPI2 4800 -#define __sPI3 4864 -#define __sPI4 4928 -#define __sPI1_FMA 4992 -#define __sPI2_FMA 5056 -#define __sPI3_FMA 5120 -#define __sA3 5184 -#define __sA5 5248 -#define __sA7 5312 -#define __sA9 5376 -#define __sA5_FMA 5440 -#define __sA7_FMA 5504 -#define __sA9_FMA 5568 -#define __sInvPI 5632 -#define __sRShifter 5696 -#define __sHalfPI 5760 -#define __sOneHalf 5824 - -.macro float_vector offset value -.if .-__svml_ssincos_data != \offset -.err -.endif -.rept 16 -.long \value -.endr -.endm - -#endif diff --git a/sysdeps/x86_64/fpu/svml_s_sinf_data.S b/sysdeps/x86_64/fpu/svml_s_sinf_data.S deleted file mode 100644 index 3a25e0b1eb..0000000000 --- a/sysdeps/x86_64/fpu/svml_s_sinf_data.S +++ /dev/null @@ -1,1118 +0,0 @@ -/* Data for function sinf. - Copyright (C) 2014-2015 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include "svml_s_sinf_data.h" - - .section .rodata, "a" - .align 64 - -/* Data table for vector implementations of function sinf. - The table may contain polynomial, reduction, lookup coefficients and other macro_names - obtained through different methods of research and experimental work. */ - - .globl __svml_ssin_data -__svml_ssin_data: - -/* Lookup table for high accuracy version (CHL,SHi,SLo,Sigma). */ -.if .-__svml_ssin_data != __dT -.err -.endif - .long 0x00000000 - .long 0x00000000 - .long 0x00000000 - .long 0x3f800000 - .long 0xb99de7df - .long 0x3cc90ab0 - .long 0xb005c998 - .long 0x3f800000 - .long 0xba9de1c8 - .long 0x3d48fb30 - .long 0xb0ef227f - .long 0x3f800000 - .long 0xbb319298 - .long 0x3d96a905 - .long 0xb1531e61 - .long 0x3f800000 - .long 0xbb9dc971 - .long 0x3dc8bd36 - .long 0xb07592f5 - .long 0x3f800000 - .long 0xbbf66e3c - .long 0x3dfab273 - .long 0xb11568cf - .long 0x3f800000 - .long 0xbc315502 - .long 0x3e164083 - .long 0x31e8e614 - .long 0x3f800000 - .long 0xbc71360b - .long 0x3e2f10a2 - .long 0x311167f9 - .long 0x3f800000 - .long 0xbc9d6830 - .long 0x3e47c5c2 - .long 0xb0e5967d - .long 0x3f800000 - .long 0xbcc70c54 - .long 0x3e605c13 - .long 0x31a7e4f6 - .long 0x3f800000 - .long 0xbcf58104 - .long 0x3e78cfcc - .long 0xb11bd41d - .long 0x3f800000 - .long 0xbd145f8c - .long 0x3e888e93 - .long 0x312c7d9e - .long 0x3f800000 - .long 0xbd305f55 - .long 0x3e94a031 - .long 0x326d59f0 - .long 0x3f800000 - .long 0xbd4ebb8a - .long 0x3ea09ae5 - .long 0xb23e89a0 - .long 0x3f800000 - .long 0xbd6f6f7e - .long 0x3eac7cd4 - .long 0xb2254e02 - .long 0x3f800000 - .long 0xbd893b12 - .long 0x3eb8442a - .long 0xb2705ba6 - .long 0x3f800000 - .long 0xbd9be50c - .long 0x3ec3ef15 - .long 0x31d5d52c - .long 0x3f800000 - .long 0xbdafb2cc - .long 0x3ecf7bca - .long 0x316a3b63 - .long 0x3f800000 - .long 0xbdc4a143 - .long 0x3edae880 - .long 0x321e15cc - .long 0x3f800000 - .long 0xbddaad38 - .long 0x3ee63375 - .long 0xb1d9c774 - .long 0x3f800000 - .long 0xbdf1d344 - .long 0x3ef15aea - .long 0xb1ff2139 - .long 0x3f800000 - .long 0xbe0507ea - .long 0x3efc5d27 - .long 0xb180eca9 - .long 0x3f800000 - .long 0xbe11af97 - .long 0x3f039c3d - .long 0xb25ba002 - .long 0x3f800000 - .long 0xbe1edeb5 - .long 0x3f08f59b - .long 0xb2be4b4e - .long 0x3f800000 - .long 0xbe2c933b - .long 0x3f0e39da - .long 0xb24a32e7 - .long 0x3f800000 - .long 0xbe3acb0c - .long 0x3f13682a - .long 0x32cdd12e - .long 0x3f800000 - .long 0xbe4983f7 - .long 0x3f187fc0 - .long 0xb1c7a3f3 - .long 0x3f800000 - .long 0xbe58bbb7 - .long 0x3f1d7fd1 - .long 0x3292050c - .long 0x3f800000 - .long 0xbe686ff3 - .long 0x3f226799 - .long 0x322123bb - .long 0x3f800000 - .long 0xbe789e3f - .long 0x3f273656 - .long 0xb2038343 - .long 0x3f800000 - .long 0xbe84a20e - .long 0x3f2beb4a - .long 0xb2b73136 - .long 0x3f800000 - .long 0xbe8d2f7d - .long 0x3f3085bb - .long 0xb2ae2d32 - .long 0x3f800000 - .long 0xbe95f61a - .long 0x3f3504f3 - .long 0x324fe77a - .long 0x3f800000 - .long 0x3e4216eb - .long 0x3f396842 - .long 0xb2810007 - .long 0x3f000000 - .long 0x3e2fad27 - .long 0x3f3daef9 - .long 0x319aabec - .long 0x3f000000 - .long 0x3e1cd957 - .long 0x3f41d870 - .long 0x32bff977 - .long 0x3f000000 - .long 0x3e099e65 - .long 0x3f45e403 - .long 0x32b15174 - .long 0x3f000000 - .long 0x3debfe8a - .long 0x3f49d112 - .long 0x32992640 - .long 0x3f000000 - .long 0x3dc3fdff - .long 0x3f4d9f02 - .long 0x327e70e8 - .long 0x3f000000 - .long 0x3d9b4153 - .long 0x3f514d3d - .long 0x300c4f04 - .long 0x3f000000 - .long 0x3d639d9d - .long 0x3f54db31 - .long 0x3290ea1a - .long 0x3f000000 - .long 0x3d0f59aa - .long 0x3f584853 - .long 0xb27d5fc0 - .long 0x3f000000 - .long 0x3c670f32 - .long 0x3f5b941a - .long 0x32232dc8 - .long 0x3f000000 - .long 0xbbe8b648 - .long 0x3f5ebe05 - .long 0x32c6f953 - .long 0x3f000000 - .long 0xbcea5164 - .long 0x3f61c598 - .long 0xb2e7f425 - .long 0x3f000000 - .long 0xbd4e645a - .long 0x3f64aa59 - .long 0x311a08fa - .long 0x3f000000 - .long 0xbd945dff - .long 0x3f676bd8 - .long 0xb2bc3389 - .long 0x3f000000 - .long 0xbdc210d8 - .long 0x3f6a09a7 - .long 0xb2eb236c - .long 0x3f000000 - .long 0xbdf043ab - .long 0x3f6c835e - .long 0x32f328d4 - .long 0x3f000000 - .long 0xbe0f77ad - .long 0x3f6ed89e - .long 0xb29333dc - .long 0x3f000000 - .long 0x3db1f34f - .long 0x3f710908 - .long 0x321ed0dd - .long 0x3e800000 - .long 0x3d826b93 - .long 0x3f731447 - .long 0x32c48e11 - .long 0x3e800000 - .long 0x3d25018c - .long 0x3f74fa0b - .long 0xb2939d22 - .long 0x3e800000 - .long 0x3c88e931 - .long 0x3f76ba07 - .long 0x326d092c - .long 0x3e800000 - .long 0xbbe60685 - .long 0x3f7853f8 - .long 0xb20db9e5 - .long 0x3e800000 - .long 0xbcfd1f65 - .long 0x3f79c79d - .long 0x32c64e59 - .long 0x3e800000 - .long 0xbd60e8f8 - .long 0x3f7b14be - .long 0x32ff75cb - .long 0x3e800000 - .long 0x3d3c4289 - .long 0x3f7c3b28 - .long 0xb231d68b - .long 0x3e000000 - .long 0x3cb2041c - .long 0x3f7d3aac - .long 0xb0f75ae9 - .long 0x3e000000 - .long 0xbb29b1a9 - .long 0x3f7e1324 - .long 0xb2f1e603 - .long 0x3e000000 - .long 0xbcdd0b28 - .long 0x3f7ec46d - .long 0x31f44949 - .long 0x3e000000 - .long 0x3c354825 - .long 0x3f7f4e6d - .long 0x32d01884 - .long 0x3d800000 - .long 0xbc5c1342 - .long 0x3f7fb10f - .long 0x31de5b5f - .long 0x3d800000 - .long 0xbbdbd541 - .long 0x3f7fec43 - .long 0x3084cd0d - .long 0x3d000000 - .long 0x00000000 - .long 0x3f800000 - .long 0x00000000 - .long 0x00000000 - .long 0x3bdbd541 - .long 0x3f7fec43 - .long 0x3084cd0d - .long 0xbd000000 - .long 0x3c5c1342 - .long 0x3f7fb10f - .long 0x31de5b5f - .long 0xbd800000 - .long 0xbc354825 - .long 0x3f7f4e6d - .long 0x32d01884 - .long 0xbd800000 - .long 0x3cdd0b28 - .long 0x3f7ec46d - .long 0x31f44949 - .long 0xbe000000 - .long 0x3b29b1a9 - .long 0x3f7e1324 - .long 0xb2f1e603 - .long 0xbe000000 - .long 0xbcb2041c - .long 0x3f7d3aac - .long 0xb0f75ae9 - .long 0xbe000000 - .long 0xbd3c4289 - .long 0x3f7c3b28 - .long 0xb231d68b - .long 0xbe000000 - .long 0x3d60e8f8 - .long 0x3f7b14be - .long 0x32ff75cb - .long 0xbe800000 - .long 0x3cfd1f65 - .long 0x3f79c79d - .long 0x32c64e59 - .long 0xbe800000 - .long 0x3be60685 - .long 0x3f7853f8 - .long 0xb20db9e5 - .long 0xbe800000 - .long 0xbc88e931 - .long 0x3f76ba07 - .long 0x326d092c - .long 0xbe800000 - .long 0xbd25018c - .long 0x3f74fa0b - .long 0xb2939d22 - .long 0xbe800000 - .long 0xbd826b93 - .long 0x3f731447 - .long 0x32c48e11 - .long 0xbe800000 - .long 0xbdb1f34f - .long 0x3f710908 - .long 0x321ed0dd - .long 0xbe800000 - .long 0x3e0f77ad - .long 0x3f6ed89e - .long 0xb29333dc - .long 0xbf000000 - .long 0x3df043ab - .long 0x3f6c835e - .long 0x32f328d4 - .long 0xbf000000 - .long 0x3dc210d8 - .long 0x3f6a09a7 - .long 0xb2eb236c - .long 0xbf000000 - .long 0x3d945dff - .long 0x3f676bd8 - .long 0xb2bc3389 - .long 0xbf000000 - .long 0x3d4e645a - .long 0x3f64aa59 - .long 0x311a08fa - .long 0xbf000000 - .long 0x3cea5164 - .long 0x3f61c598 - .long 0xb2e7f425 - .long 0xbf000000 - .long 0x3be8b648 - .long 0x3f5ebe05 - .long 0x32c6f953 - .long 0xbf000000 - .long 0xbc670f32 - .long 0x3f5b941a - .long 0x32232dc8 - .long 0xbf000000 - .long 0xbd0f59aa - .long 0x3f584853 - .long 0xb27d5fc0 - .long 0xbf000000 - .long 0xbd639d9d - .long 0x3f54db31 - .long 0x3290ea1a - .long 0xbf000000 - .long 0xbd9b4153 - .long 0x3f514d3d - .long 0x300c4f04 - .long 0xbf000000 - .long 0xbdc3fdff - .long 0x3f4d9f02 - .long 0x327e70e8 - .long 0xbf000000 - .long 0xbdebfe8a - .long 0x3f49d112 - .long 0x32992640 - .long 0xbf000000 - .long 0xbe099e65 - .long 0x3f45e403 - .long 0x32b15174 - .long 0xbf000000 - .long 0xbe1cd957 - .long 0x3f41d870 - .long 0x32bff977 - .long 0xbf000000 - .long 0xbe2fad27 - .long 0x3f3daef9 - .long 0x319aabec - .long 0xbf000000 - .long 0xbe4216eb - .long 0x3f396842 - .long 0xb2810007 - .long 0xbf000000 - .long 0x3e95f61a - .long 0x3f3504f3 - .long 0x324fe77a - .long 0xbf800000 - .long 0x3e8d2f7d - .long 0x3f3085bb - .long 0xb2ae2d32 - .long 0xbf800000 - .long 0x3e84a20e - .long 0x3f2beb4a - .long 0xb2b73136 - .long 0xbf800000 - .long 0x3e789e3f - .long 0x3f273656 - .long 0xb2038343 - .long 0xbf800000 - .long 0x3e686ff3 - .long 0x3f226799 - .long 0x322123bb - .long 0xbf800000 - .long 0x3e58bbb7 - .long 0x3f1d7fd1 - .long 0x3292050c - .long 0xbf800000 - .long 0x3e4983f7 - .long 0x3f187fc0 - .long 0xb1c7a3f3 - .long 0xbf800000 - .long 0x3e3acb0c - .long 0x3f13682a - .long 0x32cdd12e - .long 0xbf800000 - .long 0x3e2c933b - .long 0x3f0e39da - .long 0xb24a32e7 - .long 0xbf800000 - .long 0x3e1edeb5 - .long 0x3f08f59b - .long 0xb2be4b4e - .long 0xbf800000 - .long 0x3e11af97 - .long 0x3f039c3d - .long 0xb25ba002 - .long 0xbf800000 - .long 0x3e0507ea - .long 0x3efc5d27 - .long 0xb180eca9 - .long 0xbf800000 - .long 0x3df1d344 - .long 0x3ef15aea - .long 0xb1ff2139 - .long 0xbf800000 - .long 0x3ddaad38 - .long 0x3ee63375 - .long 0xb1d9c774 - .long 0xbf800000 - .long 0x3dc4a143 - .long 0x3edae880 - .long 0x321e15cc - .long 0xbf800000 - .long 0x3dafb2cc - .long 0x3ecf7bca - .long 0x316a3b63 - .long 0xbf800000 - .long 0x3d9be50c - .long 0x3ec3ef15 - .long 0x31d5d52c - .long 0xbf800000 - .long 0x3d893b12 - .long 0x3eb8442a - .long 0xb2705ba6 - .long 0xbf800000 - .long 0x3d6f6f7e - .long 0x3eac7cd4 - .long 0xb2254e02 - .long 0xbf800000 - .long 0x3d4ebb8a - .long 0x3ea09ae5 - .long 0xb23e89a0 - .long 0xbf800000 - .long 0x3d305f55 - .long 0x3e94a031 - .long 0x326d59f0 - .long 0xbf800000 - .long 0x3d145f8c - .long 0x3e888e93 - .long 0x312c7d9e - .long 0xbf800000 - .long 0x3cf58104 - .long 0x3e78cfcc - .long 0xb11bd41d - .long 0xbf800000 - .long 0x3cc70c54 - .long 0x3e605c13 - .long 0x31a7e4f6 - .long 0xbf800000 - .long 0x3c9d6830 - .long 0x3e47c5c2 - .long 0xb0e5967d - .long 0xbf800000 - .long 0x3c71360b - .long 0x3e2f10a2 - .long 0x311167f9 - .long 0xbf800000 - .long 0x3c315502 - .long 0x3e164083 - .long 0x31e8e614 - .long 0xbf800000 - .long 0x3bf66e3c - .long 0x3dfab273 - .long 0xb11568cf - .long 0xbf800000 - .long 0x3b9dc971 - .long 0x3dc8bd36 - .long 0xb07592f5 - .long 0xbf800000 - .long 0x3b319298 - .long 0x3d96a905 - .long 0xb1531e61 - .long 0xbf800000 - .long 0x3a9de1c8 - .long 0x3d48fb30 - .long 0xb0ef227f - .long 0xbf800000 - .long 0x399de7df - .long 0x3cc90ab0 - .long 0xb005c998 - .long 0xbf800000 - .long 0x00000000 - .long 0x00000000 - .long 0x00000000 - .long 0xbf800000 - .long 0x399de7df - .long 0xbcc90ab0 - .long 0x3005c998 - .long 0xbf800000 - .long 0x3a9de1c8 - .long 0xbd48fb30 - .long 0x30ef227f - .long 0xbf800000 - .long 0x3b319298 - .long 0xbd96a905 - .long 0x31531e61 - .long 0xbf800000 - .long 0x3b9dc971 - .long 0xbdc8bd36 - .long 0x307592f5 - .long 0xbf800000 - .long 0x3bf66e3c - .long 0xbdfab273 - .long 0x311568cf - .long 0xbf800000 - .long 0x3c315502 - .long 0xbe164083 - .long 0xb1e8e614 - .long 0xbf800000 - .long 0x3c71360b - .long 0xbe2f10a2 - .long 0xb11167f9 - .long 0xbf800000 - .long 0x3c9d6830 - .long 0xbe47c5c2 - .long 0x30e5967d - .long 0xbf800000 - .long 0x3cc70c54 - .long 0xbe605c13 - .long 0xb1a7e4f6 - .long 0xbf800000 - .long 0x3cf58104 - .long 0xbe78cfcc - .long 0x311bd41d - .long 0xbf800000 - .long 0x3d145f8c - .long 0xbe888e93 - .long 0xb12c7d9e - .long 0xbf800000 - .long 0x3d305f55 - .long 0xbe94a031 - .long 0xb26d59f0 - .long 0xbf800000 - .long 0x3d4ebb8a - .long 0xbea09ae5 - .long 0x323e89a0 - .long 0xbf800000 - .long 0x3d6f6f7e - .long 0xbeac7cd4 - .long 0x32254e02 - .long 0xbf800000 - .long 0x3d893b12 - .long 0xbeb8442a - .long 0x32705ba6 - .long 0xbf800000 - .long 0x3d9be50c - .long 0xbec3ef15 - .long 0xb1d5d52c - .long 0xbf800000 - .long 0x3dafb2cc - .long 0xbecf7bca - .long 0xb16a3b63 - .long 0xbf800000 - .long 0x3dc4a143 - .long 0xbedae880 - .long 0xb21e15cc - .long 0xbf800000 - .long 0x3ddaad38 - .long 0xbee63375 - .long 0x31d9c774 - .long 0xbf800000 - .long 0x3df1d344 - .long 0xbef15aea - .long 0x31ff2139 - .long 0xbf800000 - .long 0x3e0507ea - .long 0xbefc5d27 - .long 0x3180eca9 - .long 0xbf800000 - .long 0x3e11af97 - .long 0xbf039c3d - .long 0x325ba002 - .long 0xbf800000 - .long 0x3e1edeb5 - .long 0xbf08f59b - .long 0x32be4b4e - .long 0xbf800000 - .long 0x3e2c933b - .long 0xbf0e39da - .long 0x324a32e7 - .long 0xbf800000 - .long 0x3e3acb0c - .long 0xbf13682a - .long 0xb2cdd12e - .long 0xbf800000 - .long 0x3e4983f7 - .long 0xbf187fc0 - .long 0x31c7a3f3 - .long 0xbf800000 - .long 0x3e58bbb7 - .long 0xbf1d7fd1 - .long 0xb292050c - .long 0xbf800000 - .long 0x3e686ff3 - .long 0xbf226799 - .long 0xb22123bb - .long 0xbf800000 - .long 0x3e789e3f - .long 0xbf273656 - .long 0x32038343 - .long 0xbf800000 - .long 0x3e84a20e - .long 0xbf2beb4a - .long 0x32b73136 - .long 0xbf800000 - .long 0x3e8d2f7d - .long 0xbf3085bb - .long 0x32ae2d32 - .long 0xbf800000 - .long 0x3e95f61a - .long 0xbf3504f3 - .long 0xb24fe77a - .long 0xbf800000 - .long 0xbe4216eb - .long 0xbf396842 - .long 0x32810007 - .long 0xbf000000 - .long 0xbe2fad27 - .long 0xbf3daef9 - .long 0xb19aabec - .long 0xbf000000 - .long 0xbe1cd957 - .long 0xbf41d870 - .long 0xb2bff977 - .long 0xbf000000 - .long 0xbe099e65 - .long 0xbf45e403 - .long 0xb2b15174 - .long 0xbf000000 - .long 0xbdebfe8a - .long 0xbf49d112 - .long 0xb2992640 - .long 0xbf000000 - .long 0xbdc3fdff - .long 0xbf4d9f02 - .long 0xb27e70e8 - .long 0xbf000000 - .long 0xbd9b4153 - .long 0xbf514d3d - .long 0xb00c4f04 - .long 0xbf000000 - .long 0xbd639d9d - .long 0xbf54db31 - .long 0xb290ea1a - .long 0xbf000000 - .long 0xbd0f59aa - .long 0xbf584853 - .long 0x327d5fc0 - .long 0xbf000000 - .long 0xbc670f32 - .long 0xbf5b941a - .long 0xb2232dc8 - .long 0xbf000000 - .long 0x3be8b648 - .long 0xbf5ebe05 - .long 0xb2c6f953 - .long 0xbf000000 - .long 0x3cea5164 - .long 0xbf61c598 - .long 0x32e7f425 - .long 0xbf000000 - .long 0x3d4e645a - .long 0xbf64aa59 - .long 0xb11a08fa - .long 0xbf000000 - .long 0x3d945dff - .long 0xbf676bd8 - .long 0x32bc3389 - .long 0xbf000000 - .long 0x3dc210d8 - .long 0xbf6a09a7 - .long 0x32eb236c - .long 0xbf000000 - .long 0x3df043ab - .long 0xbf6c835e - .long 0xb2f328d4 - .long 0xbf000000 - .long 0x3e0f77ad - .long 0xbf6ed89e - .long 0x329333dc - .long 0xbf000000 - .long 0xbdb1f34f - .long 0xbf710908 - .long 0xb21ed0dd - .long 0xbe800000 - .long 0xbd826b93 - .long 0xbf731447 - .long 0xb2c48e11 - .long 0xbe800000 - .long 0xbd25018c - .long 0xbf74fa0b - .long 0x32939d22 - .long 0xbe800000 - .long 0xbc88e931 - .long 0xbf76ba07 - .long 0xb26d092c - .long 0xbe800000 - .long 0x3be60685 - .long 0xbf7853f8 - .long 0x320db9e5 - .long 0xbe800000 - .long 0x3cfd1f65 - .long 0xbf79c79d - .long 0xb2c64e59 - .long 0xbe800000 - .long 0x3d60e8f8 - .long 0xbf7b14be - .long 0xb2ff75cb - .long 0xbe800000 - .long 0xbd3c4289 - .long 0xbf7c3b28 - .long 0x3231d68b - .long 0xbe000000 - .long 0xbcb2041c - .long 0xbf7d3aac - .long 0x30f75ae9 - .long 0xbe000000 - .long 0x3b29b1a9 - .long 0xbf7e1324 - .long 0x32f1e603 - .long 0xbe000000 - .long 0x3cdd0b28 - .long 0xbf7ec46d - .long 0xb1f44949 - .long 0xbe000000 - .long 0xbc354825 - .long 0xbf7f4e6d - .long 0xb2d01884 - .long 0xbd800000 - .long 0x3c5c1342 - .long 0xbf7fb10f - .long 0xb1de5b5f - .long 0xbd800000 - .long 0x3bdbd541 - .long 0xbf7fec43 - .long 0xb084cd0d - .long 0xbd000000 - .long 0x00000000 - .long 0xbf800000 - .long 0x00000000 - .long 0x00000000 - .long 0xbbdbd541 - .long 0xbf7fec43 - .long 0xb084cd0d - .long 0x3d000000 - .long 0xbc5c1342 - .long 0xbf7fb10f - .long 0xb1de5b5f - .long 0x3d800000 - .long 0x3c354825 - .long 0xbf7f4e6d - .long 0xb2d01884 - .long 0x3d800000 - .long 0xbcdd0b28 - .long 0xbf7ec46d - .long 0xb1f44949 - .long 0x3e000000 - .long 0xbb29b1a9 - .long 0xbf7e1324 - .long 0x32f1e603 - .long 0x3e000000 - .long 0x3cb2041c - .long 0xbf7d3aac - .long 0x30f75ae9 - .long 0x3e000000 - .long 0x3d3c4289 - .long 0xbf7c3b28 - .long 0x3231d68b - .long 0x3e000000 - .long 0xbd60e8f8 - .long 0xbf7b14be - .long 0xb2ff75cb - .long 0x3e800000 - .long 0xbcfd1f65 - .long 0xbf79c79d - .long 0xb2c64e59 - .long 0x3e800000 - .long 0xbbe60685 - .long 0xbf7853f8 - .long 0x320db9e5 - .long 0x3e800000 - .long 0x3c88e931 - .long 0xbf76ba07 - .long 0xb26d092c - .long 0x3e800000 - .long 0x3d25018c - .long 0xbf74fa0b - .long 0x32939d22 - .long 0x3e800000 - .long 0x3d826b93 - .long 0xbf731447 - .long 0xb2c48e11 - .long 0x3e800000 - .long 0x3db1f34f - .long 0xbf710908 - .long 0xb21ed0dd - .long 0x3e800000 - .long 0xbe0f77ad - .long 0xbf6ed89e - .long 0x329333dc - .long 0x3f000000 - .long 0xbdf043ab - .long 0xbf6c835e - .long 0xb2f328d4 - .long 0x3f000000 - .long 0xbdc210d8 - .long 0xbf6a09a7 - .long 0x32eb236c - .long 0x3f000000 - .long 0xbd945dff - .long 0xbf676bd8 - .long 0x32bc3389 - .long 0x3f000000 - .long 0xbd4e645a - .long 0xbf64aa59 - .long 0xb11a08fa - .long 0x3f000000 - .long 0xbcea5164 - .long 0xbf61c598 - .long 0x32e7f425 - .long 0x3f000000 - .long 0xbbe8b648 - .long 0xbf5ebe05 - .long 0xb2c6f953 - .long 0x3f000000 - .long 0x3c670f32 - .long 0xbf5b941a - .long 0xb2232dc8 - .long 0x3f000000 - .long 0x3d0f59aa - .long 0xbf584853 - .long 0x327d5fc0 - .long 0x3f000000 - .long 0x3d639d9d - .long 0xbf54db31 - .long 0xb290ea1a - .long 0x3f000000 - .long 0x3d9b4153 - .long 0xbf514d3d - .long 0xb00c4f04 - .long 0x3f000000 - .long 0x3dc3fdff - .long 0xbf4d9f02 - .long 0xb27e70e8 - .long 0x3f000000 - .long 0x3debfe8a - .long 0xbf49d112 - .long 0xb2992640 - .long 0x3f000000 - .long 0x3e099e65 - .long 0xbf45e403 - .long 0xb2b15174 - .long 0x3f000000 - .long 0x3e1cd957 - .long 0xbf41d870 - .long 0xb2bff977 - .long 0x3f000000 - .long 0x3e2fad27 - .long 0xbf3daef9 - .long 0xb19aabec - .long 0x3f000000 - .long 0x3e4216eb - .long 0xbf396842 - .long 0x32810007 - .long 0x3f000000 - .long 0xbe95f61a - .long 0xbf3504f3 - .long 0xb24fe77a - .long 0x3f800000 - .long 0xbe8d2f7d - .long 0xbf3085bb - .long 0x32ae2d32 - .long 0x3f800000 - .long 0xbe84a20e - .long 0xbf2beb4a - .long 0x32b73136 - .long 0x3f800000 - .long 0xbe789e3f - .long 0xbf273656 - .long 0x32038343 - .long 0x3f800000 - .long 0xbe686ff3 - .long 0xbf226799 - .long 0xb22123bb - .long 0x3f800000 - .long 0xbe58bbb7 - .long 0xbf1d7fd1 - .long 0xb292050c - .long 0x3f800000 - .long 0xbe4983f7 - .long 0xbf187fc0 - .long 0x31c7a3f3 - .long 0x3f800000 - .long 0xbe3acb0c - .long 0xbf13682a - .long 0xb2cdd12e - .long 0x3f800000 - .long 0xbe2c933b - .long 0xbf0e39da - .long 0x324a32e7 - .long 0x3f800000 - .long 0xbe1edeb5 - .long 0xbf08f59b - .long 0x32be4b4e - .long 0x3f800000 - .long 0xbe11af97 - .long 0xbf039c3d - .long 0x325ba002 - .long 0x3f800000 - .long 0xbe0507ea - .long 0xbefc5d27 - .long 0x3180eca9 - .long 0x3f800000 - .long 0xbdf1d344 - .long 0xbef15aea - .long 0x31ff2139 - .long 0x3f800000 - .long 0xbddaad38 - .long 0xbee63375 - .long 0x31d9c774 - .long 0x3f800000 - .long 0xbdc4a143 - .long 0xbedae880 - .long 0xb21e15cc - .long 0x3f800000 - .long 0xbdafb2cc - .long 0xbecf7bca - .long 0xb16a3b63 - .long 0x3f800000 - .long 0xbd9be50c - .long 0xbec3ef15 - .long 0xb1d5d52c - .long 0x3f800000 - .long 0xbd893b12 - .long 0xbeb8442a - .long 0x32705ba6 - .long 0x3f800000 - .long 0xbd6f6f7e - .long 0xbeac7cd4 - .long 0x32254e02 - .long 0x3f800000 - .long 0xbd4ebb8a - .long 0xbea09ae5 - .long 0x323e89a0 - .long 0x3f800000 - .long 0xbd305f55 - .long 0xbe94a031 - .long 0xb26d59f0 - .long 0x3f800000 - .long 0xbd145f8c - .long 0xbe888e93 - .long 0xb12c7d9e - .long 0x3f800000 - .long 0xbcf58104 - .long 0xbe78cfcc - .long 0x311bd41d - .long 0x3f800000 - .long 0xbcc70c54 - .long 0xbe605c13 - .long 0xb1a7e4f6 - .long 0x3f800000 - .long 0xbc9d6830 - .long 0xbe47c5c2 - .long 0x30e5967d - .long 0x3f800000 - .long 0xbc71360b - .long 0xbe2f10a2 - .long 0xb11167f9 - .long 0x3f800000 - .long 0xbc315502 - .long 0xbe164083 - .long 0xb1e8e614 - .long 0x3f800000 - .long 0xbbf66e3c - .long 0xbdfab273 - .long 0x311568cf - .long 0x3f800000 - .long 0xbb9dc971 - .long 0xbdc8bd36 - .long 0x307592f5 - .long 0x3f800000 - .long 0xbb319298 - .long 0xbd96a905 - .long 0x31531e61 - .long 0x3f800000 - .long 0xba9de1c8 - .long 0xbd48fb30 - .long 0x30ef227f - .long 0x3f800000 - .long 0xb99de7df - .long 0xbcc90ab0 - .long 0x3005c998 - .long 0x3f800000 - -/* General purpose constants: - * absolute value mask */ -float_vector __sAbsMask 0x7fffffff - -/* threshold for out-of-range values */ -float_vector __sRangeReductionVal 0x461c4000 - -/* +INF */ -float_vector __sRangeVal 0x7f800000 - -/* High Accuracy version polynomial coefficients: - * S1 = -1.66666666664728165763e-01 */ -float_vector __sS1 0xbe2aaaab - -/* S2 = 8.33329173045453069014e-03 */ -float_vector __sS2 0x3c08885c - -/* C1 = -5.00000000000000000000e-01 */ -float_vector __sC1 0xbf000000 - -/* C2 = 4.16638942914469202550e-02 */ -float_vector __sC2 0x3d2aaa7c - -/* Range reduction PI-based constants: - * PI high part */ -float_vector __sPI1 0x40490000 - -/* PI mid part 1 */ -float_vector __sPI2 0x3a7da000 - -/* PI mid part 2 */ -float_vector __sPI3 0x34222000 - -/* PI low part */ -float_vector __sPI4 0x2cb4611a - -/* Range reduction PI-based constants if FMA available: - * PI high part (when FMA available) */ -float_vector __sPI1_FMA 0x40490fdb - -/* PI mid part (when FMA available) */ -float_vector __sPI2_FMA 0xb3bbbd2e - -/* PI low part (when FMA available) */ -float_vector __sPI3_FMA 0xa7772ced - -/* Polynomial coefficients: */ -float_vector __sA3 0xbe2aaaa6 -float_vector __sA5 0x3c08876a -float_vector __sA7 0xb94fb7ff -float_vector __sA9 0x362edef8 - -/* 1/PI */ -float_vector __sInvPI 0x3ea2f983 - -/* right-shifter constant */ -float_vector __sRShifter 0x4b400000 - .type __svml_ssin_data,@object - .size __svml_ssin_data,.-__svml_ssin_data diff --git a/sysdeps/x86_64/fpu/svml_s_sinf_data.h b/sysdeps/x86_64/fpu/svml_s_sinf_data.h deleted file mode 100644 index d9100744d7..0000000000 --- a/sysdeps/x86_64/fpu/svml_s_sinf_data.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Offsets for data table for vector sinf. - Copyright (C) 2014-2015 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef S_SINF_DATA_H -#define S_SINF_DATA_H - -/* Offsets for data table */ -#define __dT 0 -#define __sAbsMask 4096 -#define __sRangeReductionVal 4160 -#define __sRangeVal 4224 -#define __sS1 4288 -#define __sS2 4352 -#define __sC1 4416 -#define __sC2 4480 -#define __sPI1 4544 -#define __sPI2 4608 -#define __sPI3 4672 -#define __sPI4 4736 -#define __sPI1_FMA 4800 -#define __sPI2_FMA 4864 -#define __sPI3_FMA 4928 -#define __sA3 4992 -#define __sA5 5056 -#define __sA7 5120 -#define __sA9 5184 -#define __sInvPI 5248 -#define __sRShifter 5312 - -.macro float_vector offset value -.if .-__svml_ssin_data != \offset -.err -.endif -.rept 16 -.long \value -.endr -.endm - -#endif diff --git a/sysdeps/x86_64/fpu/svml_s_trig_data.S b/sysdeps/x86_64/fpu/svml_s_trig_data.S new file mode 100644 index 0000000000..07fc7d272d --- /dev/null +++ b/sysdeps/x86_64/fpu/svml_s_trig_data.S @@ -0,0 +1,111 @@ +/* Data for function cosf. + Copyright (C) 2014-2015 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#include "svml_s_trig_data.h" + + .section .rodata, "a" + .align 64 + +/* Data table for vector implementations of function cosf. + The table may contain polynomial, reduction, lookup coefficients + and other macro_names obtained through different methods + of research and experimental work. */ + + .globl __svml_s_trig_data +__svml_s_trig_data: + +/* General purpose constants: + absolute value mask */ +float_vector __sAbsMask 0x7fffffff + +/* threshold for out-of-range values */ +float_vector __sRangeReductionVal 0x461c4000 + +/* +INF */ +float_vector __sRangeVal 0x7f800000 + +/* High Accuracy version polynomial coefficients: + S1 = -1.66666666664728165763e-01 */ +float_vector __sS1 0xbe2aaaab + +/* S2 = 8.33329173045453069014e-03 */ +float_vector __sS2 0x3c08885c + +/* C1 = -5.00000000000000000000e-01 */ +float_vector __sC1 0xbf000000 + +/* C2 = 4.16638942914469202550e-02 */ +float_vector __sC2 0x3d2aaa7c + +/* Range reduction PI-based constants: + PI high part */ +float_vector __sPI1 0x40490000 + +/* PI mid part 1 */ +float_vector __sPI2 0x3a7da000 + +/* PI mid part 2 */ +float_vector __sPI3 0x34222000 + +/* PI low part */ +float_vector __sPI4 0x2cb4611a + +/* PI1, PI2, and PI3 when FMA is available + PI high part (when FMA available) */ +float_vector __sPI1_FMA 0x40490fdb + +/* PI mid part (when FMA available) */ +float_vector __sPI2_FMA 0xb3bbbd2e + +/* PI low part (when FMA available) */ +float_vector __sPI3_FMA 0xa7772ced + +/* Polynomial constants for work w/o FMA, relative error ~ 2^(-26.625) */ +float_vector __sA3 0xbe2aaaa6 +float_vector __sA5 0x3c08876a +float_vector __sA7 0xb94fb7ff +float_vector __sA9 0x362edef8 + +/* Polynomial constants, work with FMA, relative error ~ 2^(-26.417) */ +float_vector __sA5_FMA 0x3c088768 +float_vector __sA7_FMA 0xb94fb6cf +float_vector __sA9_FMA 0x362ec335 + +/* 1/PI */ +float_vector __sInvPI 0x3ea2f983 + +/* right-shifter constant */ +float_vector __sRShifter 0x4b400000 + +/* PI/2 */ +float_vector __sHalfPI 0x3fc90fdb + +/* 1/2 */ +float_vector __sOneHalf 0x3f000000 + +/* high accuracy table index mask */ +float_vector __iIndexMask 0x000000ff + +/* 2^(k-1) */ +float_vector __i2pK_1 0x00000040 + +/* sign field mask */ +float_vector __sSignMask 0x80000000 + + .type __svml_s_trig_data,@object + .size __svml_s_trig_data,.-__svml_s_trig_data diff --git a/sysdeps/x86_64/fpu/svml_s_trig_data.h b/sysdeps/x86_64/fpu/svml_s_trig_data.h new file mode 100644 index 0000000000..5a91dad41c --- /dev/null +++ b/sysdeps/x86_64/fpu/svml_s_trig_data.h @@ -0,0 +1,62 @@ +/* Offsets for data table for vectorized sinf, cosf, sincosf. + Copyright (C) 2014-2015 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef S_TRIG_DATA_H +#define S_TRIG_DATA_H + +.macro float_vector offset value +.if .-__svml_s_trig_data != \offset +.err +.endif +.rept 16 +.long \value +.endr +.endm + +#define __sAbsMask 0 +#define __sRangeReductionVal 64 +#define __sRangeVal 64*2 +#define __sS1 64*3 +#define __sS2 64*4 +#define __sC1 64*5 +#define __sC2 64*6 +#define __sPI1 64*7 +#define __sPI2 64*8 +#define __sPI3 64*9 +#define __sPI4 64*10 +#define __sPI1_FMA 64*11 +#define __sPI2_FMA 64*12 +#define __sPI3_FMA 64*13 +#define __sA3 64*14 +#define __sA5 64*15 +#define __sA7 64*16 +#define __sA9 64*17 +#define __sA5_FMA 64*18 +#define __sA7_FMA 64*19 +#define __sA9_FMA 64*20 +#define __sInvPI 64*21 +#define __sRShifter 64*22 +#define __sHalfPI 64*23 +#define __sOneHalf 64*24 +#define __iIndexMask 64*25 +#define __i2pK_1 64*26 +#define __sSignMask 64*27 +#define __dT_cosf 64*28 +#define __dT 64*92 + +#endif -- cgit 1.4.1