Message ID | 20211124193807.2093208-2-skpgkp2@gmail.com |
---|---|
State | New |
Headers | show |
Series | x86-64: Add vector math functions to libmvec | expand |
On Wed, Nov 24, 2021 at 12:42 PM Noah Goldstein <goldstein.w.n@gmail.com> wrote: > > On Wed, Nov 24, 2021 at 2:12 PM Noah Goldstein <goldstein.w.n@gmail.com> wrote: > > > > On Wed, Nov 24, 2021 at 1:52 PM Sunil K Pandey via Libc-alpha > > <libc-alpha@sourceware.org> wrote: > > > > > > Implement vectorized acos/acosf containing SSE, AVX, AVX2 and > > > AVX512 versions for libmvec as per vector ABI. It also contains > > > accuracy and ABI tests for vector acos/acosf with regenerated ulps. > > > --- > > > bits/libm-simd-decl-stubs.h | 11 + > > > math/bits/mathcalls.h | 2 +- > > > .../unix/sysv/linux/x86_64/libmvec.abilist | 8 + > > > sysdeps/x86/fpu/bits/math-vector.h | 4 + > > > sysdeps/x86_64/fpu/Makeconfig | 1 + > > > sysdeps/x86_64/fpu/Versions | 4 + > > > sysdeps/x86_64/fpu/libm-test-ulps | 20 + > > > .../fpu/multiarch/ifunc-mathvec-avx512-skx.h | 39 + > > > .../fpu/multiarch/svml_d_acos2_core-sse2.S | 20 + > > > .../x86_64/fpu/multiarch/svml_d_acos2_core.c | 27 + > > > .../fpu/multiarch/svml_d_acos2_core_sse4.S | 2922 +++++++++++++++++ > > > .../fpu/multiarch/svml_d_acos4_core-sse.S | 20 + > > > .../x86_64/fpu/multiarch/svml_d_acos4_core.c | 27 + > > > .../fpu/multiarch/svml_d_acos4_core_avx2.S | 2777 ++++++++++++++++ > > > .../fpu/multiarch/svml_d_acos8_core-avx2.S | 20 + > > > .../x86_64/fpu/multiarch/svml_d_acos8_core.c | 27 + > > > .../fpu/multiarch/svml_d_acos8_core_avx512.S | 2608 +++++++++++++++ > > > .../fpu/multiarch/svml_s_acosf16_core-avx2.S | 20 + > > > .../fpu/multiarch/svml_s_acosf16_core.c | 28 + > > > .../multiarch/svml_s_acosf16_core_avx512.S | 2260 +++++++++++++ > > > .../fpu/multiarch/svml_s_acosf4_core-sse2.S | 20 + > > > .../x86_64/fpu/multiarch/svml_s_acosf4_core.c | 28 + > > > .../fpu/multiarch/svml_s_acosf4_core_sse4.S | 2812 ++++++++++++++++ > > > .../fpu/multiarch/svml_s_acosf8_core-sse.S | 20 + > > > .../x86_64/fpu/multiarch/svml_s_acosf8_core.c | 28 + > > > .../fpu/multiarch/svml_s_acosf8_core_avx2.S | 2619 +++++++++++++++ > > > sysdeps/x86_64/fpu/svml_d_acos2_core.S | 29 + > > > sysdeps/x86_64/fpu/svml_d_acos4_core.S | 29 + > > > sysdeps/x86_64/fpu/svml_d_acos4_core_avx.S | 25 + > > > sysdeps/x86_64/fpu/svml_d_acos8_core.S | 25 + > > > sysdeps/x86_64/fpu/svml_s_acosf16_core.S | 25 + > > > sysdeps/x86_64/fpu/svml_s_acosf4_core.S | 29 + > > > sysdeps/x86_64/fpu/svml_s_acosf8_core.S | 29 + > > > sysdeps/x86_64/fpu/svml_s_acosf8_core_avx.S | 25 + > > > .../x86_64/fpu/test-double-libmvec-acos-avx.c | 1 + > > > .../fpu/test-double-libmvec-acos-avx2.c | 1 + > > > .../fpu/test-double-libmvec-acos-avx512f.c | 1 + > > > sysdeps/x86_64/fpu/test-double-libmvec-acos.c | 3 + > > > .../x86_64/fpu/test-double-vlen2-wrappers.c | 1 + > > > .../fpu/test-double-vlen4-avx2-wrappers.c | 1 + > > > .../x86_64/fpu/test-double-vlen4-wrappers.c | 1 + > > > .../x86_64/fpu/test-double-vlen8-wrappers.c | 1 + > > > .../x86_64/fpu/test-float-libmvec-acosf-avx.c | 1 + > > > .../fpu/test-float-libmvec-acosf-avx2.c | 1 + > > > .../fpu/test-float-libmvec-acosf-avx512f.c | 1 + > > > sysdeps/x86_64/fpu/test-float-libmvec-acosf.c | 3 + > > > .../x86_64/fpu/test-float-vlen16-wrappers.c | 1 + > > > .../x86_64/fpu/test-float-vlen4-wrappers.c | 1 + > > > .../fpu/test-float-vlen8-avx2-wrappers.c | 1 + > > > .../x86_64/fpu/test-float-vlen8-wrappers.c | 1 + > > > 50 files changed, 16607 insertions(+), 1 deletion(-) > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx512-skx.h > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core-sse2.S > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core.c > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core_sse4.S > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core-sse.S > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core.c > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core_avx2.S > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core-avx2.S > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core.c > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core_avx512.S > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core-avx2.S > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core.c > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core_avx512.S > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core-sse2.S > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core.c > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core_sse4.S > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core-sse.S > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core.c > > > create mode 100644 sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core_avx2.S > > > create mode 100644 sysdeps/x86_64/fpu/svml_d_acos2_core.S > > > create mode 100644 sysdeps/x86_64/fpu/svml_d_acos4_core.S > > > create mode 100644 sysdeps/x86_64/fpu/svml_d_acos4_core_avx.S > > > create mode 100644 sysdeps/x86_64/fpu/svml_d_acos8_core.S > > > create mode 100644 sysdeps/x86_64/fpu/svml_s_acosf16_core.S > > > create mode 100644 sysdeps/x86_64/fpu/svml_s_acosf4_core.S > > > create mode 100644 sysdeps/x86_64/fpu/svml_s_acosf8_core.S > > > create mode 100644 sysdeps/x86_64/fpu/svml_s_acosf8_core_avx.S > > > create mode 100644 sysdeps/x86_64/fpu/test-double-libmvec-acos-avx.c > > > create mode 100644 sysdeps/x86_64/fpu/test-double-libmvec-acos-avx2.c > > > create mode 100644 sysdeps/x86_64/fpu/test-double-libmvec-acos-avx512f.c > > > create mode 100644 sysdeps/x86_64/fpu/test-double-libmvec-acos.c > > > create mode 100644 sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx.c > > > create mode 100644 sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx2.c > > > create mode 100644 sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx512f.c > > > create mode 100644 sysdeps/x86_64/fpu/test-float-libmvec-acosf.c > > > > > > diff --git a/bits/libm-simd-decl-stubs.h b/bits/libm-simd-decl-stubs.h > > > index b80ff332a0..2ccdd1fc53 100644 > > > --- a/bits/libm-simd-decl-stubs.h > > > +++ b/bits/libm-simd-decl-stubs.h > > > @@ -98,4 +98,15 @@ > > > #define __DECL_SIMD_powf32x > > > #define __DECL_SIMD_powf64x > > > #define __DECL_SIMD_powf128x > > > + > > > +#define __DECL_SIMD_acos > > > +#define __DECL_SIMD_acosf > > > +#define __DECL_SIMD_acosl > > > +#define __DECL_SIMD_acosf16 > > > +#define __DECL_SIMD_acosf32 > > > +#define __DECL_SIMD_acosf64 > > > +#define __DECL_SIMD_acosf128 > > > +#define __DECL_SIMD_acosf32x > > > +#define __DECL_SIMD_acosf64x > > > +#define __DECL_SIMD_acosf128x > > > #endif > > > diff --git a/math/bits/mathcalls.h b/math/bits/mathcalls.h > > > index da4cf4e10c..2cc6654208 100644 > > > --- a/math/bits/mathcalls.h > > > +++ b/math/bits/mathcalls.h > > > @@ -50,7 +50,7 @@ > > > /* Trigonometric functions. */ > > > > > > /* Arc cosine of X. */ > > > -__MATHCALL (acos,, (_Mdouble_ __x)); > > > +__MATHCALL_VEC (acos,, (_Mdouble_ __x)); > > > /* Arc sine of X. */ > > > __MATHCALL (asin,, (_Mdouble_ __x)); > > > /* Arc tangent of X. */ > > > diff --git a/sysdeps/unix/sysv/linux/x86_64/libmvec.abilist b/sysdeps/unix/sysv/linux/x86_64/libmvec.abilist > > > index 363d4ace1e..b37b55777e 100644 > > > --- a/sysdeps/unix/sysv/linux/x86_64/libmvec.abilist > > > +++ b/sysdeps/unix/sysv/linux/x86_64/libmvec.abilist > > > @@ -46,3 +46,11 @@ GLIBC_2.22 _ZGVeN8v_log F > > > GLIBC_2.22 _ZGVeN8v_sin F > > > GLIBC_2.22 _ZGVeN8vv_pow F > > > GLIBC_2.22 _ZGVeN8vvv_sincos F > > > +GLIBC_2.35 _ZGVbN2v_acos F > > > +GLIBC_2.35 _ZGVbN4v_acosf F > > > +GLIBC_2.35 _ZGVcN4v_acos F > > > +GLIBC_2.35 _ZGVcN8v_acosf F > > > +GLIBC_2.35 _ZGVdN4v_acos F > > > +GLIBC_2.35 _ZGVdN8v_acosf F > > > +GLIBC_2.35 _ZGVeN16v_acosf F > > > +GLIBC_2.35 _ZGVeN8v_acos F > > > diff --git a/sysdeps/x86/fpu/bits/math-vector.h b/sysdeps/x86/fpu/bits/math-vector.h > > > index dc0bfb3705..dabb74cbb9 100644 > > > --- a/sysdeps/x86/fpu/bits/math-vector.h > > > +++ b/sysdeps/x86/fpu/bits/math-vector.h > > > @@ -58,6 +58,10 @@ > > > # define __DECL_SIMD_pow __DECL_SIMD_x86_64 > > > # undef __DECL_SIMD_powf > > > # define __DECL_SIMD_powf __DECL_SIMD_x86_64 > > > +# undef __DECL_SIMD_acos > > > +# define __DECL_SIMD_acos __DECL_SIMD_x86_64 > > > +# undef __DECL_SIMD_acosf > > > +# define __DECL_SIMD_acosf __DECL_SIMD_x86_64 > > > > > > # endif > > > #endif > > > diff --git a/sysdeps/x86_64/fpu/Makeconfig b/sysdeps/x86_64/fpu/Makeconfig > > > index 503e9b5ffa..2d6f13246e 100644 > > > --- a/sysdeps/x86_64/fpu/Makeconfig > > > +++ b/sysdeps/x86_64/fpu/Makeconfig > > > @@ -22,6 +22,7 @@ postclean-generated += libmvec.mk > > > > > > # Define for both math and mathvec directories. > > > libmvec-funcs = \ > > > + acos \ > > > cos \ > > > exp \ > > > log \ > > > diff --git a/sysdeps/x86_64/fpu/Versions b/sysdeps/x86_64/fpu/Versions > > > index 08132045d6..8d337bf716 100644 > > > --- a/sysdeps/x86_64/fpu/Versions > > > +++ b/sysdeps/x86_64/fpu/Versions > > > @@ -12,5 +12,9 @@ libmvec { > > > _ZGVbN4v_expf; _ZGVcN8v_expf; _ZGVdN8v_expf; _ZGVeN16v_expf; > > > _ZGVbN4vv_powf; _ZGVcN8vv_powf; _ZGVdN8vv_powf; _ZGVeN16vv_powf; > > > _ZGVbN4vvv_sincosf; _ZGVcN8vvv_sincosf; _ZGVdN8vvv_sincosf; _ZGVeN16vvv_sincosf; > > > +}, > > > + GLIBC_2.35 { > > > + _ZGVbN2v_acos; _ZGVcN4v_acos; _ZGVdN4v_acos; _ZGVeN8v_acos; > > > + _ZGVbN4v_acosf; _ZGVcN8v_acosf; _ZGVdN8v_acosf; _ZGVeN16v_acosf; > > > } > > > } > > > diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps > > > index 312575f933..85a568ed29 100644 > > > --- a/sysdeps/x86_64/fpu/libm-test-ulps > > > +++ b/sysdeps/x86_64/fpu/libm-test-ulps > > > @@ -25,6 +25,26 @@ float: 1 > > > float128: 1 > > > ldouble: 2 > > > > > > +Function: "acos_vlen16": > > > +float: 1 > > > + > > > +Function: "acos_vlen2": > > > +double: 1 > > > + > > > +Function: "acos_vlen4": > > > +double: 1 > > > +float: 2 > > > + > > > +Function: "acos_vlen4_avx2": > > > +double: 1 > > > + > > > +Function: "acos_vlen8": > > > +double: 1 > > > +float: 2 > > > + > > > +Function: "acos_vlen8_avx2": > > > +float: 1 > > > + > > > Function: "acosh": > > > double: 2 > > > float: 2 > > > diff --git a/sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx512-skx.h b/sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx512-skx.h > > > new file mode 100644 > > > index 0000000000..3aed563dde > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx512-skx.h > > > @@ -0,0 +1,39 @@ > > > +/* Common definition for libmathvec ifunc selections optimized with > > > + AVX512. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#include <init-arch.h> > > > + > > > +#undef PASTER2 > > > +#define PASTER2(x,y) x##_##y > > > + > > > +extern void REDIRECT_NAME (void); > > > +extern __typeof (REDIRECT_NAME) OPTIMIZE (avx2_wrapper) attribute_hidden; > > > +extern __typeof (REDIRECT_NAME) OPTIMIZE (skx) attribute_hidden; > > > + > > > +static inline void * > > > +IFUNC_SELECTOR (void) > > > +{ > > > + const struct cpu_features* cpu_features = __get_cpu_features (); > > > + > > > + if (!CPU_FEATURES_ARCH_P (cpu_features, MathVec_Prefer_No_AVX512) > > > + && CPU_FEATURE_USABLE_P (cpu_features, AVX512DQ)) > > > + return OPTIMIZE (skx); > > > + > > > + return OPTIMIZE (avx2_wrapper); > > > +} > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core-sse2.S b/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core-sse2.S > > > new file mode 100644 > > > index 0000000000..25fb8d0cac > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core-sse2.S > > > @@ -0,0 +1,20 @@ > > > +/* SSE2 version of vectorized acos, vector length is 2. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#define _ZGVbN2v_acos _ZGVbN2v_acos_sse2 > > > +#include "../svml_d_acos2_core.S" > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core.c b/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core.c > > > new file mode 100644 > > > index 0000000000..5ba5d6fac2 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core.c > > > @@ -0,0 +1,27 @@ > > > +/* Multiple versions of vectorized acos, vector length is 2. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#define SYMBOL_NAME _ZGVbN2v_acos > > > +#include "ifunc-mathvec-sse4_1.h" > > > + > > > +libc_ifunc_redirected (REDIRECT_NAME, SYMBOL_NAME, IFUNC_SELECTOR ()); > > > + > > > +#ifdef SHARED > > > +__hidden_ver1 (_ZGVbN2v_acos, __GI__ZGVbN2v_acos, __redirect__ZGVbN2v_acos) > > > + __attribute__ ((visibility ("hidden"))); > > > +#endif > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core_sse4.S b/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core_sse4.S > > > new file mode 100644 > > > index 0000000000..900ddb92ed > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core_sse4.S > > > @@ -0,0 +1,2922 @@ > > > +/* Function acos vectorized with SSE4. > > > + Copyright (C) 2021 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 > > > + https://www.gnu.org/licenses/. */ > > > + > > > +/* > > > + * ALGORITHM DESCRIPTION: > > > + * > > > + * SelMask = (|x| >= 0.5) ? 1 : 0; > > > + * R = SelMask ? sqrt(0.5 - 0.5*|x|) : |x| > > > + * acos(|x|) = SelMask ? 2*Poly(R) : (Pi/2 - Poly(R)) > > > + * acos(x) = sign(x) ? (Pi - acos(|x|)) : acos(|x|) > > > + * > > > + */ > > > + > > > +#include <sysdep.h> > > > + > > > + .text > > I think these should be in their own code section (and separated by ISA). There > is a lot of code size associated with these functions. Thank you so much for your feedback. Following ISA specific sections are added in v2 patch. .text.sse4 .text.avx2 .text.evex512 > > > +ENTRY(_ZGVbN2v_acos_sse4) > > > > Where this functions implemented by hand or is this compiled output? These functions are compiler generated. > > > > > + pushq %rbp > > > + cfi_def_cfa_offset(16) > > > + movq %rsp, %rbp > > > + cfi_def_cfa(6, 16) > > > + cfi_offset(6, -16) > > > + andq $-64, %rsp > > > + subq $256, %rsp > > > + movups __svml_dacos_data_internal(%rip), %xmm3 > > > + movups 64+__svml_dacos_data_internal(%rip), %xmm6 > > > + > > > +/* x = -|arg| */ > > > + movaps %xmm3, %xmm2 > > > + orps %xmm0, %xmm2 > > > + > > > +/* Y = 0.5 + 0.5*(-x) */ > > > + movaps %xmm6, %xmm4 > > > + mulpd %xmm2, %xmm4 > > > + addpd %xmm4, %xmm6 > > > + > > > +/* S ~ 2*sqrt(Y) */ > > > + cvtpd2ps %xmm6, %xmm7 > > > + > > > +/* NaN processed in special branch (so wind test passed) */ > > > + movups 256+__svml_dacos_data_internal(%rip), %xmm1 > > > + > > > +/* x^2 */ > > > + movaps %xmm2, %xmm5 > > > + cmpnlepd %xmm2, %xmm1 > > > + mulpd %xmm2, %xmm5 > > > + movmskpd %xmm1, %edx > > > + movlhps %xmm7, %xmm7 > > > + andps %xmm0, %xmm3 > > > + movups %xmm8, 112(%rsp) > > > + rsqrtps %xmm7, %xmm1 > > > + minpd %xmm6, %xmm5 > > > + .cfi_escape 0x10, 0x19, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22 > > > + cvtps2pd %xmm1, %xmm8 > > > + movaps %xmm6, %xmm1 > > > + movaps %xmm5, %xmm4 > > > + cmpltpd 128+__svml_dacos_data_internal(%rip), %xmm1 > > > + cmpnltpd %xmm6, %xmm4 > > > + addpd %xmm6, %xmm6 > > > + andnps %xmm8, %xmm1 > > > + movups %xmm14, 160(%rsp) > > > + .cfi_escape 0x10, 0x1f, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xff, 0xff, 0xff, 0x22 > > > + movaps %xmm1, %xmm14 > > > + mulpd %xmm1, %xmm14 > > > + mulpd %xmm6, %xmm1 > > > + mulpd %xmm14, %xmm6 > > > + subpd 384+__svml_dacos_data_internal(%rip), %xmm6 > > > + movups %xmm15, 144(%rsp) > > > + .cfi_escape 0x10, 0x20, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x90, 0xff, 0xff, 0xff, 0x22 > > > + movaps %xmm6, %xmm8 > > > + movups 448+__svml_dacos_data_internal(%rip), %xmm15 > > > + mulpd %xmm6, %xmm15 > > > + mulpd %xmm1, %xmm8 > > > + addpd 464+__svml_dacos_data_internal(%rip), %xmm15 > > > + mulpd %xmm6, %xmm15 > > > + addpd 480+__svml_dacos_data_internal(%rip), %xmm15 > > > + mulpd %xmm15, %xmm6 > > > + addpd 496+__svml_dacos_data_internal(%rip), %xmm6 > > > + mulpd %xmm6, %xmm8 > > > + > > > +/* polynomial */ > > > + movups 512+__svml_dacos_data_internal(%rip), %xmm6 > > > + movaps %xmm5, %xmm15 > > > + mulpd %xmm5, %xmm6 > > > + mulpd %xmm5, %xmm15 > > > + addpd 528+__svml_dacos_data_internal(%rip), %xmm6 > > > + subpd %xmm8, %xmm1 > > > + mulpd %xmm15, %xmm6 > > > + movups 544+__svml_dacos_data_internal(%rip), %xmm14 > > > + andps %xmm4, %xmm1 > > > + mulpd %xmm5, %xmm14 > > > + movups 576+__svml_dacos_data_internal(%rip), %xmm7 > > > + mulpd %xmm5, %xmm7 > > > + addpd 560+__svml_dacos_data_internal(%rip), %xmm14 > > > + addpd 592+__svml_dacos_data_internal(%rip), %xmm7 > > > + addpd %xmm6, %xmm14 > > > + mulpd %xmm15, %xmm7 > > > + movups 608+__svml_dacos_data_internal(%rip), %xmm8 > > > + movaps %xmm15, %xmm6 > > > + mulpd %xmm5, %xmm8 > > > + mulpd %xmm15, %xmm6 > > > + addpd 624+__svml_dacos_data_internal(%rip), %xmm8 > > > + mulpd %xmm6, %xmm14 > > > + addpd %xmm7, %xmm8 > > > + movups 640+__svml_dacos_data_internal(%rip), %xmm7 > > > + mulpd %xmm5, %xmm7 > > > + addpd %xmm14, %xmm8 > > > + addpd 656+__svml_dacos_data_internal(%rip), %xmm7 > > > + mulpd %xmm15, %xmm8 > > > + movups 672+__svml_dacos_data_internal(%rip), %xmm6 > > > + > > > +/* X<X^2 iff X<0 */ > > > + movaps %xmm0, %xmm14 > > > + addpd %xmm8, %xmm7 > > > + cmpltpd %xmm5, %xmm14 > > > + mulpd %xmm5, %xmm6 > > > + mulpd %xmm7, %xmm15 > > > + addpd 688+__svml_dacos_data_internal(%rip), %xmm6 > > > + addpd %xmm15, %xmm6 > > > + mulpd %xmm5, %xmm6 > > > + movaps %xmm4, %xmm7 > > > + movaps %xmm4, %xmm5 > > > + andnps %xmm2, %xmm7 > > > + orps %xmm1, %xmm7 > > > + pxor %xmm3, %xmm7 > > > + mulpd %xmm7, %xmm6 > > > + movups 768+__svml_dacos_data_internal(%rip), %xmm8 > > > + andps %xmm4, %xmm8 > > > + andnps 896+__svml_dacos_data_internal(%rip), %xmm5 > > > + andps %xmm14, %xmm8 > > > + addpd %xmm5, %xmm8 > > > + addpd %xmm6, %xmm7 > > > + addpd %xmm7, %xmm8 > > > + testl %edx, %edx > > > + jne .LBL_1_3 > > > + > > > +.LBL_1_2: > > > + movups 160(%rsp), %xmm14 > > > + cfi_restore(31) > > > + movaps %xmm8, %xmm0 > > > + movups 112(%rsp), %xmm8 > > > + cfi_restore(25) > > > + movups 144(%rsp), %xmm15 > > > + cfi_restore(32) > > > + movq %rbp, %rsp > > > + popq %rbp > > > + cfi_def_cfa(7, 8) > > > + cfi_restore(6) > > > + ret > > > + cfi_def_cfa(6, 16) > > > + cfi_offset(6, -16) > > > + .cfi_escape 0x10, 0x19, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1f, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x20, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x90, 0xff, 0xff, 0xff, 0x22 > > > + > > > +.LBL_1_3: > > > + movups %xmm0, 128(%rsp) > > > + movups %xmm8, 192(%rsp) > > > + xorl %eax, %eax > > > + movups %xmm9, 64(%rsp) > > > + movups %xmm10, 48(%rsp) > > > + movups %xmm11, 32(%rsp) > > > + movups %xmm12, 16(%rsp) > > > + movups %xmm13, (%rsp) > > > + movq %rsi, 88(%rsp) > > > + movq %rdi, 80(%rsp) > > > + movq %r12, 104(%rsp) > > > + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1a, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1b, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1e, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22 > > > + movl %eax, %r12d > > > + movq %r13, 96(%rsp) > > > + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 > > > + movl %edx, %r13d > > > + > > > +.LBL_1_7: > > > + btl %r12d, %r13d > > > + jc .LBL_1_10 > > > + > > > +.LBL_1_8: > > > + incl %r12d > > > + cmpl $2, %r12d > > > + jl .LBL_1_7 > > > + movups 64(%rsp), %xmm9 > > > + cfi_restore(26) > > > + movups 48(%rsp), %xmm10 > > > + cfi_restore(27) > > > + movups 32(%rsp), %xmm11 > > > + cfi_restore(28) > > > + movups 16(%rsp), %xmm12 > > > + cfi_restore(29) > > > + movups (%rsp), %xmm13 > > > + cfi_restore(30) > > > + movq 88(%rsp), %rsi > > > + cfi_restore(4) > > > + movq 80(%rsp), %rdi > > > + cfi_restore(5) > > > + movq 104(%rsp), %r12 > > > + cfi_restore(12) > > > + movq 96(%rsp), %r13 > > > + cfi_restore(13) > > > + movups 192(%rsp), %xmm8 > > > + jmp .LBL_1_2 > > > + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1a, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1b, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1e, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22 > > > + > > > +.LBL_1_10: > > > + lea 128(%rsp,%r12,8), %rdi > > > + lea 192(%rsp,%r12,8), %rsi > > > + call __svml_dacos_cout_rare_internal > > Is `__svml_dacos_rare_internal` used elsewhere? If not can you inline > > it to avoid > > clobbers? > > > > > + jmp .LBL_1_8 > > > + > > > +END(_ZGVbN2v_acos_sse4) > > > + > > > + .align 16,0x90 > > > + > > > +__svml_dacos_cout_rare_internal: > > > + > > > + cfi_startproc > > > + > > > + xorl %eax, %eax > > > + movzwl 6(%rdi), %edx > > > + andl $32752, %edx > > > + movb 7(%rdi), %cl > > > + movsd (%rdi), %xmm1 > > > + cmpl $32752, %edx > > > + je .LBL_2_20 > > > + movsd %xmm1, -32(%rsp) > > > + andb $127, %cl > > > + movb %cl, -25(%rsp) > > > + movsd -32(%rsp), %xmm12 > > > + movsd 4168+_vmldACosHATab(%rip), %xmm0 > > > + comisd %xmm12, %xmm0 > > > + jbe .LBL_2_14 > > > + movsd 4176+_vmldACosHATab(%rip), %xmm1 > > > + comisd %xmm12, %xmm1 > > > + jbe .LBL_2_10 > > > + comisd 4128+_vmldACosHATab(%rip), %xmm12 > > > + jbe .LBL_2_9 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm6 > > > + movaps %xmm12, %xmm8 > > > + mulsd %xmm12, %xmm6 > > > + movaps %xmm12, %xmm7 > > > + movsd %xmm6, -40(%rsp) > > > + movsd -40(%rsp), %xmm13 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm5 > > > + subsd -32(%rsp), %xmm13 > > > + movsd %xmm13, -48(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + movsd -48(%rsp), %xmm14 > > > + subsd %xmm14, %xmm15 > > > + movaps %xmm12, %xmm14 > > > + movsd %xmm15, -40(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + subsd %xmm6, %xmm8 > > > + movsd %xmm8, -48(%rsp) > > > + movsd -40(%rsp), %xmm9 > > > + movaps %xmm9, %xmm4 > > > + addsd %xmm9, %xmm7 > > > + mulsd %xmm9, %xmm4 > > > + movsd -48(%rsp), %xmm10 > > > + movaps %xmm4, %xmm11 > > > + mulsd %xmm10, %xmm7 > > > + mulsd %xmm4, %xmm5 > > > + addsd %xmm7, %xmm11 > > > + movsd 4312+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm5, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm5 > > > + subsd %xmm4, %xmm1 > > > + addsd 4304+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm1, -48(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + addsd 4296+_vmldACosHATab(%rip), %xmm8 > > > + subsd %xmm2, %xmm0 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + addsd 4288+_vmldACosHATab(%rip), %xmm8 > > > + subsd %xmm3, %xmm4 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm4, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + mulsd %xmm6, %xmm9 > > > + addsd 4280+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm6, %xmm10 > > > + mulsd %xmm11, %xmm8 > > > + mulsd %xmm9, %xmm5 > > > + addsd 4272+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movaps %xmm9, %xmm0 > > > + movsd -48(%rsp), %xmm13 > > > + movaps %xmm6, %xmm4 > > > + movsd %xmm5, -40(%rsp) > > > + addsd %xmm13, %xmm7 > > > + addsd 4264+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm7, %xmm14 > > > + mulsd %xmm11, %xmm8 > > > + addsd %xmm14, %xmm10 > > > + addsd 4256+_vmldACosHATab(%rip), %xmm8 > > > + movsd -40(%rsp), %xmm1 > > > + mulsd %xmm11, %xmm8 > > > + subsd %xmm9, %xmm1 > > > + addsd %xmm10, %xmm9 > > > + addsd 4248+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm9, %xmm7 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm1, -48(%rsp) > > > + movsd -40(%rsp), %xmm2 > > > + movsd -48(%rsp), %xmm15 > > > + subsd %xmm15, %xmm2 > > > + addsd 4240+_vmldACosHATab(%rip), %xmm8 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm5 > > > + mulsd %xmm11, %xmm8 > > > + subsd %xmm5, %xmm0 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movsd -48(%rsp), %xmm5 > > > + movaps %xmm5, %xmm13 > > > + addsd 4232+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm3, %xmm4 > > > + addsd %xmm10, %xmm13 > > > + mulsd %xmm11, %xmm8 > > > + mulsd %xmm13, %xmm6 > > > + addsd 4224+_vmldACosHATab(%rip), %xmm8 > > > + addsd %xmm7, %xmm6 > > > + mulsd %xmm11, %xmm8 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm7 > > > + movaps %xmm4, %xmm13 > > > + mulsd %xmm4, %xmm7 > > > + addsd 4216+_vmldACosHATab(%rip), %xmm8 > > > + movsd %xmm7, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4200+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm4, %xmm1 > > > + mulsd %xmm9, %xmm11 > > > + addsd %xmm6, %xmm4 > > > + movsd %xmm1, -48(%rsp) > > > + movaps %xmm12, %xmm9 > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + movsd 4192+_vmldACosHATab(%rip), %xmm1 > > > + subsd %xmm2, %xmm0 > > > + mulsd %xmm1, %xmm3 > > > + mulsd %xmm1, %xmm10 > > > + mulsd %xmm4, %xmm8 > > > + addsd %xmm3, %xmm9 > > > + mulsd %xmm1, %xmm5 > > > + addsd %xmm10, %xmm11 > > > + movsd %xmm0, -40(%rsp) > > > + addsd %xmm11, %xmm8 > > > + movsd -40(%rsp), %xmm7 > > > + addsd %xmm5, %xmm8 > > > + subsd %xmm7, %xmm13 > > > + movsd %xmm13, -48(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + movsd %xmm9, -40(%rsp) > > > + addsd %xmm2, %xmm6 > > > + movsd -40(%rsp), %xmm10 > > > + movsd %xmm3, -56(%rsp) > > > + subsd %xmm10, %xmm12 > > > + movsd 4208+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm12, %xmm3 > > > + mulsd %xmm4, %xmm0 > > > + mulsd %xmm4, %xmm6 > > > + movsd %xmm3, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movaps %xmm3, %xmm12 > > > + movsd -48(%rsp), %xmm7 > > > + addsd %xmm0, %xmm12 > > > + addsd %xmm7, %xmm8 > > > + movsd %xmm12, -40(%rsp) > > > + movsd -40(%rsp), %xmm12 > > > + subsd %xmm12, %xmm3 > > > + addsd %xmm3, %xmm0 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movsd -48(%rsp), %xmm0 > > > + movsd (%rdi), %xmm1 > > > + addsd %xmm8, %xmm0 > > > + comisd 4184+_vmldACosHATab(%rip), %xmm1 > > > + addsd %xmm0, %xmm6 > > > + jbe .LBL_2_7 > > > + movsd 4136+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm2, %xmm0 > > > + subsd %xmm3, %xmm0 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4144+_vmldACosHATab(%rip), %xmm0 > > > + subsd %xmm1, %xmm2 > > > + subsd %xmm6, %xmm0 > > > + subsd %xmm3, %xmm2 > > > + movsd %xmm2, -48(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd -48(%rsp), %xmm3 > > > + addsd %xmm3, %xmm0 > > > + jmp .LBL_2_8 > > > + > > > +.LBL_2_7: > > > + movsd 4136+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm3, %xmm0 > > > + addsd %xmm2, %xmm0 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + subsd %xmm1, %xmm2 > > > + addsd %xmm2, %xmm3 > > > + movsd %xmm3, -48(%rsp) > > > + movsd 4144+_vmldACosHATab(%rip), %xmm3 > > > + movsd -40(%rsp), %xmm1 > > > + addsd %xmm3, %xmm6 > > > + movsd -48(%rsp), %xmm0 > > > + addsd %xmm6, %xmm0 > > > + > > > +.LBL_2_8: > > > + addsd %xmm0, %xmm1 > > > + movsd %xmm1, (%rsi) > > > + ret > > > + > > > +.LBL_2_9: > > > + movsd 4144+_vmldACosHATab(%rip), %xmm1 > > > + addsd %xmm0, %xmm12 > > > + movsd %xmm12, -40(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + mulsd -32(%rsp), %xmm0 > > > + movsd %xmm0, -56(%rsp) > > > + movb -49(%rsp), %dl > > > + movb 7(%rdi), %dil > > > + andb $127, %dl > > > + andb $-128, %dil > > > + orb %dil, %dl > > > + movb %dl, -49(%rsp) > > > + subsd -56(%rsp), %xmm1 > > > + addsd 4136+_vmldACosHATab(%rip), %xmm1 > > > + movsd %xmm1, (%rsi) > > > + ret > > > + > > > +.LBL_2_10: > > > + movaps %xmm0, %xmm8 > > > + movzwl 4174+_vmldACosHATab(%rip), %r9d > > > + pxor %xmm13, %xmm13 > > > + andl $-32753, %r9d > > > + subsd %xmm12, %xmm8 > > > + subsd %xmm0, %xmm13 > > > + mulsd %xmm8, %xmm1 > > > + movsd %xmm1, -56(%rsp) > > > + movzwl -50(%rsp), %ecx > > > + andl $32752, %ecx > > > + shrl $4, %ecx > > > + addl $-1023, %ecx > > > + movl %ecx, %r8d > > > + movl %ecx, %edx > > > + negl %r8d > > > + addl $1023, %r8d > > > + andl $2047, %r8d > > > + shll $4, %r8d > > > + movsd %xmm0, -32(%rsp) > > > + orl %r8d, %r9d > > > + movw %r9w, -26(%rsp) > > > + andl $1, %edx > > > + movsd -32(%rsp), %xmm4 > > > + lea _vmldACosHATab(%rip), %r8 > > > + mulsd %xmm4, %xmm1 > > > + movl %edx, %r10d > > > + movaps %xmm1, %xmm15 > > > + movsd 4112+_vmldACosHATab(%rip), %xmm6 > > > + addsd %xmm1, %xmm15 > > > + jne .LBL_73 > > > + movaps %xmm1, %xmm15 > > > + > > > +.LBL_73: > > > + mulsd %xmm15, %xmm6 > > > + movaps %xmm15, %xmm7 > > > + movaps %xmm6, %xmm9 > > > + subl %edx, %ecx > > > + movsd 4120+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm15, %xmm9 > > > + addsd %xmm1, %xmm11 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -48(%rsp), %xmm10 > > > + movsd %xmm11, -24(%rsp) > > > + subsd %xmm10, %xmm6 > > > + movl -24(%rsp), %r11d > > > + movaps %xmm6, %xmm14 > > > + shll $8, %r10d > > > + andl $511, %r11d > > > + addl %r10d, %r11d > > > + subsd %xmm6, %xmm7 > > > + movsd (%r8,%r11,8), %xmm5 > > > + addsd %xmm7, %xmm14 > > > + mulsd %xmm5, %xmm6 > > > + movaps %xmm5, %xmm12 > > > + mulsd %xmm5, %xmm12 > > > + mulsd %xmm12, %xmm14 > > > + movsd 4512+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm13, %xmm14 > > > + mulsd %xmm14, %xmm4 > > > + shrl $1, %ecx > > > + addsd 4504+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + addl $1023, %ecx > > > + andl $2047, %ecx > > > + addsd 4496+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movzwl 4174+_vmldACosHATab(%rip), %r9d > > > + shll $4, %ecx > > > + andl $-32753, %r9d > > > + movsd %xmm0, -16(%rsp) > > > + orl %ecx, %r9d > > > + movw %r9w, -10(%rsp) > > > + movsd -16(%rsp), %xmm9 > > > + mulsd %xmm9, %xmm6 > > > + addsd 4488+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm3 > > > + mulsd %xmm6, %xmm3 > > > + addsd 4480+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movsd %xmm3, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4352+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm6, %xmm1 > > > + addsd 4472+_vmldACosHATab(%rip), %xmm4 > > > + addsd 4360+_vmldACosHATab(%rip), %xmm11 > > > + mulsd %xmm14, %xmm4 > > > + mulsd %xmm8, %xmm11 > > > + addsd 4464+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + mulsd %xmm15, %xmm4 > > > + movsd %xmm1, -48(%rsp) > > > + addsd %xmm4, %xmm7 > > > + mulsd %xmm5, %xmm7 > > > + movsd 4456+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm9, %xmm7 > > > + addsd 4448+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm2 > > > + movsd -48(%rsp), %xmm0 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm4 > > > + subsd %xmm0, %xmm2 > > > + mulsd %xmm8, %xmm4 > > > + addsd 4440+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movaps %xmm8, %xmm0 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm14 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm2 > > > + subsd %xmm14, %xmm6 > > > + addsd 4432+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm6, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + movsd -48(%rsp), %xmm10 > > > + movsd %xmm4, -40(%rsp) > > > + addsd %xmm10, %xmm7 > > > + addsd 4424+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm3 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm12 > > > + subsd %xmm8, %xmm3 > > > + addsd 4416+_vmldACosHATab(%rip), %xmm5 > > > + addsd 4344+_vmldACosHATab(%rip), %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + addsd %xmm11, %xmm12 > > > + addsd 4408+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm3, -48(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd -48(%rsp), %xmm15 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm13 > > > + subsd %xmm15, %xmm1 > > > + addsd 4400+_vmldACosHATab(%rip), %xmm5 > > > + addsd 4328+_vmldACosHATab(%rip), %xmm13 > > > + mulsd %xmm8, %xmm5 > > > + addsd %xmm12, %xmm13 > > > + addsd 4392+_vmldACosHATab(%rip), %xmm5 > > > + movsd %xmm1, -40(%rsp) > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm4 > > > + subsd %xmm4, %xmm0 > > > + addsd 4384+_vmldACosHATab(%rip), %xmm5 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm4 > > > + movaps %xmm4, %xmm14 > > > + mulsd %xmm4, %xmm14 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm14, %xmm2 > > > + addsd 4376+_vmldACosHATab(%rip), %xmm5 > > > + movsd -48(%rsp), %xmm3 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm9 > > > + mulsd %xmm8, %xmm5 > > > + subsd %xmm14, %xmm9 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -40(%rsp), %xmm11 > > > + movsd -48(%rsp), %xmm10 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm0 > > > + subsd %xmm10, %xmm11 > > > + mulsd %xmm4, %xmm0 > > > + addsd 4368+_vmldACosHATab(%rip), %xmm5 > > > + addsd %xmm8, %xmm4 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm3, %xmm4 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm11, -40(%rsp) > > > + movaps %xmm0, %xmm1 > > > + movsd -40(%rsp), %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + subsd %xmm12, %xmm14 > > > + movsd %xmm14, -48(%rsp) > > > + addsd %xmm5, %xmm13 > > > + movsd -40(%rsp), %xmm9 > > > + mulsd 4352+_vmldACosHATab(%rip), %xmm9 > > > + mulsd %xmm13, %xmm7 > > > + addsd %xmm9, %xmm1 > > > + movsd -48(%rsp), %xmm2 > > > + movsd %xmm1, -40(%rsp) > > > + addsd %xmm2, %xmm4 > > > + movsd -40(%rsp), %xmm13 > > > + movsd %xmm9, -24(%rsp) > > > + subsd %xmm13, %xmm0 > > > + mulsd 4352+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm0, %xmm9 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -40(%rsp), %xmm12 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm10 > > > + movsd -48(%rsp), %xmm1 > > > + addsd %xmm12, %xmm10 > > > + movsd %xmm10, -40(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm11 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm9 > > > + subsd %xmm15, %xmm11 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm2 > > > + addsd %xmm11, %xmm12 > > > + mulsd %xmm3, %xmm2 > > > + movsd %xmm12, -48(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + mulsd %xmm15, %xmm9 > > > + movsd -48(%rsp), %xmm0 > > > + movsd %xmm9, -40(%rsp) > > > + movsd -40(%rsp), %xmm10 > > > + movsd 4360+_vmldACosHATab(%rip), %xmm3 > > > + subsd %xmm15, %xmm10 > > > + mulsd %xmm8, %xmm3 > > > + movsd %xmm10, -48(%rsp) > > > + movsd -40(%rsp), %xmm11 > > > + movsd -48(%rsp), %xmm13 > > > + subsd %xmm13, %xmm11 > > > + addsd 4344+_vmldACosHATab(%rip), %xmm3 > > > + movsd %xmm11, -40(%rsp) > > > + movsd -40(%rsp), %xmm14 > > > + mulsd %xmm8, %xmm3 > > > + subsd %xmm14, %xmm15 > > > + movsd %xmm15, -48(%rsp) > > > + movsd -40(%rsp), %xmm10 > > > + movsd -48(%rsp), %xmm9 > > > + addsd %xmm9, %xmm4 > > > + addsd 4328+_vmldACosHATab(%rip), %xmm3 > > > + addsd %xmm2, %xmm4 > > > + addsd %xmm5, %xmm3 > > > + addsd %xmm1, %xmm4 > > > + addsd %xmm0, %xmm4 > > > + addsd %xmm3, %xmm4 > > > + mulsd %xmm6, %xmm4 > > > + mulsd %xmm10, %xmm6 > > > + addsd %xmm7, %xmm4 > > > + movsd (%rdi), %xmm7 > > > + comisd 4184+_vmldACosHATab(%rip), %xmm7 > > > + ja .LBL_2_13 > > > + movsd 4152+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm2, %xmm0 > > > + movsd 4160+_vmldACosHATab(%rip), %xmm5 > > > + subsd %xmm6, %xmm0 > > > + subsd %xmm4, %xmm5 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd %xmm6, -56(%rsp) > > > + subsd %xmm1, %xmm2 > > > + subsd %xmm6, %xmm2 > > > + movsd %xmm2, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + movsd -48(%rsp), %xmm3 > > > + movaps %xmm3, %xmm4 > > > + addsd %xmm5, %xmm4 > > > + > > > +.LBL_2_13: > > > + addsd %xmm4, %xmm6 > > > + movsd %xmm6, (%rsi) > > > + ret > > > + > > > +.LBL_2_14: > > > + ucomisd %xmm0, %xmm1 > > > + jp .LBL_2_15 > > > + je .LBL_2_19 > > > + > > > +.LBL_2_15: > > > + xorps .FLT_197(%rip), %xmm0 > > > + ucomisd %xmm0, %xmm1 > > > + jp .LBL_2_16 > > > + je .LBL_2_18 > > > + > > > +.LBL_2_16: > > > + movl $1, %eax > > > + pxor %xmm1, %xmm1 > > > + pxor %xmm0, %xmm0 > > > + divsd %xmm0, %xmm1 > > > + movsd %xmm1, (%rsi) > > > + > > > +.LBL_2_17: > > > + ret > > > + > > > +.LBL_2_18: > > > + movsd 4152+_vmldACosHATab(%rip), %xmm0 > > > + addsd 4160+_vmldACosHATab(%rip), %xmm0 > > > + movsd %xmm0, (%rsi) > > > + ret > > > + > > > +.LBL_2_19: > > > + movq 4184+_vmldACosHATab(%rip), %rdx > > > + movq %rdx, (%rsi) > > > + ret > > > + > > > +.LBL_2_20: > > > + divsd %xmm1, %xmm1 > > > + movsd %xmm1, (%rsi) > > > + testl $1048575, 4(%rdi) > > > + jne .LBL_2_17 > > > + cmpl $0, (%rdi) > > > + sete %al > > > + ret > > > + > > > + cfi_endproc > > > + > > > + .type __svml_dacos_cout_rare_internal,@function > > > + .size __svml_dacos_cout_rare_internal,.-__svml_dacos_cout_rare_internal > > > + > > > + .section .rodata, "a" > > > + .align 64 > > > + > > > +__svml_dacos_data_internal: > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1071644672 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 805306368 > > > + .long 0 > > > + .long 805306368 > > > > I think alot of these constants could be generated on the fly > > more quickly/space efficiently than with a load (definetly the zeros). > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 4294967040 > > > + .long 0 > > > + .long 4294967040 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 3220176896 > > > + .long 0 > > > + .long 3220176896 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 4227858432 > > > + .long 4294967295 > > > + .long 4227858432 > > > + .long 4294967295 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 1073741824 > > > + .long 0 > > > + .long 1073741824 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 2570790083 > > > + .long 3213983744 > > > + .long 2570790083 > > > + .long 3213983744 > > > + .long 1869665325 > > > + .long 1067712512 > > > + .long 1869665325 > > > + .long 1067712512 > > > + .long 4294966935 > > > + .long 3216506879 > > > + .long 4294966935 > > > + .long 3216506879 > > > + .long 4294967197 > > > + .long 1070596095 > > > + .long 4294967197 > > > + .long 1070596095 > > > + .long 3339630857 > > > + .long 1067480352 > > > + .long 3339630857 > > > + .long 1067480352 > > > + .long 4158370029 > > > + .long 3213949719 > > > + .long 4158370029 > > > + .long 3213949719 > > > + .long 3216784302 > > > + .long 1066680132 > > > + .long 3216784302 > > > + .long 1066680132 > > > + .long 2513723093 > > > + .long 1064982579 > > > + .long 2513723093 > > > + .long 1064982579 > > > + .long 721210070 > > > + .long 1065941212 > > > + .long 721210070 > > > + .long 1065941212 > > > + .long 3414736215 > > > + .long 1066167739 > > > + .long 3414736215 > > > + .long 1066167739 > > > + .long 4114132270 > > > + .long 1066518236 > > > + .long 4114132270 > > > + .long 1066518236 > > > + .long 3957258973 > > > + .long 1066854556 > > > + .long 3957258973 > > > + .long 1066854556 > > > + .long 3778730174 > > > + .long 1067392114 > > > + .long 3778730174 > > > + .long 1067392114 > > > + .long 3014936056 > > > + .long 1067899757 > > > + .long 3014936056 > > > + .long 1067899757 > > > + .long 859300062 > > > + .long 1068708659 > > > + .long 859300062 > > > + .long 1068708659 > > > + .long 1431655068 > > > + .long 1069897045 > > > + .long 1431655068 > > > + .long 1069897045 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 856972295 > > > + .long 1017226790 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 856972295 > > > + .long 1016178214 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 4294705152 > > > + .long 0 > > > + .long 4294705152 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 4131758366 > > > + .long 1067674714 > > > + .long 4131758366 > > > + .long 1067674714 > > > + .long 3936260738 > > > + .long 1066197319 > > > + .long 3936260738 > > > + .long 1066197319 > > > + .long 354394453 > > > + .long 1067472564 > > > + .long 354394453 > > > + .long 1067472564 > > > + .long 709676628 > > > + .long 1067895021 > > > + .long 709676628 > > > + .long 1067895021 > > > + .long 3958922090 > > > + .long 1068708761 > > > + .long 3958922090 > > > + .long 1068708761 > > > + .long 2160605765 > > > + .long 1069897044 > > > + .long 2160605765 > > > + .long 1069897044 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 2146435072 > > > + .long 0 > > > + .long 4293918720 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 1072693248 > > > + .long 0 > > > + .long 3220176896 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 2147483648 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .type __svml_dacos_data_internal,@object > > > + .size __svml_dacos_data_internal,1472 > > > + .align 32 > > > + > > > +_vmldACosHATab: > > > + .long 0 > > > + .long 1072693248 > > > + .long 0 > > > + .long 1072689152 > > > + .long 0 > > > + .long 1072685056 > > > + .long 0 > > > + .long 1072680960 > > > + .long 0 > > > + .long 1072676864 > > > + .long 0 > > > + .long 1072672768 > > > + .long 0 > > > + .long 1072668672 > > > + .long 0 > > > + .long 1072665600 > > > + .long 0 > > > + .long 1072661504 > > > + .long 0 > > > + .long 1072657408 > > > + .long 0 > > > + .long 1072653312 > > > + .long 0 > > > + .long 1072649216 > > > + .long 0 > > > + .long 1072646144 > > > + .long 0 > > > + .long 1072642048 > > > + .long 0 > > > + .long 1072637952 > > > + .long 0 > > > + .long 1072634880 > > > + .long 0 > > > + .long 1072630784 > > > + .long 0 > > > + .long 1072626688 > > > + .long 0 > > > + .long 1072623616 > > > + .long 0 > > > + .long 1072619520 > > > + .long 0 > > > + .long 1072615424 > > > + .long 0 > > > + .long 1072612352 > > > + .long 0 > > > + .long 1072608256 > > > + .long 0 > > > + .long 1072605184 > > > + .long 0 > > > + .long 1072601088 > > > + .long 0 > > > + .long 1072598016 > > > + .long 0 > > > + .long 1072593920 > > > + .long 0 > > > + .long 1072590848 > > > + .long 0 > > > + .long 1072586752 > > > + .long 0 > > > + .long 1072583680 > > > + .long 0 > > > + .long 1072580608 > > > + .long 0 > > > + .long 1072576512 > > > + .long 0 > > > + .long 1072573440 > > > + .long 0 > > > + .long 1072570368 > > > + .long 0 > > > + .long 1072566272 > > > + .long 0 > > > + .long 1072563200 > > > + .long 0 > > > + .long 1072560128 > > > + .long 0 > > > + .long 1072556032 > > > + .long 0 > > > + .long 1072552960 > > > + .long 0 > > > + .long 1072549888 > > > + .long 0 > > > + .long 1072546816 > > > + .long 0 > > > + .long 1072542720 > > > + .long 0 > > > + .long 1072539648 > > > + .long 0 > > > + .long 1072536576 > > > + .long 0 > > > + .long 1072533504 > > > + .long 0 > > > + .long 1072530432 > > > + .long 0 > > > + .long 1072527360 > > > + .long 0 > > > + .long 1072523264 > > > + .long 0 > > > + .long 1072520192 > > > + .long 0 > > > + .long 1072517120 > > > + .long 0 > > > + .long 1072514048 > > > + .long 0 > > > + .long 1072510976 > > > + .long 0 > > > + .long 1072507904 > > > + .long 0 > > > + .long 1072504832 > > > + .long 0 > > > + .long 1072501760 > > > + .long 0 > > > + .long 1072498688 > > > + .long 0 > > > + .long 1072495616 > > > + .long 0 > > > + .long 1072492544 > > > + .long 0 > > > + .long 1072489472 > > > + .long 0 > > > + .long 1072486400 > > > + .long 0 > > > + .long 1072483328 > > > + .long 0 > > > + .long 1072480256 > > > + .long 0 > > > + .long 1072478208 > > > + .long 0 > > > + .long 1072475136 > > > + .long 0 > > > + .long 1072472064 > > > + .long 0 > > > + .long 1072468992 > > > + .long 0 > > > + .long 1072465920 > > > + .long 0 > > > + .long 1072462848 > > > + .long 0 > > > + .long 1072459776 > > > + .long 0 > > > + .long 1072457728 > > > + .long 0 > > > + .long 1072454656 > > > + .long 0 > > > + .long 1072451584 > > > + .long 0 > > > + .long 1072448512 > > > + .long 0 > > > + .long 1072446464 > > > + .long 0 > > > + .long 1072443392 > > > + .long 0 > > > + .long 1072440320 > > > + .long 0 > > > + .long 1072437248 > > > + .long 0 > > > + .long 1072435200 > > > + .long 0 > > > + .long 1072432128 > > > + .long 0 > > > + .long 1072429056 > > > + .long 0 > > > + .long 1072427008 > > > + .long 0 > > > + .long 1072423936 > > > + .long 0 > > > + .long 1072420864 > > > + .long 0 > > > + .long 1072418816 > > > + .long 0 > > > + .long 1072415744 > > > + .long 0 > > > + .long 1072412672 > > > + .long 0 > > > + .long 1072410624 > > > + .long 0 > > > + .long 1072407552 > > > + .long 0 > > > + .long 1072405504 > > > + .long 0 > > > + .long 1072402432 > > > + .long 0 > > > + .long 1072400384 > > > + .long 0 > > > + .long 1072397312 > > > + .long 0 > > > + .long 1072395264 > > > + .long 0 > > > + .long 1072392192 > > > + .long 0 > > > + .long 1072390144 > > > + .long 0 > > > + .long 1072387072 > > > + .long 0 > > > + .long 1072385024 > > > + .long 0 > > > + .long 1072381952 > > > + .long 0 > > > + .long 1072379904 > > > + .long 0 > > > + .long 1072376832 > > > + .long 0 > > > + .long 1072374784 > > > + .long 0 > > > + .long 1072371712 > > > + .long 0 > > > + .long 1072369664 > > > + .long 0 > > > + .long 1072366592 > > > + .long 0 > > > + .long 1072364544 > > > + .long 0 > > > + .long 1072362496 > > > + .long 0 > > > + .long 1072359424 > > > + .long 0 > > > + .long 1072357376 > > > + .long 0 > > > + .long 1072355328 > > > + .long 0 > > > + .long 1072352256 > > > + .long 0 > > > + .long 1072350208 > > > + .long 0 > > > + .long 1072347136 > > > + .long 0 > > > + .long 1072345088 > > > + .long 0 > > > + .long 1072343040 > > > + .long 0 > > > + .long 1072340992 > > > + .long 0 > > > + .long 1072337920 > > > + .long 0 > > > + .long 1072335872 > > > + .long 0 > > > + .long 1072333824 > > > + .long 0 > > > + .long 1072330752 > > > + .long 0 > > > + .long 1072328704 > > > + .long 0 > > > + .long 1072326656 > > > + .long 0 > > > + .long 1072324608 > > > + .long 0 > > > + .long 1072321536 > > > + .long 0 > > > + .long 1072319488 > > > + .long 0 > > > + .long 1072317440 > > > + .long 0 > > > + .long 1072315392 > > > + .long 0 > > > + .long 1072313344 > > > + .long 0 > > > + .long 1072310272 > > > + .long 0 > > > + .long 1072308224 > > > + .long 0 > > > + .long 1072306176 > > > + .long 0 > > > + .long 1072304128 > > > + .long 0 > > > + .long 1072302080 > > > + .long 0 > > > + .long 1072300032 > > > + .long 0 > > > + .long 1072296960 > > > + .long 0 > > > + .long 1072294912 > > > + .long 0 > > > + .long 1072292864 > > > + .long 0 > > > + .long 1072290816 > > > + .long 0 > > > + .long 1072288768 > > > + .long 0 > > > + .long 1072286720 > > > + .long 0 > > > + .long 1072284672 > > > + .long 0 > > > + .long 1072282624 > > > + .long 0 > > > + .long 1072280576 > > > + .long 0 > > > + .long 1072278528 > > > + .long 0 > > > + .long 1072275456 > > > + .long 0 > > > + .long 1072273408 > > > + .long 0 > > > + .long 1072271360 > > > + .long 0 > > > + .long 1072269312 > > > + .long 0 > > > + .long 1072267264 > > > + .long 0 > > > + .long 1072265216 > > > + .long 0 > > > + .long 1072263168 > > > + .long 0 > > > + .long 1072261120 > > > + .long 0 > > > + .long 1072259072 > > > + .long 0 > > > + .long 1072257024 > > > + .long 0 > > > + .long 1072254976 > > > + .long 0 > > > + .long 1072252928 > > > + .long 0 > > > + .long 1072250880 > > > + .long 0 > > > + .long 1072248832 > > > + .long 0 > > > + .long 1072246784 > > > + .long 0 > > > + .long 1072244736 > > > + .long 0 > > > + .long 1072243712 > > > + .long 0 > > > + .long 1072241664 > > > + .long 0 > > > + .long 1072239616 > > > + .long 0 > > > + .long 1072237568 > > > + .long 0 > > > + .long 1072235520 > > > + .long 0 > > > + .long 1072233472 > > > + .long 0 > > > + .long 1072231424 > > > + .long 0 > > > + .long 1072229376 > > > + .long 0 > > > + .long 1072227328 > > > + .long 0 > > > + .long 1072225280 > > > + .long 0 > > > + .long 1072223232 > > > + .long 0 > > > + .long 1072222208 > > > + .long 0 > > > + .long 1072220160 > > > + .long 0 > > > + .long 1072218112 > > > + .long 0 > > > + .long 1072216064 > > > + .long 0 > > > + .long 1072214016 > > > + .long 0 > > > + .long 1072211968 > > > + .long 0 > > > + .long 1072210944 > > > + .long 0 > > > + .long 1072208896 > > > + .long 0 > > > + .long 1072206848 > > > + .long 0 > > > + .long 1072204800 > > > + .long 0 > > > + .long 1072202752 > > > + .long 0 > > > + .long 1072201728 > > > + .long 0 > > > + .long 1072199680 > > > + .long 0 > > > + .long 1072197632 > > > + .long 0 > > > + .long 1072195584 > > > + .long 0 > > > + .long 1072193536 > > > + .long 0 > > > + .long 1072192512 > > > + .long 0 > > > + .long 1072190464 > > > + .long 0 > > > + .long 1072188416 > > > + .long 0 > > > + .long 1072186368 > > > + .long 0 > > > + .long 1072185344 > > > + .long 0 > > > + .long 1072183296 > > > + .long 0 > > > + .long 1072181248 > > > + .long 0 > > > + .long 1072179200 > > > + .long 0 > > > + .long 1072178176 > > > + .long 0 > > > + .long 1072176128 > > > + .long 0 > > > + .long 1072174080 > > > + .long 0 > > > + .long 1072173056 > > > + .long 0 > > > + .long 1072171008 > > > + .long 0 > > > + .long 1072168960 > > > + .long 0 > > > + .long 1072167936 > > > + .long 0 > > > + .long 1072165888 > > > + .long 0 > > > + .long 1072163840 > > > + .long 0 > > > + .long 1072161792 > > > + .long 0 > > > + .long 1072160768 > > > + .long 0 > > > + .long 1072158720 > > > + .long 0 > > > + .long 1072157696 > > > + .long 0 > > > + .long 1072155648 > > > + .long 0 > > > + .long 1072153600 > > > + .long 0 > > > + .long 1072152576 > > > + .long 0 > > > + .long 1072150528 > > > + .long 0 > > > + .long 1072148480 > > > + .long 0 > > > + .long 1072147456 > > > + .long 0 > > > + .long 1072145408 > > > + .long 0 > > > + .long 1072143360 > > > + .long 0 > > > + .long 1072142336 > > > + .long 0 > > > + .long 1072140288 > > > + .long 0 > > > + .long 1072139264 > > > + .long 0 > > > + .long 1072137216 > > > + .long 0 > > > + .long 1072135168 > > > + .long 0 > > > + .long 1072134144 > > > + .long 0 > > > + .long 1072132096 > > > + .long 0 > > > + .long 1072131072 > > > + .long 0 > > > + .long 1072129024 > > > + .long 0 > > > + .long 1072128000 > > > + .long 0 > > > + .long 1072125952 > > > + .long 0 > > > + .long 1072124928 > > > + .long 0 > > > + .long 1072122880 > > > + .long 0 > > > + .long 1072120832 > > > + .long 0 > > > + .long 1072119808 > > > + .long 0 > > > + .long 1072117760 > > > + .long 0 > > > + .long 1072116736 > > > + .long 0 > > > + .long 1072114688 > > > + .long 0 > > > + .long 1072113664 > > > + .long 0 > > > + .long 1072111616 > > > + .long 0 > > > + .long 1072110592 > > > + .long 0 > > > + .long 1072108544 > > > + .long 0 > > > + .long 1072107520 > > > + .long 0 > > > + .long 1072105472 > > > + .long 0 > > > + .long 1072104448 > > > + .long 0 > > > + .long 1072102400 > > > + .long 0 > > > + .long 1072101376 > > > + .long 0 > > > + .long 1072099328 > > > + .long 0 > > > + .long 1072098304 > > > + .long 0 > > > + .long 1072096256 > > > + .long 0 > > > + .long 1072095232 > > > + .long 0 > > > + .long 1072094208 > > > + .long 0 > > > + .long 1072092160 > > > + .long 0 > > > + .long 1072091136 > > > + .long 0 > > > + .long 1072089088 > > > + .long 0 > > > + .long 1072088064 > > > + .long 0 > > > + .long 1072086016 > > > + .long 0 > > > + .long 1072084992 > > > + .long 0 > > > + .long 1072082944 > > > + .long 0 > > > + .long 1072081920 > > > + .long 0 > > > + .long 1072080896 > > > + .long 0 > > > + .long 1072078848 > > > + .long 0 > > > + .long 1072075776 > > > + .long 0 > > > + .long 1072073728 > > > + .long 0 > > > + .long 1072070656 > > > + .long 0 > > > + .long 1072067584 > > > + .long 0 > > > + .long 1072064512 > > > + .long 0 > > > + .long 1072061440 > > > + .long 0 > > > + .long 1072059392 > > > + .long 0 > > > + .long 1072056320 > > > + .long 0 > > > + .long 1072053248 > > > + .long 0 > > > + .long 1072051200 > > > + .long 0 > > > + .long 1072048128 > > > + .long 0 > > > + .long 1072045056 > > > + .long 0 > > > + .long 1072043008 > > > + .long 0 > > > + .long 1072039936 > > > + .long 0 > > > + .long 1072037888 > > > + .long 0 > > > + .long 1072034816 > > > + .long 0 > > > + .long 1072031744 > > > + .long 0 > > > + .long 1072029696 > > > + .long 0 > > > + .long 1072026624 > > > + .long 0 > > > + .long 1072024576 > > > + .long 0 > > > + .long 1072021504 > > > + .long 0 > > > + .long 1072019456 > > > + .long 0 > > > + .long 1072016384 > > > + .long 0 > > > + .long 1072014336 > > > + .long 0 > > > + .long 1072011264 > > > + .long 0 > > > + .long 1072009216 > > > + .long 0 > > > + .long 1072006144 > > > + .long 0 > > > + .long 1072004096 > > > + .long 0 > > > + .long 1072002048 > > > + .long 0 > > > + .long 1071998976 > > > + .long 0 > > > + .long 1071996928 > > > + .long 0 > > > + .long 1071993856 > > > + .long 0 > > > + .long 1071991808 > > > + .long 0 > > > + .long 1071989760 > > > + .long 0 > > > + .long 1071986688 > > > + .long 0 > > > + .long 1071984640 > > > + .long 0 > > > + .long 1071982592 > > > + .long 0 > > > + .long 1071979520 > > > + .long 0 > > > + .long 1071977472 > > > + .long 0 > > > + .long 1071975424 > > > + .long 0 > > > + .long 1071972352 > > > + .long 0 > > > + .long 1071970304 > > > + .long 0 > > > + .long 1071968256 > > > + .long 0 > > > + .long 1071966208 > > > + .long 0 > > > + .long 1071964160 > > > + .long 0 > > > + .long 1071961088 > > > + .long 0 > > > + .long 1071959040 > > > + .long 0 > > > + .long 1071956992 > > > + .long 0 > > > + .long 1071954944 > > > + .long 0 > > > + .long 1071952896 > > > + .long 0 > > > + .long 1071949824 > > > + .long 0 > > > + .long 1071947776 > > > + .long 0 > > > + .long 1071945728 > > > + .long 0 > > > + .long 1071943680 > > > + .long 0 > > > + .long 1071941632 > > > + .long 0 > > > + .long 1071939584 > > > + .long 0 > > > + .long 1071937536 > > > + .long 0 > > > + .long 1071935488 > > > + .long 0 > > > + .long 1071933440 > > > + .long 0 > > > + .long 1071930368 > > > + .long 0 > > > + .long 1071928320 > > > + .long 0 > > > + .long 1071926272 > > > + .long 0 > > > + .long 1071924224 > > > + .long 0 > > > + .long 1071922176 > > > + .long 0 > > > + .long 1071920128 > > > + .long 0 > > > + .long 1071918080 > > > + .long 0 > > > + .long 1071916032 > > > + .long 0 > > > + .long 1071913984 > > > + .long 0 > > > + .long 1071911936 > > > + .long 0 > > > + .long 1071909888 > > > + .long 0 > > > + .long 1071907840 > > > + .long 0 > > > + .long 1071905792 > > > + .long 0 > > > + .long 1071903744 > > > + .long 0 > > > + .long 1071901696 > > > + .long 0 > > > + .long 1071900672 > > > + .long 0 > > > + .long 1071898624 > > > + .long 0 > > > + .long 1071896576 > > > + .long 0 > > > + .long 1071894528 > > > + .long 0 > > > + .long 1071892480 > > > + .long 0 > > > + .long 1071890432 > > > + .long 0 > > > + .long 1071888384 > > > + .long 0 > > > + .long 1071886336 > > > + .long 0 > > > + .long 1071884288 > > > + .long 0 > > > + .long 1071883264 > > > + .long 0 > > > + .long 1071881216 > > > + .long 0 > > > + .long 1071879168 > > > + .long 0 > > > + .long 1071877120 > > > + .long 0 > > > + .long 1071875072 > > > + .long 0 > > > + .long 1071873024 > > > + .long 0 > > > + .long 1071872000 > > > + .long 0 > > > + .long 1071869952 > > > + .long 0 > > > + .long 1071867904 > > > + .long 0 > > > + .long 1071865856 > > > + .long 0 > > > + .long 1071864832 > > > + .long 0 > > > + .long 1071862784 > > > + .long 0 > > > + .long 1071860736 > > > + .long 0 > > > + .long 1071858688 > > > + .long 0 > > > + .long 1071856640 > > > + .long 0 > > > + .long 1071855616 > > > + .long 0 > > > + .long 1071853568 > > > + .long 0 > > > + .long 1071851520 > > > + .long 0 > > > + .long 1071850496 > > > + .long 0 > > > + .long 1071848448 > > > + .long 0 > > > + .long 1071846400 > > > + .long 0 > > > + .long 1071844352 > > > + .long 0 > > > + .long 1071843328 > > > + .long 0 > > > + .long 1071841280 > > > + .long 0 > > > + .long 1071839232 > > > + .long 0 > > > + .long 1071838208 > > > + .long 0 > > > + .long 1071836160 > > > + .long 0 > > > + .long 1071834112 > > > + .long 0 > > > + .long 1071833088 > > > + .long 0 > > > + .long 1071831040 > > > + .long 0 > > > + .long 1071830016 > > > + .long 0 > > > + .long 1071827968 > > > + .long 0 > > > + .long 1071825920 > > > + .long 0 > > > + .long 1071824896 > > > + .long 0 > > > + .long 1071822848 > > > + .long 0 > > > + .long 1071821824 > > > + .long 0 > > > + .long 1071819776 > > > + .long 0 > > > + .long 1071817728 > > > + .long 0 > > > + .long 1071816704 > > > + .long 0 > > > + .long 1071814656 > > > + .long 0 > > > + .long 1071813632 > > > + .long 0 > > > + .long 1071811584 > > > + .long 0 > > > + .long 1071810560 > > > + .long 0 > > > + .long 1071808512 > > > + .long 0 > > > + .long 1071806464 > > > + .long 0 > > > + .long 1071805440 > > > + .long 0 > > > + .long 1071803392 > > > + .long 0 > > > + .long 1071802368 > > > + .long 0 > > > + .long 1071800320 > > > + .long 0 > > > + .long 1071799296 > > > + .long 0 > > > + .long 1071797248 > > > + .long 0 > > > + .long 1071796224 > > > + .long 0 > > > + .long 1071794176 > > > + .long 0 > > > + .long 1071793152 > > > + .long 0 > > > + .long 1071791104 > > > + .long 0 > > > + .long 1071790080 > > > + .long 0 > > > + .long 1071788032 > > > + .long 0 > > > + .long 1071787008 > > > + .long 0 > > > + .long 1071784960 > > > + .long 0 > > > + .long 1071783936 > > > + .long 0 > > > + .long 1071782912 > > > + .long 0 > > > + .long 1071780864 > > > + .long 0 > > > + .long 1071779840 > > > + .long 0 > > > + .long 1071777792 > > > + .long 0 > > > + .long 1071776768 > > > + .long 0 > > > + .long 1071774720 > > > + .long 0 > > > + .long 1071773696 > > > + .long 0 > > > + .long 1071772672 > > > + .long 0 > > > + .long 1071770624 > > > + .long 0 > > > + .long 1071769600 > > > + .long 0 > > > + .long 1071767552 > > > + .long 0 > > > + .long 1071766528 > > > + .long 0 > > > + .long 1071765504 > > > + .long 0 > > > + .long 1071763456 > > > + .long 0 > > > + .long 1071762432 > > > + .long 0 > > > + .long 1071760384 > > > + .long 0 > > > + .long 1071759360 > > > + .long 0 > > > + .long 1071758336 > > > + .long 0 > > > + .long 1071756288 > > > + .long 0 > > > + .long 1071755264 > > > + .long 0 > > > + .long 1071754240 > > > + .long 0 > > > + .long 1071752192 > > > + .long 0 > > > + .long 1071751168 > > > + .long 0 > > > + .long 1071750144 > > > + .long 0 > > > + .long 1071748096 > > > + .long 0 > > > + .long 1071747072 > > > + .long 0 > > > + .long 1071746048 > > > + .long 0 > > > + .long 1071744000 > > > + .long 0 > > > + .long 1071742976 > > > + .long 0 > > > + .long 1071741952 > > > + .long 0 > > > + .long 1071739904 > > > + .long 0 > > > + .long 1071738880 > > > + .long 0 > > > + .long 1071737856 > > > + .long 0 > > > + .long 1071736832 > > > + .long 0 > > > + .long 1071734784 > > > + .long 0 > > > + .long 1071733760 > > > + .long 0 > > > + .long 1071732736 > > > + .long 0 > > > + .long 1071730688 > > > + .long 0 > > > + .long 1071729664 > > > + .long 0 > > > + .long 1071728640 > > > + .long 0 > > > + .long 1071727616 > > > + .long 0 > > > + .long 1071725568 > > > + .long 0 > > > + .long 1071724544 > > > + .long 0 > > > + .long 1071723520 > > > + .long 0 > > > + .long 1071722496 > > > + .long 0 > > > + .long 1071720448 > > > + .long 0 > > > + .long 1071719424 > > > + .long 0 > > > + .long 1071718400 > > > + .long 0 > > > + .long 1071717376 > > > + .long 0 > > > + .long 1071715328 > > > + .long 0 > > > + .long 1071714304 > > > + .long 0 > > > + .long 1071713280 > > > + .long 0 > > > + .long 1071712256 > > > + .long 0 > > > + .long 1071711232 > > > + .long 0 > > > + .long 1071709184 > > > + .long 0 > > > + .long 1071708160 > > > + .long 0 > > > + .long 1071707136 > > > + .long 0 > > > + .long 1071706112 > > > + .long 0 > > > + .long 1071705088 > > > + .long 0 > > > + .long 1071704064 > > > + .long 0 > > > + .long 1071702016 > > > + .long 0 > > > + .long 1071700992 > > > + .long 0 > > > + .long 1071699968 > > > + .long 0 > > > + .long 1071698944 > > > + .long 0 > > > + .long 1071697920 > > > + .long 0 > > > + .long 1071696896 > > > + .long 0 > > > + .long 1071694848 > > > + .long 0 > > > + .long 1071693824 > > > + .long 0 > > > + .long 1071692800 > > > + .long 0 > > > + .long 1071691776 > > > + .long 0 > > > + .long 1071690752 > > > + .long 0 > > > + .long 1071689728 > > > + .long 0 > > > + .long 1071688704 > > > + .long 0 > > > + .long 1071686656 > > > + .long 0 > > > + .long 1071685632 > > > + .long 0 > > > + .long 1071684608 > > > + .long 0 > > > + .long 1071683584 > > > + .long 0 > > > + .long 1071682560 > > > + .long 0 > > > + .long 1071681536 > > > + .long 0 > > > + .long 1071680512 > > > + .long 0 > > > + .long 1071679488 > > > + .long 0 > > > + .long 1071677440 > > > + .long 0 > > > + .long 1071676416 > > > + .long 0 > > > + .long 1071675392 > > > + .long 0 > > > + .long 1071674368 > > > + .long 0 > > > + .long 1071673344 > > > + .long 0 > > > + .long 1071672320 > > > + .long 0 > > > + .long 1071671296 > > > + .long 0 > > > + .long 1071670272 > > > + .long 0 > > > + .long 1071669248 > > > + .long 0 > > > + .long 1071668224 > > > + .long 0 > > > + .long 1071667200 > > > + .long 0 > > > + .long 1071666176 > > > + .long 0 > > > + .long 1071665152 > > > + .long 0 > > > + .long 1071663104 > > > + .long 0 > > > + .long 1071662080 > > > + .long 0 > > > + .long 1071661056 > > > + .long 0 > > > + .long 1071660032 > > > + .long 0 > > > + .long 1071659008 > > > + .long 0 > > > + .long 1071657984 > > > + .long 0 > > > + .long 1071656960 > > > + .long 0 > > > + .long 1071655936 > > > + .long 0 > > > + .long 1071654912 > > > + .long 0 > > > + .long 1071653888 > > > + .long 0 > > > + .long 1071652864 > > > + .long 0 > > > + .long 1071651840 > > > + .long 0 > > > + .long 1071650816 > > > + .long 0 > > > + .long 1071649792 > > > + .long 0 > > > + .long 1071648768 > > > + .long 0 > > > + .long 1071647744 > > > + .long 0 > > > + .long 1071646720 > > > + .long 0 > > > + .long 1071645696 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1101004800 > > > + .long 1073741824 > > > + .long 1095761920 > > > + .long 256 > > > + .long 1118830592 > > > + .long 0 > > > + .long 1017118720 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 0 > > > + .long 1072693248 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 0 > > > + .long 1476395008 > > > + .long 1069897045 > > > + .long 1768958041 > > > + .long 3189069141 > > > + .long 805306368 > > > + .long 1068708659 > > > + .long 3580333578 > > > + .long 1040816593 > > > + .long 3067382784 > > > + .long 1067899757 > > > + .long 3397590151 > > > + .long 1067392113 > > > + .long 2939529726 > > > + .long 1066854585 > > > + .long 1423429166 > > > + .long 1066517752 > > > + .long 1775218934 > > > + .long 1066178574 > > > + .long 1185392460 > > > + .long 1065859647 > > > + .long 289998670 > > > + .long 1065577550 > > > + .long 3179807072 > > > + .long 1065648121 > > > + .long 3781007284 > > > + .long 1061576176 > > > + .long 2482106687 > > > + .long 1067019199 > > > + .long 763519713 > > > + .long 3214591591 > > > + .long 3695107454 > > > + .long 1067530646 > > > + .long 0 > > > + .long 1073741824 > > > + .long 1124791109 > > > + .long 1006764147 > > > + .long 1476395008 > > > + .long 1069897045 > > > + .long 1953913876 > > > + .long 3189069141 > > > + .long 805306368 > > > + .long 1067660083 > > > + .long 165110192 > > > + .long 1039768033 > > > + .long 3067304082 > > > + .long 1065802605 > > > + .long 3404727379 > > > + .long 1064246385 > > > + .long 2737480376 > > > + .long 1062660281 > > > + .long 933797922 > > > + .long 1061274873 > > > + .long 1475716730 > > > + .long 1059887095 > > > + .long 1511619763 > > > + .long 1058519827 > > > + .long 556024211 > > > + .long 1057187555 > > > + .long 3482101045 > > > + .long 1056217350 > > > + .long 1174622859 > > > + .long 1050762633 > > > + .long 899668651 > > > + .long 1055506366 > > > + .long 1081094694 > > > + .long 3202035365 > > > + .long 2559814773 > > > + .long 1053906576 > > > + .long 0 > > > + .long 3219128320 > > > + .long 0 > > > + .long 1071120384 > > > + .long 0 > > > + .long 3218341888 > > > + .long 0 > > > + .long 1070694400 > > > + .long 0 > > > + .long 3218046976 > > > + .long 0 > > > + .long 1070391296 > > > + .long 0 > > > + .long 3217739776 > > > + .type _vmldACosHATab,@object > > > + .size _vmldACosHATab,4520 > > > + .space 88, 0x00 > > > + .align 16 > > > + > > > +.FLT_197: > > > + .long 0x00000000,0x80000000,0x00000000,0x00000000 > > > + .type .FLT_197,@object > > > + .size .FLT_197,16 > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core-sse.S b/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core-sse.S > > > new file mode 100644 > > > index 0000000000..750f71c81c > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core-sse.S > > > @@ -0,0 +1,20 @@ > > > +/* SSE version of vectorized acos, vector length is 4. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#define _ZGVdN4v_acos _ZGVdN4v_acos_sse_wrapper > > > +#include "../svml_d_acos4_core.S" > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core.c b/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core.c > > > new file mode 100644 > > > index 0000000000..6453e7ebe2 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core.c > > > @@ -0,0 +1,27 @@ > > > +/* Multiple versions of vectorized acos, vector length is 4. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#define SYMBOL_NAME _ZGVdN4v_acos > > > +#include "ifunc-mathvec-avx2.h" > > > + > > > +libc_ifunc_redirected (REDIRECT_NAME, SYMBOL_NAME, IFUNC_SELECTOR ()); > > > + > > > +#ifdef SHARED > > > +__hidden_ver1 (_ZGVdN4v_acos, __GI__ZGVdN4v_acos, __redirect__ZGVdN4v_acos) > > > + __attribute__ ((visibility ("hidden"))); > > > +#endif > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core_avx2.S b/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core_avx2.S > > > new file mode 100644 > > > index 0000000000..db716b690e > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core_avx2.S > > > @@ -0,0 +1,2777 @@ > > > +/* Function acos vectorized with AVX2. > > > + Copyright (C) 2021 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 > > > + https://www.gnu.org/licenses/. */ > > > + > > > +/* > > > + * ALGORITHM DESCRIPTION: > > > + * > > > + * SelMask = (|x| >= 0.5) ? 1 : 0; > > > + * R = SelMask ? sqrt(0.5 - 0.5*|x|) : |x| > > > + * acos(|x|) = SelMask ? 2*Poly(R) : (Pi/2 - Poly(R)) > > > + * acos(x) = sign(x) ? (Pi - acos(|x|)) : acos(|x|) > > > + * > > > + */ > > > + > > > +#include <sysdep.h> > > > + > > > + .text > > > +ENTRY(_ZGVdN4v_acos_avx2) > > > + pushq %rbp > > > + cfi_def_cfa_offset(16) > > > + movq %rsp, %rbp > > > + cfi_def_cfa(6, 16) > > > + cfi_offset(6, -16) > > > + andq $-64, %rsp > > > + subq $384, %rsp > > > + vmovupd __svml_dacos_data_internal(%rip), %ymm6 > > > + vmovupd 64+__svml_dacos_data_internal(%rip), %ymm7 > > > + vmovups %ymm8, 32(%rsp) > > > + vmovups %ymm10, 160(%rsp) > > > + vmovups %ymm9, 96(%rsp) > > > + vmovups %ymm11, 192(%rsp) > > > + vmovups %ymm12, 224(%rsp) > > > + vmovups %ymm13, 256(%rsp) > > > + vmovups %ymm15, 320(%rsp) > > > + vmovups %ymm14, 288(%rsp) > > > + vmovapd %ymm0, %ymm5 > > > + > > > +/* x = -|arg| */ > > > + vorpd %ymm5, %ymm6, %ymm4 > > > + > > > +/* Y = 0.5 + 0.5*(-x) */ > > > + vfmadd231pd %ymm4, %ymm7, %ymm7 > > > + > > > +/* x^2 */ > > > + vmulpd %ymm4, %ymm4, %ymm1 > > > + > > > +/* NaN processed in special branch (so wind test passed) */ > > > + vcmpnge_uqpd 256+__svml_dacos_data_internal(%rip), %ymm4, %ymm0 > > > + .cfi_escape 0x10, 0xdb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xdc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe0, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xdd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xde, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xdf, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xe0, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xe1, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xe2, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x22 > > > + > > > +/* S ~ 2*sqrt(Y) */ > > > + vcmplt_oqpd 128+__svml_dacos_data_internal(%rip), %ymm7, %ymm9 > > > + vaddpd %ymm7, %ymm7, %ymm13 > > > + vminpd %ymm7, %ymm1, %ymm2 > > > + vandpd %ymm5, %ymm6, %ymm3 > > > + vcvtpd2ps %ymm7, %xmm6 > > > + vcmpnlt_uqpd %ymm7, %ymm2, %ymm1 > > > + vmovupd 768+__svml_dacos_data_internal(%rip), %ymm7 > > > + vrsqrtps %xmm6, %xmm8 > > > + vmovupd 640+__svml_dacos_data_internal(%rip), %ymm6 > > > + vfmadd213pd 800+__svml_dacos_data_internal(%rip), %ymm2, %ymm7 > > > + vcvtps2pd %xmm8, %ymm10 > > > + vfmadd213pd 672+__svml_dacos_data_internal(%rip), %ymm2, %ymm6 > > > + vandnpd %ymm10, %ymm9, %ymm11 > > > + vmulpd %ymm11, %ymm11, %ymm12 > > > + vmulpd %ymm13, %ymm11, %ymm15 > > > + vmovupd 704+__svml_dacos_data_internal(%rip), %ymm9 > > > + vmulpd %ymm2, %ymm2, %ymm11 > > > + vmovupd 832+__svml_dacos_data_internal(%rip), %ymm10 > > > + vfmsub213pd 384+__svml_dacos_data_internal(%rip), %ymm12, %ymm13 > > > + vmovupd 896+__svml_dacos_data_internal(%rip), %ymm12 > > > + vfmadd213pd 736+__svml_dacos_data_internal(%rip), %ymm2, %ymm9 > > > + vmulpd %ymm11, %ymm11, %ymm8 > > > + vfmadd213pd 864+__svml_dacos_data_internal(%rip), %ymm2, %ymm10 > > > + vmulpd %ymm13, %ymm15, %ymm14 > > > + vfmadd213pd 928+__svml_dacos_data_internal(%rip), %ymm2, %ymm12 > > > + vfmadd213pd %ymm7, %ymm11, %ymm9 > > > + vmovmskpd %ymm0, %edx > > > + vmovupd 448+__svml_dacos_data_internal(%rip), %ymm0 > > > + vfmadd213pd 480+__svml_dacos_data_internal(%rip), %ymm13, %ymm0 > > > + vfmadd213pd 512+__svml_dacos_data_internal(%rip), %ymm13, %ymm0 > > > + vfmadd213pd 544+__svml_dacos_data_internal(%rip), %ymm13, %ymm0 > > > + > > > +/* polynomial */ > > > + vmovupd 576+__svml_dacos_data_internal(%rip), %ymm13 > > > + vfnmadd213pd %ymm15, %ymm14, %ymm0 > > > + vfmadd213pd 608+__svml_dacos_data_internal(%rip), %ymm2, %ymm13 > > > + vblendvpd %ymm1, %ymm0, %ymm4, %ymm4 > > > + vfmadd213pd %ymm6, %ymm11, %ymm13 > > > + > > > +/* X<X^2 iff X<0 */ > > > + vcmplt_oqpd %ymm2, %ymm5, %ymm6 > > > + vfmadd213pd %ymm9, %ymm8, %ymm13 > > > + vfmadd213pd %ymm10, %ymm11, %ymm13 > > > + vfmadd213pd %ymm12, %ymm11, %ymm13 > > > + vmulpd %ymm13, %ymm2, %ymm14 > > > + vxorpd %ymm3, %ymm4, %ymm3 > > > + vandpd 1024+__svml_dacos_data_internal(%rip), %ymm1, %ymm2 > > > + vfmadd213pd %ymm3, %ymm3, %ymm14 > > > + vandpd %ymm6, %ymm2, %ymm2 > > > + vandnpd 1152+__svml_dacos_data_internal(%rip), %ymm1, %ymm7 > > > + vaddpd %ymm7, %ymm2, %ymm8 > > > + vaddpd %ymm14, %ymm8, %ymm0 > > > + testl %edx, %edx > > > + jne .LBL_1_3 > > > + > > > +.LBL_1_2: > > > + vmovups 32(%rsp), %ymm8 > > > + cfi_restore(91) > > > + vmovups 96(%rsp), %ymm9 > > > + cfi_restore(92) > > > + vmovups 160(%rsp), %ymm10 > > > + cfi_restore(93) > > > + vmovups 192(%rsp), %ymm11 > > > + cfi_restore(94) > > > + vmovups 224(%rsp), %ymm12 > > > + cfi_restore(95) > > > + vmovups 256(%rsp), %ymm13 > > > + cfi_restore(96) > > > + vmovups 288(%rsp), %ymm14 > > > + cfi_restore(97) > > > + vmovups 320(%rsp), %ymm15 > > > + cfi_restore(98) > > > + movq %rbp, %rsp > > > + popq %rbp > > > + cfi_def_cfa(7, 8) > > > + cfi_restore(6) > > > + ret > > > + cfi_def_cfa(6, 16) > > > + cfi_offset(6, -16) > > > + .cfi_escape 0x10, 0xdb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xdc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe0, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xdd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xde, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xdf, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xe0, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xe1, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xe2, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x22 > > > + > > > +.LBL_1_3: > > > + vmovupd %ymm5, 64(%rsp) > > > + vmovupd %ymm0, 128(%rsp) > > > + je .LBL_1_2 > > > + xorl %eax, %eax > > > + vzeroupper > > > + movq %rsi, 8(%rsp) > > > + movq %rdi, (%rsp) > > > + movq %r12, 24(%rsp) > > > + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x88, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x98, 0xfe, 0xff, 0xff, 0x22 > > > + movl %eax, %r12d > > > + movq %r13, 16(%rsp) > > > + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x90, 0xfe, 0xff, 0xff, 0x22 > > > + movl %edx, %r13d > > > + > > > +.LBL_1_7: > > > + btl %r12d, %r13d > > > + jc .LBL_1_10 > > > + > > > +.LBL_1_8: > > > + incl %r12d > > > + cmpl $4, %r12d > > > + jl .LBL_1_7 > > > + movq 8(%rsp), %rsi > > > + cfi_restore(4) > > > + movq (%rsp), %rdi > > > + cfi_restore(5) > > > + movq 24(%rsp), %r12 > > > + cfi_restore(12) > > > + movq 16(%rsp), %r13 > > > + cfi_restore(13) > > > + vmovupd 128(%rsp), %ymm0 > > > + jmp .LBL_1_2 > > > + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x88, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x98, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x90, 0xfe, 0xff, 0xff, 0x22 > > > + > > > +.LBL_1_10: > > > + lea 64(%rsp,%r12,8), %rdi > > > + lea 128(%rsp,%r12,8), %rsi > > > + call __svml_dacos_cout_rare_internal > > > + jmp .LBL_1_8 > > > + > > > +END(_ZGVdN4v_acos_avx2) > > > + > > > + .align 16,0x90 > > > + > > > +__svml_dacos_cout_rare_internal: > > > + > > > + cfi_startproc > > > + > > > + xorl %eax, %eax > > > + movzwl 6(%rdi), %edx > > > + andl $32752, %edx > > > + movb 7(%rdi), %cl > > > + movsd (%rdi), %xmm1 > > > + cmpl $32752, %edx > > > + je .LBL_2_20 > > > + movsd %xmm1, -32(%rsp) > > > + andb $127, %cl > > > + movb %cl, -25(%rsp) > > > + movsd -32(%rsp), %xmm12 > > > + movsd 4168+_vmldACosHATab(%rip), %xmm0 > > > + comisd %xmm12, %xmm0 > > > + jbe .LBL_2_14 > > > + movsd 4176+_vmldACosHATab(%rip), %xmm1 > > > + comisd %xmm12, %xmm1 > > > + jbe .LBL_2_10 > > > + comisd 4128+_vmldACosHATab(%rip), %xmm12 > > > + jbe .LBL_2_9 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm6 > > > + movaps %xmm12, %xmm8 > > > + mulsd %xmm12, %xmm6 > > > + movaps %xmm12, %xmm7 > > > + movsd %xmm6, -40(%rsp) > > > + movsd -40(%rsp), %xmm13 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm5 > > > + subsd -32(%rsp), %xmm13 > > > + movsd %xmm13, -48(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + movsd -48(%rsp), %xmm14 > > > + subsd %xmm14, %xmm15 > > > + movaps %xmm12, %xmm14 > > > + movsd %xmm15, -40(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + subsd %xmm6, %xmm8 > > > + movsd %xmm8, -48(%rsp) > > > + movsd -40(%rsp), %xmm9 > > > + movaps %xmm9, %xmm4 > > > + addsd %xmm9, %xmm7 > > > + mulsd %xmm9, %xmm4 > > > + movsd -48(%rsp), %xmm10 > > > + movaps %xmm4, %xmm11 > > > + mulsd %xmm10, %xmm7 > > > + mulsd %xmm4, %xmm5 > > > + addsd %xmm7, %xmm11 > > > + movsd 4312+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm5, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm5 > > > + subsd %xmm4, %xmm1 > > > + addsd 4304+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm1, -48(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + addsd 4296+_vmldACosHATab(%rip), %xmm8 > > > + subsd %xmm2, %xmm0 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + addsd 4288+_vmldACosHATab(%rip), %xmm8 > > > + subsd %xmm3, %xmm4 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm4, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + mulsd %xmm6, %xmm9 > > > + addsd 4280+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm6, %xmm10 > > > + mulsd %xmm11, %xmm8 > > > + mulsd %xmm9, %xmm5 > > > + addsd 4272+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movaps %xmm9, %xmm0 > > > + movsd -48(%rsp), %xmm13 > > > + movaps %xmm6, %xmm4 > > > + movsd %xmm5, -40(%rsp) > > > + addsd %xmm13, %xmm7 > > > + addsd 4264+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm7, %xmm14 > > > + mulsd %xmm11, %xmm8 > > > + addsd %xmm14, %xmm10 > > > + addsd 4256+_vmldACosHATab(%rip), %xmm8 > > > + movsd -40(%rsp), %xmm1 > > > + mulsd %xmm11, %xmm8 > > > + subsd %xmm9, %xmm1 > > > + addsd %xmm10, %xmm9 > > > + addsd 4248+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm9, %xmm7 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm1, -48(%rsp) > > > + movsd -40(%rsp), %xmm2 > > > + movsd -48(%rsp), %xmm15 > > > + subsd %xmm15, %xmm2 > > > + addsd 4240+_vmldACosHATab(%rip), %xmm8 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm5 > > > + mulsd %xmm11, %xmm8 > > > + subsd %xmm5, %xmm0 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movsd -48(%rsp), %xmm5 > > > + movaps %xmm5, %xmm13 > > > + addsd 4232+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm3, %xmm4 > > > + addsd %xmm10, %xmm13 > > > + mulsd %xmm11, %xmm8 > > > + mulsd %xmm13, %xmm6 > > > + addsd 4224+_vmldACosHATab(%rip), %xmm8 > > > + addsd %xmm7, %xmm6 > > > + mulsd %xmm11, %xmm8 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm7 > > > + movaps %xmm4, %xmm13 > > > + mulsd %xmm4, %xmm7 > > > + addsd 4216+_vmldACosHATab(%rip), %xmm8 > > > + movsd %xmm7, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4200+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm4, %xmm1 > > > + mulsd %xmm9, %xmm11 > > > + addsd %xmm6, %xmm4 > > > + movsd %xmm1, -48(%rsp) > > > + movaps %xmm12, %xmm9 > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + movsd 4192+_vmldACosHATab(%rip), %xmm1 > > > + subsd %xmm2, %xmm0 > > > + mulsd %xmm1, %xmm3 > > > + mulsd %xmm1, %xmm10 > > > + mulsd %xmm4, %xmm8 > > > + addsd %xmm3, %xmm9 > > > + mulsd %xmm1, %xmm5 > > > + addsd %xmm10, %xmm11 > > > + movsd %xmm0, -40(%rsp) > > > + addsd %xmm11, %xmm8 > > > + movsd -40(%rsp), %xmm7 > > > + addsd %xmm5, %xmm8 > > > + subsd %xmm7, %xmm13 > > > + movsd %xmm13, -48(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + movsd %xmm9, -40(%rsp) > > > + addsd %xmm2, %xmm6 > > > + movsd -40(%rsp), %xmm10 > > > + movsd %xmm3, -56(%rsp) > > > + subsd %xmm10, %xmm12 > > > + movsd 4208+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm12, %xmm3 > > > + mulsd %xmm4, %xmm0 > > > + mulsd %xmm4, %xmm6 > > > + movsd %xmm3, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movaps %xmm3, %xmm12 > > > + movsd -48(%rsp), %xmm7 > > > + addsd %xmm0, %xmm12 > > > + addsd %xmm7, %xmm8 > > > + movsd %xmm12, -40(%rsp) > > > + movsd -40(%rsp), %xmm12 > > > + subsd %xmm12, %xmm3 > > > + addsd %xmm3, %xmm0 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movsd -48(%rsp), %xmm0 > > > + movsd (%rdi), %xmm1 > > > + addsd %xmm8, %xmm0 > > > + comisd 4184+_vmldACosHATab(%rip), %xmm1 > > > + addsd %xmm0, %xmm6 > > > + jbe .LBL_2_7 > > > + movsd 4136+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm2, %xmm0 > > > + subsd %xmm3, %xmm0 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4144+_vmldACosHATab(%rip), %xmm0 > > > + subsd %xmm1, %xmm2 > > > + subsd %xmm6, %xmm0 > > > + subsd %xmm3, %xmm2 > > > + movsd %xmm2, -48(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd -48(%rsp), %xmm3 > > > + addsd %xmm3, %xmm0 > > > + jmp .LBL_2_8 > > > + > > > +.LBL_2_7: > > > + movsd 4136+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm3, %xmm0 > > > + addsd %xmm2, %xmm0 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + subsd %xmm1, %xmm2 > > > + addsd %xmm2, %xmm3 > > > + movsd %xmm3, -48(%rsp) > > > + movsd 4144+_vmldACosHATab(%rip), %xmm3 > > > + movsd -40(%rsp), %xmm1 > > > + addsd %xmm3, %xmm6 > > > + movsd -48(%rsp), %xmm0 > > > + addsd %xmm6, %xmm0 > > > + > > > +.LBL_2_8: > > > + addsd %xmm0, %xmm1 > > > + movsd %xmm1, (%rsi) > > > + ret > > > + > > > +.LBL_2_9: > > > + movsd 4144+_vmldACosHATab(%rip), %xmm1 > > > + addsd %xmm0, %xmm12 > > > + movsd %xmm12, -40(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + mulsd -32(%rsp), %xmm0 > > > + movsd %xmm0, -56(%rsp) > > > + movb -49(%rsp), %dl > > > + movb 7(%rdi), %dil > > > + andb $127, %dl > > > + andb $-128, %dil > > > + orb %dil, %dl > > > + movb %dl, -49(%rsp) > > > + subsd -56(%rsp), %xmm1 > > > + addsd 4136+_vmldACosHATab(%rip), %xmm1 > > > + movsd %xmm1, (%rsi) > > > + ret > > > + > > > +.LBL_2_10: > > > + movaps %xmm0, %xmm8 > > > + movzwl 4174+_vmldACosHATab(%rip), %r9d > > > + pxor %xmm13, %xmm13 > > > + andl $-32753, %r9d > > > + subsd %xmm12, %xmm8 > > > + subsd %xmm0, %xmm13 > > > + mulsd %xmm8, %xmm1 > > > + movsd %xmm1, -56(%rsp) > > > + movzwl -50(%rsp), %ecx > > > + andl $32752, %ecx > > > + shrl $4, %ecx > > > + addl $-1023, %ecx > > > + movl %ecx, %r8d > > > + movl %ecx, %edx > > > + negl %r8d > > > + addl $1023, %r8d > > > + andl $2047, %r8d > > > + shll $4, %r8d > > > + movsd %xmm0, -32(%rsp) > > > + orl %r8d, %r9d > > > + movw %r9w, -26(%rsp) > > > + andl $1, %edx > > > + movsd -32(%rsp), %xmm4 > > > + lea _vmldACosHATab(%rip), %r8 > > > + mulsd %xmm4, %xmm1 > > > + movl %edx, %r10d > > > + movaps %xmm1, %xmm15 > > > + movsd 4112+_vmldACosHATab(%rip), %xmm6 > > > + addsd %xmm1, %xmm15 > > > + jne .LBL_73 > > > + movaps %xmm1, %xmm15 > > > + > > > +.LBL_73: > > > + mulsd %xmm15, %xmm6 > > > + movaps %xmm15, %xmm7 > > > + movaps %xmm6, %xmm9 > > > + subl %edx, %ecx > > > + movsd 4120+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm15, %xmm9 > > > + addsd %xmm1, %xmm11 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -48(%rsp), %xmm10 > > > + movsd %xmm11, -24(%rsp) > > > + subsd %xmm10, %xmm6 > > > + movl -24(%rsp), %r11d > > > + movaps %xmm6, %xmm14 > > > + shll $8, %r10d > > > + andl $511, %r11d > > > + addl %r10d, %r11d > > > + subsd %xmm6, %xmm7 > > > + movsd (%r8,%r11,8), %xmm5 > > > + addsd %xmm7, %xmm14 > > > + mulsd %xmm5, %xmm6 > > > + movaps %xmm5, %xmm12 > > > + mulsd %xmm5, %xmm12 > > > + mulsd %xmm12, %xmm14 > > > + movsd 4512+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm13, %xmm14 > > > + mulsd %xmm14, %xmm4 > > > + shrl $1, %ecx > > > + addsd 4504+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + addl $1023, %ecx > > > + andl $2047, %ecx > > > + addsd 4496+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movzwl 4174+_vmldACosHATab(%rip), %r9d > > > + shll $4, %ecx > > > + andl $-32753, %r9d > > > + movsd %xmm0, -16(%rsp) > > > + orl %ecx, %r9d > > > + movw %r9w, -10(%rsp) > > > + movsd -16(%rsp), %xmm9 > > > + mulsd %xmm9, %xmm6 > > > + addsd 4488+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm3 > > > + mulsd %xmm6, %xmm3 > > > + addsd 4480+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movsd %xmm3, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4352+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm6, %xmm1 > > > + addsd 4472+_vmldACosHATab(%rip), %xmm4 > > > + addsd 4360+_vmldACosHATab(%rip), %xmm11 > > > + mulsd %xmm14, %xmm4 > > > + mulsd %xmm8, %xmm11 > > > + addsd 4464+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + mulsd %xmm15, %xmm4 > > > + movsd %xmm1, -48(%rsp) > > > + addsd %xmm4, %xmm7 > > > + mulsd %xmm5, %xmm7 > > > + movsd 4456+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm9, %xmm7 > > > + addsd 4448+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm2 > > > + movsd -48(%rsp), %xmm0 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm4 > > > + subsd %xmm0, %xmm2 > > > + mulsd %xmm8, %xmm4 > > > + addsd 4440+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movaps %xmm8, %xmm0 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm14 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm2 > > > + subsd %xmm14, %xmm6 > > > + addsd 4432+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm6, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + movsd -48(%rsp), %xmm10 > > > + movsd %xmm4, -40(%rsp) > > > + addsd %xmm10, %xmm7 > > > + addsd 4424+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm3 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm12 > > > + subsd %xmm8, %xmm3 > > > + addsd 4416+_vmldACosHATab(%rip), %xmm5 > > > + addsd 4344+_vmldACosHATab(%rip), %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + addsd %xmm11, %xmm12 > > > + addsd 4408+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm3, -48(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd -48(%rsp), %xmm15 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm13 > > > + subsd %xmm15, %xmm1 > > > + addsd 4400+_vmldACosHATab(%rip), %xmm5 > > > + addsd 4328+_vmldACosHATab(%rip), %xmm13 > > > + mulsd %xmm8, %xmm5 > > > + addsd %xmm12, %xmm13 > > > + addsd 4392+_vmldACosHATab(%rip), %xmm5 > > > + movsd %xmm1, -40(%rsp) > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm4 > > > + subsd %xmm4, %xmm0 > > > + addsd 4384+_vmldACosHATab(%rip), %xmm5 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm4 > > > + movaps %xmm4, %xmm14 > > > + mulsd %xmm4, %xmm14 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm14, %xmm2 > > > + addsd 4376+_vmldACosHATab(%rip), %xmm5 > > > + movsd -48(%rsp), %xmm3 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm9 > > > + mulsd %xmm8, %xmm5 > > > + subsd %xmm14, %xmm9 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -40(%rsp), %xmm11 > > > + movsd -48(%rsp), %xmm10 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm0 > > > + subsd %xmm10, %xmm11 > > > + mulsd %xmm4, %xmm0 > > > + addsd 4368+_vmldACosHATab(%rip), %xmm5 > > > + addsd %xmm8, %xmm4 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm3, %xmm4 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm11, -40(%rsp) > > > + movaps %xmm0, %xmm1 > > > + movsd -40(%rsp), %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + subsd %xmm12, %xmm14 > > > + movsd %xmm14, -48(%rsp) > > > + addsd %xmm5, %xmm13 > > > + movsd -40(%rsp), %xmm9 > > > + mulsd 4352+_vmldACosHATab(%rip), %xmm9 > > > + mulsd %xmm13, %xmm7 > > > + addsd %xmm9, %xmm1 > > > + movsd -48(%rsp), %xmm2 > > > + movsd %xmm1, -40(%rsp) > > > + addsd %xmm2, %xmm4 > > > + movsd -40(%rsp), %xmm13 > > > + movsd %xmm9, -24(%rsp) > > > + subsd %xmm13, %xmm0 > > > + mulsd 4352+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm0, %xmm9 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -40(%rsp), %xmm12 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm10 > > > + movsd -48(%rsp), %xmm1 > > > + addsd %xmm12, %xmm10 > > > + movsd %xmm10, -40(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm11 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm9 > > > + subsd %xmm15, %xmm11 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm2 > > > + addsd %xmm11, %xmm12 > > > + mulsd %xmm3, %xmm2 > > > + movsd %xmm12, -48(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + mulsd %xmm15, %xmm9 > > > + movsd -48(%rsp), %xmm0 > > > + movsd %xmm9, -40(%rsp) > > > + movsd -40(%rsp), %xmm10 > > > + movsd 4360+_vmldACosHATab(%rip), %xmm3 > > > + subsd %xmm15, %xmm10 > > > + mulsd %xmm8, %xmm3 > > > + movsd %xmm10, -48(%rsp) > > > + movsd -40(%rsp), %xmm11 > > > + movsd -48(%rsp), %xmm13 > > > + subsd %xmm13, %xmm11 > > > + addsd 4344+_vmldACosHATab(%rip), %xmm3 > > > + movsd %xmm11, -40(%rsp) > > > + movsd -40(%rsp), %xmm14 > > > + mulsd %xmm8, %xmm3 > > > + subsd %xmm14, %xmm15 > > > + movsd %xmm15, -48(%rsp) > > > + movsd -40(%rsp), %xmm10 > > > + movsd -48(%rsp), %xmm9 > > > + addsd %xmm9, %xmm4 > > > + addsd 4328+_vmldACosHATab(%rip), %xmm3 > > > + addsd %xmm2, %xmm4 > > > + addsd %xmm5, %xmm3 > > > + addsd %xmm1, %xmm4 > > > + addsd %xmm0, %xmm4 > > > + addsd %xmm3, %xmm4 > > > + mulsd %xmm6, %xmm4 > > > + mulsd %xmm10, %xmm6 > > > + addsd %xmm7, %xmm4 > > > + movsd (%rdi), %xmm7 > > > + comisd 4184+_vmldACosHATab(%rip), %xmm7 > > > + ja .LBL_2_13 > > > + movsd 4152+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm2, %xmm0 > > > + movsd 4160+_vmldACosHATab(%rip), %xmm5 > > > + subsd %xmm6, %xmm0 > > > + subsd %xmm4, %xmm5 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd %xmm6, -56(%rsp) > > > + subsd %xmm1, %xmm2 > > > + subsd %xmm6, %xmm2 > > > + movsd %xmm2, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + movsd -48(%rsp), %xmm3 > > > + movaps %xmm3, %xmm4 > > > + addsd %xmm5, %xmm4 > > > + > > > +.LBL_2_13: > > > + addsd %xmm4, %xmm6 > > > + movsd %xmm6, (%rsi) > > > + ret > > > + > > > +.LBL_2_14: > > > + ucomisd %xmm0, %xmm1 > > > + jp .LBL_2_15 > > > + je .LBL_2_19 > > > + > > > +.LBL_2_15: > > > + xorps .FLT_197(%rip), %xmm0 > > > + ucomisd %xmm0, %xmm1 > > > + jp .LBL_2_16 > > > + je .LBL_2_18 > > > + > > > +.LBL_2_16: > > > + movl $1, %eax > > > + pxor %xmm1, %xmm1 > > > + pxor %xmm0, %xmm0 > > > + divsd %xmm0, %xmm1 > > > + movsd %xmm1, (%rsi) > > > + > > > +.LBL_2_17: > > > + ret > > > + > > > +.LBL_2_18: > > > + movsd 4152+_vmldACosHATab(%rip), %xmm0 > > > + addsd 4160+_vmldACosHATab(%rip), %xmm0 > > > + movsd %xmm0, (%rsi) > > > + ret > > > + > > > +.LBL_2_19: > > > + movq 4184+_vmldACosHATab(%rip), %rdx > > > + movq %rdx, (%rsi) > > > + ret > > > + > > > +.LBL_2_20: > > > + divsd %xmm1, %xmm1 > > > + movsd %xmm1, (%rsi) > > > + testl $1048575, 4(%rdi) > > > + jne .LBL_2_17 > > > + cmpl $0, (%rdi) > > > + sete %al > > > + ret > > > + > > > + cfi_endproc > > > + > > > + .type __svml_dacos_cout_rare_internal,@function > > > + .size __svml_dacos_cout_rare_internal,.-__svml_dacos_cout_rare_internal > > > + > > > + .section .rodata, "a" > > > + .align 64 > > > + > > > +__svml_dacos_data_internal: > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1071644672 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 805306368 > > > + .long 0 > > > + .long 805306368 > > > + .long 0 > > > + .long 805306368 > > > + .long 0 > > > + .long 805306368 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 4294967040 > > > + .long 0 > > > + .long 4294967040 > > > + .long 0 > > > + .long 4294967040 > > > + .long 0 > > > + .long 4294967040 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 3220176896 > > > + .long 0 > > > + .long 3220176896 > > > + .long 0 > > > + .long 3220176896 > > > + .long 0 > > > + .long 3220176896 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 4227858432 > > > + .long 4294967295 > > > + .long 4227858432 > > > + .long 4294967295 > > > + .long 4227858432 > > > + .long 4294967295 > > > + .long 4227858432 > > > + .long 4294967295 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 1073741824 > > > + .long 0 > > > + .long 1073741824 > > > + .long 0 > > > + .long 1073741824 > > > + .long 0 > > > + .long 1073741824 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 2570790083 > > > + .long 3213983744 > > > + .long 2570790083 > > > + .long 3213983744 > > > + .long 2570790083 > > > + .long 3213983744 > > > + .long 2570790083 > > > + .long 3213983744 > > > + .long 1869665325 > > > + .long 1067712512 > > > + .long 1869665325 > > > + .long 1067712512 > > > + .long 1869665325 > > > + .long 1067712512 > > > + .long 1869665325 > > > + .long 1067712512 > > > + .long 4294966935 > > > + .long 3216506879 > > > + .long 4294966935 > > > + .long 3216506879 > > > + .long 4294966935 > > > + .long 3216506879 > > > + .long 4294966935 > > > + .long 3216506879 > > > + .long 4294967197 > > > + .long 1070596095 > > > + .long 4294967197 > > > + .long 1070596095 > > > + .long 4294967197 > > > + .long 1070596095 > > > + .long 4294967197 > > > + .long 1070596095 > > > + .long 3339630857 > > > + .long 1067480352 > > > + .long 3339630857 > > > + .long 1067480352 > > > + .long 3339630857 > > > + .long 1067480352 > > > + .long 3339630857 > > > + .long 1067480352 > > > + .long 4158370029 > > > + .long 3213949719 > > > + .long 4158370029 > > > + .long 3213949719 > > > + .long 4158370029 > > > + .long 3213949719 > > > + .long 4158370029 > > > + .long 3213949719 > > > + .long 3216784302 > > > + .long 1066680132 > > > + .long 3216784302 > > > + .long 1066680132 > > > + .long 3216784302 > > > + .long 1066680132 > > > + .long 3216784302 > > > + .long 1066680132 > > > + .long 2513723093 > > > + .long 1064982579 > > > + .long 2513723093 > > > + .long 1064982579 > > > + .long 2513723093 > > > + .long 1064982579 > > > + .long 2513723093 > > > + .long 1064982579 > > > + .long 721210070 > > > + .long 1065941212 > > > + .long 721210070 > > > + .long 1065941212 > > > + .long 721210070 > > > + .long 1065941212 > > > + .long 721210070 > > > + .long 1065941212 > > > + .long 3414736215 > > > + .long 1066167739 > > > + .long 3414736215 > > > + .long 1066167739 > > > + .long 3414736215 > > > + .long 1066167739 > > > + .long 3414736215 > > > + .long 1066167739 > > > + .long 4114132270 > > > + .long 1066518236 > > > + .long 4114132270 > > > + .long 1066518236 > > > + .long 4114132270 > > > + .long 1066518236 > > > + .long 4114132270 > > > + .long 1066518236 > > > + .long 3957258973 > > > + .long 1066854556 > > > + .long 3957258973 > > > + .long 1066854556 > > > + .long 3957258973 > > > + .long 1066854556 > > > + .long 3957258973 > > > + .long 1066854556 > > > + .long 3778730174 > > > + .long 1067392114 > > > + .long 3778730174 > > > + .long 1067392114 > > > + .long 3778730174 > > > + .long 1067392114 > > > + .long 3778730174 > > > + .long 1067392114 > > > + .long 3014936056 > > > + .long 1067899757 > > > + .long 3014936056 > > > + .long 1067899757 > > > + .long 3014936056 > > > + .long 1067899757 > > > + .long 3014936056 > > > + .long 1067899757 > > > + .long 859300062 > > > + .long 1068708659 > > > + .long 859300062 > > > + .long 1068708659 > > > + .long 859300062 > > > + .long 1068708659 > > > + .long 859300062 > > > + .long 1068708659 > > > + .long 1431655068 > > > + .long 1069897045 > > > + .long 1431655068 > > > + .long 1069897045 > > > + .long 1431655068 > > > + .long 1069897045 > > > + .long 1431655068 > > > + .long 1069897045 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 856972295 > > > + .long 1017226790 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 856972295 > > > + .long 1016178214 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 4294705152 > > > + .long 0 > > > + .long 4294705152 > > > + .long 0 > > > + .long 4294705152 > > > + .long 0 > > > + .long 4294705152 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 4131758366 > > > + .long 1067674714 > > > + .long 4131758366 > > > + .long 1067674714 > > > + .long 4131758366 > > > + .long 1067674714 > > > + .long 4131758366 > > > + .long 1067674714 > > > + .long 3936260738 > > > + .long 1066197319 > > > + .long 3936260738 > > > + .long 1066197319 > > > + .long 3936260738 > > > + .long 1066197319 > > > + .long 3936260738 > > > + .long 1066197319 > > > + .long 354394453 > > > + .long 1067472564 > > > + .long 354394453 > > > + .long 1067472564 > > > + .long 354394453 > > > + .long 1067472564 > > > + .long 354394453 > > > + .long 1067472564 > > > + .long 709676628 > > > + .long 1067895021 > > > + .long 709676628 > > > + .long 1067895021 > > > + .long 709676628 > > > + .long 1067895021 > > > + .long 709676628 > > > + .long 1067895021 > > > + .long 3958922090 > > > + .long 1068708761 > > > + .long 3958922090 > > > + .long 1068708761 > > > + .long 3958922090 > > > + .long 1068708761 > > > + .long 3958922090 > > > + .long 1068708761 > > > + .long 2160605765 > > > + .long 1069897044 > > > + .long 2160605765 > > > + .long 1069897044 > > > + .long 2160605765 > > > + .long 1069897044 > > > + .long 2160605765 > > > + .long 1069897044 > > > + .long 0 > > > + .long 2146435072 > > > + .long 0 > > > + .long 4293918720 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 1072693248 > > > + .long 0 > > > + .long 3220176896 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 2147483648 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .type __svml_dacos_data_internal,@object > > > + .size __svml_dacos_data_internal,1792 > > > + .align 32 > > > + > > > +_vmldACosHATab: > > > + .long 0 > > > + .long 1072693248 > > > + .long 0 > > > + .long 1072689152 > > > + .long 0 > > > + .long 1072685056 > > > + .long 0 > > > + .long 1072680960 > > > + .long 0 > > > + .long 1072676864 > > > + .long 0 > > > + .long 1072672768 > > > + .long 0 > > > + .long 1072668672 > > > + .long 0 > > > + .long 1072665600 > > > + .long 0 > > > + .long 1072661504 > > > + .long 0 > > > + .long 1072657408 > > > + .long 0 > > > + .long 1072653312 > > > + .long 0 > > > + .long 1072649216 > > > + .long 0 > > > + .long 1072646144 > > > + .long 0 > > > + .long 1072642048 > > > + .long 0 > > > + .long 1072637952 > > > + .long 0 > > > + .long 1072634880 > > > + .long 0 > > > + .long 1072630784 > > > + .long 0 > > > + .long 1072626688 > > > + .long 0 > > > + .long 1072623616 > > > + .long 0 > > > + .long 1072619520 > > > + .long 0 > > > + .long 1072615424 > > > + .long 0 > > > + .long 1072612352 > > > + .long 0 > > > + .long 1072608256 > > > + .long 0 > > > + .long 1072605184 > > > + .long 0 > > > + .long 1072601088 > > > + .long 0 > > > + .long 1072598016 > > > + .long 0 > > > + .long 1072593920 > > > + .long 0 > > > + .long 1072590848 > > > + .long 0 > > > + .long 1072586752 > > > + .long 0 > > > + .long 1072583680 > > > + .long 0 > > > + .long 1072580608 > > > + .long 0 > > > + .long 1072576512 > > > + .long 0 > > > + .long 1072573440 > > > + .long 0 > > > + .long 1072570368 > > > + .long 0 > > > + .long 1072566272 > > > + .long 0 > > > + .long 1072563200 > > > + .long 0 > > > + .long 1072560128 > > > + .long 0 > > > + .long 1072556032 > > > + .long 0 > > > + .long 1072552960 > > > + .long 0 > > > + .long 1072549888 > > > + .long 0 > > > + .long 1072546816 > > > + .long 0 > > > + .long 1072542720 > > > + .long 0 > > > + .long 1072539648 > > > + .long 0 > > > + .long 1072536576 > > > + .long 0 > > > + .long 1072533504 > > > + .long 0 > > > + .long 1072530432 > > > + .long 0 > > > + .long 1072527360 > > > + .long 0 > > > + .long 1072523264 > > > + .long 0 > > > + .long 1072520192 > > > + .long 0 > > > + .long 1072517120 > > > + .long 0 > > > + .long 1072514048 > > > + .long 0 > > > + .long 1072510976 > > > + .long 0 > > > + .long 1072507904 > > > + .long 0 > > > + .long 1072504832 > > > + .long 0 > > > + .long 1072501760 > > > + .long 0 > > > + .long 1072498688 > > > + .long 0 > > > + .long 1072495616 > > > + .long 0 > > > + .long 1072492544 > > > + .long 0 > > > + .long 1072489472 > > > + .long 0 > > > + .long 1072486400 > > > + .long 0 > > > + .long 1072483328 > > > + .long 0 > > > + .long 1072480256 > > > + .long 0 > > > + .long 1072478208 > > > + .long 0 > > > + .long 1072475136 > > > + .long 0 > > > + .long 1072472064 > > > + .long 0 > > > + .long 1072468992 > > > + .long 0 > > > + .long 1072465920 > > > + .long 0 > > > + .long 1072462848 > > > + .long 0 > > > + .long 1072459776 > > > + .long 0 > > > + .long 1072457728 > > > + .long 0 > > > + .long 1072454656 > > > + .long 0 > > > + .long 1072451584 > > > + .long 0 > > > + .long 1072448512 > > > + .long 0 > > > + .long 1072446464 > > > + .long 0 > > > + .long 1072443392 > > > + .long 0 > > > + .long 1072440320 > > > + .long 0 > > > + .long 1072437248 > > > + .long 0 > > > + .long 1072435200 > > > + .long 0 > > > + .long 1072432128 > > > + .long 0 > > > + .long 1072429056 > > > + .long 0 > > > + .long 1072427008 > > > + .long 0 > > > + .long 1072423936 > > > + .long 0 > > > + .long 1072420864 > > > + .long 0 > > > + .long 1072418816 > > > + .long 0 > > > + .long 1072415744 > > > + .long 0 > > > + .long 1072412672 > > > + .long 0 > > > + .long 1072410624 > > > + .long 0 > > > + .long 1072407552 > > > + .long 0 > > > + .long 1072405504 > > > + .long 0 > > > + .long 1072402432 > > > + .long 0 > > > + .long 1072400384 > > > + .long 0 > > > + .long 1072397312 > > > + .long 0 > > > + .long 1072395264 > > > + .long 0 > > > + .long 1072392192 > > > + .long 0 > > > + .long 1072390144 > > > + .long 0 > > > + .long 1072387072 > > > + .long 0 > > > + .long 1072385024 > > > + .long 0 > > > + .long 1072381952 > > > + .long 0 > > > + .long 1072379904 > > > + .long 0 > > > + .long 1072376832 > > > + .long 0 > > > + .long 1072374784 > > > + .long 0 > > > + .long 1072371712 > > > + .long 0 > > > + .long 1072369664 > > > + .long 0 > > > + .long 1072366592 > > > + .long 0 > > > + .long 1072364544 > > > + .long 0 > > > + .long 1072362496 > > > + .long 0 > > > + .long 1072359424 > > > + .long 0 > > > + .long 1072357376 > > > + .long 0 > > > + .long 1072355328 > > > + .long 0 > > > + .long 1072352256 > > > + .long 0 > > > + .long 1072350208 > > > + .long 0 > > > + .long 1072347136 > > > + .long 0 > > > + .long 1072345088 > > > + .long 0 > > > + .long 1072343040 > > > + .long 0 > > > + .long 1072340992 > > > + .long 0 > > > + .long 1072337920 > > > + .long 0 > > > + .long 1072335872 > > > + .long 0 > > > + .long 1072333824 > > > + .long 0 > > > + .long 1072330752 > > > + .long 0 > > > + .long 1072328704 > > > + .long 0 > > > + .long 1072326656 > > > + .long 0 > > > + .long 1072324608 > > > + .long 0 > > > + .long 1072321536 > > > + .long 0 > > > + .long 1072319488 > > > + .long 0 > > > + .long 1072317440 > > > + .long 0 > > > + .long 1072315392 > > > + .long 0 > > > + .long 1072313344 > > > + .long 0 > > > + .long 1072310272 > > > + .long 0 > > > + .long 1072308224 > > > + .long 0 > > > + .long 1072306176 > > > + .long 0 > > > + .long 1072304128 > > > + .long 0 > > > + .long 1072302080 > > > + .long 0 > > > + .long 1072300032 > > > + .long 0 > > > + .long 1072296960 > > > + .long 0 > > > + .long 1072294912 > > > + .long 0 > > > + .long 1072292864 > > > + .long 0 > > > + .long 1072290816 > > > + .long 0 > > > + .long 1072288768 > > > + .long 0 > > > + .long 1072286720 > > > + .long 0 > > > + .long 1072284672 > > > + .long 0 > > > + .long 1072282624 > > > + .long 0 > > > + .long 1072280576 > > > + .long 0 > > > + .long 1072278528 > > > + .long 0 > > > + .long 1072275456 > > > + .long 0 > > > + .long 1072273408 > > > + .long 0 > > > + .long 1072271360 > > > + .long 0 > > > + .long 1072269312 > > > + .long 0 > > > + .long 1072267264 > > > + .long 0 > > > + .long 1072265216 > > > + .long 0 > > > + .long 1072263168 > > > + .long 0 > > > + .long 1072261120 > > > + .long 0 > > > + .long 1072259072 > > > + .long 0 > > > + .long 1072257024 > > > + .long 0 > > > + .long 1072254976 > > > + .long 0 > > > + .long 1072252928 > > > + .long 0 > > > + .long 1072250880 > > > + .long 0 > > > + .long 1072248832 > > > + .long 0 > > > + .long 1072246784 > > > + .long 0 > > > + .long 1072244736 > > > + .long 0 > > > + .long 1072243712 > > > + .long 0 > > > + .long 1072241664 > > > + .long 0 > > > + .long 1072239616 > > > + .long 0 > > > + .long 1072237568 > > > + .long 0 > > > + .long 1072235520 > > > + .long 0 > > > + .long 1072233472 > > > + .long 0 > > > + .long 1072231424 > > > + .long 0 > > > + .long 1072229376 > > > + .long 0 > > > + .long 1072227328 > > > + .long 0 > > > + .long 1072225280 > > > + .long 0 > > > + .long 1072223232 > > > + .long 0 > > > + .long 1072222208 > > > + .long 0 > > > + .long 1072220160 > > > + .long 0 > > > + .long 1072218112 > > > + .long 0 > > > + .long 1072216064 > > > + .long 0 > > > + .long 1072214016 > > > + .long 0 > > > + .long 1072211968 > > > + .long 0 > > > + .long 1072210944 > > > + .long 0 > > > + .long 1072208896 > > > + .long 0 > > > + .long 1072206848 > > > + .long 0 > > > + .long 1072204800 > > > + .long 0 > > > + .long 1072202752 > > > + .long 0 > > > + .long 1072201728 > > > + .long 0 > > > + .long 1072199680 > > > + .long 0 > > > + .long 1072197632 > > > + .long 0 > > > + .long 1072195584 > > > + .long 0 > > > + .long 1072193536 > > > + .long 0 > > > + .long 1072192512 > > > + .long 0 > > > + .long 1072190464 > > > + .long 0 > > > + .long 1072188416 > > > + .long 0 > > > + .long 1072186368 > > > + .long 0 > > > + .long 1072185344 > > > + .long 0 > > > + .long 1072183296 > > > + .long 0 > > > + .long 1072181248 > > > + .long 0 > > > + .long 1072179200 > > > + .long 0 > > > + .long 1072178176 > > > + .long 0 > > > + .long 1072176128 > > > + .long 0 > > > + .long 1072174080 > > > + .long 0 > > > + .long 1072173056 > > > + .long 0 > > > + .long 1072171008 > > > + .long 0 > > > + .long 1072168960 > > > + .long 0 > > > + .long 1072167936 > > > + .long 0 > > > + .long 1072165888 > > > + .long 0 > > > + .long 1072163840 > > > + .long 0 > > > + .long 1072161792 > > > + .long 0 > > > + .long 1072160768 > > > + .long 0 > > > + .long 1072158720 > > > + .long 0 > > > + .long 1072157696 > > > + .long 0 > > > + .long 1072155648 > > > + .long 0 > > > + .long 1072153600 > > > + .long 0 > > > + .long 1072152576 > > > + .long 0 > > > + .long 1072150528 > > > + .long 0 > > > + .long 1072148480 > > > + .long 0 > > > + .long 1072147456 > > > + .long 0 > > > + .long 1072145408 > > > + .long 0 > > > + .long 1072143360 > > > + .long 0 > > > + .long 1072142336 > > > + .long 0 > > > + .long 1072140288 > > > + .long 0 > > > + .long 1072139264 > > > + .long 0 > > > + .long 1072137216 > > > + .long 0 > > > + .long 1072135168 > > > + .long 0 > > > + .long 1072134144 > > > + .long 0 > > > + .long 1072132096 > > > + .long 0 > > > + .long 1072131072 > > > + .long 0 > > > + .long 1072129024 > > > + .long 0 > > > + .long 1072128000 > > > + .long 0 > > > + .long 1072125952 > > > + .long 0 > > > + .long 1072124928 > > > + .long 0 > > > + .long 1072122880 > > > + .long 0 > > > + .long 1072120832 > > > + .long 0 > > > + .long 1072119808 > > > + .long 0 > > > + .long 1072117760 > > > + .long 0 > > > + .long 1072116736 > > > + .long 0 > > > + .long 1072114688 > > > + .long 0 > > > + .long 1072113664 > > > + .long 0 > > > + .long 1072111616 > > > + .long 0 > > > + .long 1072110592 > > > + .long 0 > > > + .long 1072108544 > > > + .long 0 > > > + .long 1072107520 > > > + .long 0 > > > + .long 1072105472 > > > + .long 0 > > > + .long 1072104448 > > > + .long 0 > > > + .long 1072102400 > > > + .long 0 > > > + .long 1072101376 > > > + .long 0 > > > + .long 1072099328 > > > + .long 0 > > > + .long 1072098304 > > > + .long 0 > > > + .long 1072096256 > > > + .long 0 > > > + .long 1072095232 > > > + .long 0 > > > + .long 1072094208 > > > + .long 0 > > > + .long 1072092160 > > > + .long 0 > > > + .long 1072091136 > > > + .long 0 > > > + .long 1072089088 > > > + .long 0 > > > + .long 1072088064 > > > + .long 0 > > > + .long 1072086016 > > > + .long 0 > > > + .long 1072084992 > > > + .long 0 > > > + .long 1072082944 > > > + .long 0 > > > + .long 1072081920 > > > + .long 0 > > > + .long 1072080896 > > > + .long 0 > > > + .long 1072078848 > > > + .long 0 > > > + .long 1072075776 > > > + .long 0 > > > + .long 1072073728 > > > + .long 0 > > > + .long 1072070656 > > > + .long 0 > > > + .long 1072067584 > > > + .long 0 > > > + .long 1072064512 > > > + .long 0 > > > + .long 1072061440 > > > + .long 0 > > > + .long 1072059392 > > > + .long 0 > > > + .long 1072056320 > > > + .long 0 > > > + .long 1072053248 > > > + .long 0 > > > + .long 1072051200 > > > + .long 0 > > > + .long 1072048128 > > > + .long 0 > > > + .long 1072045056 > > > + .long 0 > > > + .long 1072043008 > > > + .long 0 > > > + .long 1072039936 > > > + .long 0 > > > + .long 1072037888 > > > + .long 0 > > > + .long 1072034816 > > > + .long 0 > > > + .long 1072031744 > > > + .long 0 > > > + .long 1072029696 > > > + .long 0 > > > + .long 1072026624 > > > + .long 0 > > > + .long 1072024576 > > > + .long 0 > > > + .long 1072021504 > > > + .long 0 > > > + .long 1072019456 > > > + .long 0 > > > + .long 1072016384 > > > + .long 0 > > > + .long 1072014336 > > > + .long 0 > > > + .long 1072011264 > > > + .long 0 > > > + .long 1072009216 > > > + .long 0 > > > + .long 1072006144 > > > + .long 0 > > > + .long 1072004096 > > > + .long 0 > > > + .long 1072002048 > > > + .long 0 > > > + .long 1071998976 > > > + .long 0 > > > + .long 1071996928 > > > + .long 0 > > > + .long 1071993856 > > > + .long 0 > > > + .long 1071991808 > > > + .long 0 > > > + .long 1071989760 > > > + .long 0 > > > + .long 1071986688 > > > + .long 0 > > > + .long 1071984640 > > > + .long 0 > > > + .long 1071982592 > > > + .long 0 > > > + .long 1071979520 > > > + .long 0 > > > + .long 1071977472 > > > + .long 0 > > > + .long 1071975424 > > > + .long 0 > > > + .long 1071972352 > > > + .long 0 > > > + .long 1071970304 > > > + .long 0 > > > + .long 1071968256 > > > + .long 0 > > > + .long 1071966208 > > > + .long 0 > > > + .long 1071964160 > > > + .long 0 > > > + .long 1071961088 > > > + .long 0 > > > + .long 1071959040 > > > + .long 0 > > > + .long 1071956992 > > > + .long 0 > > > + .long 1071954944 > > > + .long 0 > > > + .long 1071952896 > > > + .long 0 > > > + .long 1071949824 > > > + .long 0 > > > + .long 1071947776 > > > + .long 0 > > > + .long 1071945728 > > > + .long 0 > > > + .long 1071943680 > > > + .long 0 > > > + .long 1071941632 > > > + .long 0 > > > + .long 1071939584 > > > + .long 0 > > > + .long 1071937536 > > > + .long 0 > > > + .long 1071935488 > > > + .long 0 > > > + .long 1071933440 > > > + .long 0 > > > + .long 1071930368 > > > + .long 0 > > > + .long 1071928320 > > > + .long 0 > > > + .long 1071926272 > > > + .long 0 > > > + .long 1071924224 > > > + .long 0 > > > + .long 1071922176 > > > + .long 0 > > > + .long 1071920128 > > > + .long 0 > > > + .long 1071918080 > > > + .long 0 > > > + .long 1071916032 > > > + .long 0 > > > + .long 1071913984 > > > + .long 0 > > > + .long 1071911936 > > > + .long 0 > > > + .long 1071909888 > > > + .long 0 > > > + .long 1071907840 > > > + .long 0 > > > + .long 1071905792 > > > + .long 0 > > > + .long 1071903744 > > > + .long 0 > > > + .long 1071901696 > > > + .long 0 > > > + .long 1071900672 > > > + .long 0 > > > + .long 1071898624 > > > + .long 0 > > > + .long 1071896576 > > > + .long 0 > > > + .long 1071894528 > > > + .long 0 > > > + .long 1071892480 > > > + .long 0 > > > + .long 1071890432 > > > + .long 0 > > > + .long 1071888384 > > > + .long 0 > > > + .long 1071886336 > > > + .long 0 > > > + .long 1071884288 > > > + .long 0 > > > + .long 1071883264 > > > + .long 0 > > > + .long 1071881216 > > > + .long 0 > > > + .long 1071879168 > > > + .long 0 > > > + .long 1071877120 > > > + .long 0 > > > + .long 1071875072 > > > + .long 0 > > > + .long 1071873024 > > > + .long 0 > > > + .long 1071872000 > > > + .long 0 > > > + .long 1071869952 > > > + .long 0 > > > + .long 1071867904 > > > + .long 0 > > > + .long 1071865856 > > > + .long 0 > > > + .long 1071864832 > > > + .long 0 > > > + .long 1071862784 > > > + .long 0 > > > + .long 1071860736 > > > + .long 0 > > > + .long 1071858688 > > > + .long 0 > > > + .long 1071856640 > > > + .long 0 > > > + .long 1071855616 > > > + .long 0 > > > + .long 1071853568 > > > + .long 0 > > > + .long 1071851520 > > > + .long 0 > > > + .long 1071850496 > > > + .long 0 > > > + .long 1071848448 > > > + .long 0 > > > + .long 1071846400 > > > + .long 0 > > > + .long 1071844352 > > > + .long 0 > > > + .long 1071843328 > > > + .long 0 > > > + .long 1071841280 > > > + .long 0 > > > + .long 1071839232 > > > + .long 0 > > > + .long 1071838208 > > > + .long 0 > > > + .long 1071836160 > > > + .long 0 > > > + .long 1071834112 > > > + .long 0 > > > + .long 1071833088 > > > + .long 0 > > > + .long 1071831040 > > > + .long 0 > > > + .long 1071830016 > > > + .long 0 > > > + .long 1071827968 > > > + .long 0 > > > + .long 1071825920 > > > + .long 0 > > > + .long 1071824896 > > > + .long 0 > > > + .long 1071822848 > > > + .long 0 > > > + .long 1071821824 > > > + .long 0 > > > + .long 1071819776 > > > + .long 0 > > > + .long 1071817728 > > > + .long 0 > > > + .long 1071816704 > > > + .long 0 > > > + .long 1071814656 > > > + .long 0 > > > + .long 1071813632 > > > + .long 0 > > > + .long 1071811584 > > > + .long 0 > > > + .long 1071810560 > > > + .long 0 > > > + .long 1071808512 > > > + .long 0 > > > + .long 1071806464 > > > + .long 0 > > > + .long 1071805440 > > > + .long 0 > > > + .long 1071803392 > > > + .long 0 > > > + .long 1071802368 > > > + .long 0 > > > + .long 1071800320 > > > + .long 0 > > > + .long 1071799296 > > > + .long 0 > > > + .long 1071797248 > > > + .long 0 > > > + .long 1071796224 > > > + .long 0 > > > + .long 1071794176 > > > + .long 0 > > > + .long 1071793152 > > > + .long 0 > > > + .long 1071791104 > > > + .long 0 > > > + .long 1071790080 > > > + .long 0 > > > + .long 1071788032 > > > + .long 0 > > > + .long 1071787008 > > > + .long 0 > > > + .long 1071784960 > > > + .long 0 > > > + .long 1071783936 > > > + .long 0 > > > + .long 1071782912 > > > + .long 0 > > > + .long 1071780864 > > > + .long 0 > > > + .long 1071779840 > > > + .long 0 > > > + .long 1071777792 > > > + .long 0 > > > + .long 1071776768 > > > + .long 0 > > > + .long 1071774720 > > > + .long 0 > > > + .long 1071773696 > > > + .long 0 > > > + .long 1071772672 > > > + .long 0 > > > + .long 1071770624 > > > + .long 0 > > > + .long 1071769600 > > > + .long 0 > > > + .long 1071767552 > > > + .long 0 > > > + .long 1071766528 > > > + .long 0 > > > + .long 1071765504 > > > + .long 0 > > > + .long 1071763456 > > > + .long 0 > > > + .long 1071762432 > > > + .long 0 > > > + .long 1071760384 > > > + .long 0 > > > + .long 1071759360 > > > + .long 0 > > > + .long 1071758336 > > > + .long 0 > > > + .long 1071756288 > > > + .long 0 > > > + .long 1071755264 > > > + .long 0 > > > + .long 1071754240 > > > + .long 0 > > > + .long 1071752192 > > > + .long 0 > > > + .long 1071751168 > > > + .long 0 > > > + .long 1071750144 > > > + .long 0 > > > + .long 1071748096 > > > + .long 0 > > > + .long 1071747072 > > > + .long 0 > > > + .long 1071746048 > > > + .long 0 > > > + .long 1071744000 > > > + .long 0 > > > + .long 1071742976 > > > + .long 0 > > > + .long 1071741952 > > > + .long 0 > > > + .long 1071739904 > > > + .long 0 > > > + .long 1071738880 > > > + .long 0 > > > + .long 1071737856 > > > + .long 0 > > > + .long 1071736832 > > > + .long 0 > > > + .long 1071734784 > > > + .long 0 > > > + .long 1071733760 > > > + .long 0 > > > + .long 1071732736 > > > + .long 0 > > > + .long 1071730688 > > > + .long 0 > > > + .long 1071729664 > > > + .long 0 > > > + .long 1071728640 > > > + .long 0 > > > + .long 1071727616 > > > + .long 0 > > > + .long 1071725568 > > > + .long 0 > > > + .long 1071724544 > > > + .long 0 > > > + .long 1071723520 > > > + .long 0 > > > + .long 1071722496 > > > + .long 0 > > > + .long 1071720448 > > > + .long 0 > > > + .long 1071719424 > > > + .long 0 > > > + .long 1071718400 > > > + .long 0 > > > + .long 1071717376 > > > + .long 0 > > > + .long 1071715328 > > > + .long 0 > > > + .long 1071714304 > > > + .long 0 > > > + .long 1071713280 > > > + .long 0 > > > + .long 1071712256 > > > + .long 0 > > > + .long 1071711232 > > > + .long 0 > > > + .long 1071709184 > > > + .long 0 > > > + .long 1071708160 > > > + .long 0 > > > + .long 1071707136 > > > + .long 0 > > > + .long 1071706112 > > > + .long 0 > > > + .long 1071705088 > > > + .long 0 > > > + .long 1071704064 > > > + .long 0 > > > + .long 1071702016 > > > + .long 0 > > > + .long 1071700992 > > > + .long 0 > > > + .long 1071699968 > > > + .long 0 > > > + .long 1071698944 > > > + .long 0 > > > + .long 1071697920 > > > + .long 0 > > > + .long 1071696896 > > > + .long 0 > > > + .long 1071694848 > > > + .long 0 > > > + .long 1071693824 > > > + .long 0 > > > + .long 1071692800 > > > + .long 0 > > > + .long 1071691776 > > > + .long 0 > > > + .long 1071690752 > > > + .long 0 > > > + .long 1071689728 > > > + .long 0 > > > + .long 1071688704 > > > + .long 0 > > > + .long 1071686656 > > > + .long 0 > > > + .long 1071685632 > > > + .long 0 > > > + .long 1071684608 > > > + .long 0 > > > + .long 1071683584 > > > + .long 0 > > > + .long 1071682560 > > > + .long 0 > > > + .long 1071681536 > > > + .long 0 > > > + .long 1071680512 > > > + .long 0 > > > + .long 1071679488 > > > + .long 0 > > > + .long 1071677440 > > > + .long 0 > > > + .long 1071676416 > > > + .long 0 > > > + .long 1071675392 > > > + .long 0 > > > + .long 1071674368 > > > + .long 0 > > > + .long 1071673344 > > > + .long 0 > > > + .long 1071672320 > > > + .long 0 > > > + .long 1071671296 > > > + .long 0 > > > + .long 1071670272 > > > + .long 0 > > > + .long 1071669248 > > > + .long 0 > > > + .long 1071668224 > > > + .long 0 > > > + .long 1071667200 > > > + .long 0 > > > + .long 1071666176 > > > + .long 0 > > > + .long 1071665152 > > > + .long 0 > > > + .long 1071663104 > > > + .long 0 > > > + .long 1071662080 > > > + .long 0 > > > + .long 1071661056 > > > + .long 0 > > > + .long 1071660032 > > > + .long 0 > > > + .long 1071659008 > > > + .long 0 > > > + .long 1071657984 > > > + .long 0 > > > + .long 1071656960 > > > + .long 0 > > > + .long 1071655936 > > > + .long 0 > > > + .long 1071654912 > > > + .long 0 > > > + .long 1071653888 > > > + .long 0 > > > + .long 1071652864 > > > + .long 0 > > > + .long 1071651840 > > > + .long 0 > > > + .long 1071650816 > > > + .long 0 > > > + .long 1071649792 > > > + .long 0 > > > + .long 1071648768 > > > + .long 0 > > > + .long 1071647744 > > > + .long 0 > > > + .long 1071646720 > > > + .long 0 > > > + .long 1071645696 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1101004800 > > > + .long 1073741824 > > > + .long 1095761920 > > > + .long 256 > > > + .long 1118830592 > > > + .long 0 > > > + .long 1017118720 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 0 > > > + .long 1072693248 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 0 > > > + .long 1476395008 > > > + .long 1069897045 > > > + .long 1768958041 > > > + .long 3189069141 > > > + .long 805306368 > > > + .long 1068708659 > > > + .long 3580333578 > > > + .long 1040816593 > > > + .long 3067382784 > > > + .long 1067899757 > > > + .long 3397590151 > > > + .long 1067392113 > > > + .long 2939529726 > > > + .long 1066854585 > > > + .long 1423429166 > > > + .long 1066517752 > > > + .long 1775218934 > > > + .long 1066178574 > > > + .long 1185392460 > > > + .long 1065859647 > > > + .long 289998670 > > > + .long 1065577550 > > > + .long 3179807072 > > > + .long 1065648121 > > > + .long 3781007284 > > > + .long 1061576176 > > > + .long 2482106687 > > > + .long 1067019199 > > > + .long 763519713 > > > + .long 3214591591 > > > + .long 3695107454 > > > + .long 1067530646 > > > + .long 0 > > > + .long 1073741824 > > > + .long 1124791109 > > > + .long 1006764147 > > > + .long 1476395008 > > > + .long 1069897045 > > > + .long 1953913876 > > > + .long 3189069141 > > > + .long 805306368 > > > + .long 1067660083 > > > + .long 165110192 > > > + .long 1039768033 > > > + .long 3067304082 > > > + .long 1065802605 > > > + .long 3404727379 > > > + .long 1064246385 > > > + .long 2737480376 > > > + .long 1062660281 > > > + .long 933797922 > > > + .long 1061274873 > > > + .long 1475716730 > > > + .long 1059887095 > > > + .long 1511619763 > > > + .long 1058519827 > > > + .long 556024211 > > > + .long 1057187555 > > > + .long 3482101045 > > > + .long 1056217350 > > > + .long 1174622859 > > > + .long 1050762633 > > > + .long 899668651 > > > + .long 1055506366 > > > + .long 1081094694 > > > + .long 3202035365 > > > + .long 2559814773 > > > + .long 1053906576 > > > + .long 0 > > > + .long 3219128320 > > > + .long 0 > > > + .long 1071120384 > > > + .long 0 > > > + .long 3218341888 > > > + .long 0 > > > + .long 1070694400 > > > + .long 0 > > > + .long 3218046976 > > > + .long 0 > > > + .long 1070391296 > > > + .long 0 > > > + .long 3217739776 > > > + .type _vmldACosHATab,@object > > > + .size _vmldACosHATab,4520 > > > + .space 88, 0x00 > > > + .align 16 > > > + > > > +.FLT_197: > > > + .long 0x00000000,0x80000000,0x00000000,0x00000000 > > > + .type .FLT_197,@object > > > + .size .FLT_197,16 > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core-avx2.S b/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core-avx2.S > > > new file mode 100644 > > > index 0000000000..4d64fd1c00 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core-avx2.S > > > @@ -0,0 +1,20 @@ > > > +/* AVX2 version of vectorized acos, vector length is 8. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#define _ZGVeN8v_acos _ZGVeN8v_acos_avx2_wrapper > > > +#include "../svml_d_acos8_core.S" > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core.c b/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core.c > > > new file mode 100644 > > > index 0000000000..1e7d1865fb > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core.c > > > @@ -0,0 +1,27 @@ > > > +/* Multiple versions of vectorized acos, vector length is 8. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#define SYMBOL_NAME _ZGVeN8v_acos > > > +#include "ifunc-mathvec-avx512-skx.h" > > > + > > > +libc_ifunc_redirected (REDIRECT_NAME, SYMBOL_NAME, IFUNC_SELECTOR ()); > > > + > > > +#ifdef SHARED > > > +__hidden_ver1 (_ZGVeN8v_acos, __GI__ZGVeN8v_acos, __redirect__ZGVeN8v_acos) > > > + __attribute__ ((visibility ("hidden"))); > > > +#endif > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core_avx512.S b/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core_avx512.S > > > new file mode 100644 > > > index 0000000000..6c7c8535b6 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core_avx512.S > > > @@ -0,0 +1,2608 @@ > > > +/* Function acos vectorized with AVX-512. > > > + Copyright (C) 2021 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 > > > + https://www.gnu.org/licenses/. */ > > > + > > > +/* > > > + * ALGORITHM DESCRIPTION: > > > + * > > > + * SelMask = (|x| >= 0.5) ? 1 : 0; > > > + * R = SelMask ? sqrt(0.5 - 0.5*|x|) : |x| > > > + * acos(|x|) = SelMask ? 2*Poly(R) : (Pi/2 - Poly(R)) > > > + * acos(x) = sign(x) ? (Pi - acos(|x|)) : acos(|x|) > > > + * > > > + */ > > > + > > > +#include <sysdep.h> > > > + > > > + .text > > > +ENTRY(_ZGVeN8v_acos_skx) > > > + pushq %rbp > > > + cfi_def_cfa_offset(16) > > > + movq %rsp, %rbp > > > + cfi_def_cfa(6, 16) > > > + cfi_offset(6, -16) > > > + andq $-64, %rsp > > > + subq $192, %rsp > > > + vmovups __svml_dacos_data_internal(%rip), %zmm7 > > > + vmovups 64+__svml_dacos_data_internal(%rip), %zmm8 > > > + > > > +/* S ~ 2*sqrt(Y) */ > > > + vmovups 128+__svml_dacos_data_internal(%rip), %zmm11 > > > + vmovups 384+__svml_dacos_data_internal(%rip), %zmm14 > > > + vmovups 448+__svml_dacos_data_internal(%rip), %zmm15 > > > + vmovups 512+__svml_dacos_data_internal(%rip), %zmm2 > > > + vmovups 576+__svml_dacos_data_internal(%rip), %zmm1 > > > + vmovups 256+__svml_dacos_data_internal(%rip), %zmm10 > > > + vmovaps %zmm0, %zmm6 > > > + > > > +/* x = -|arg| */ > > > + vorpd %zmm6, %zmm7, %zmm5 > > > + vandpd %zmm6, %zmm7, %zmm4 > > > + > > > +/* Y = 0.5 + 0.5*(-x) */ > > > + vfmadd231pd {rn-sae}, %zmm5, %zmm8, %zmm8 > > > + > > > +/* x^2 */ > > > + vmulpd {rn-sae}, %zmm5, %zmm5, %zmm9 > > > + vrsqrt14pd %zmm8, %zmm12 > > > + vcmppd $17, {sae}, %zmm11, %zmm8, %k2 > > > + vcmppd $17, {sae}, %zmm10, %zmm5, %k0 > > > + vmovups 960+__svml_dacos_data_internal(%rip), %zmm10 > > > + vmovups 1088+__svml_dacos_data_internal(%rip), %zmm11 > > > + vminpd {sae}, %zmm8, %zmm9, %zmm3 > > > + vmovups 832+__svml_dacos_data_internal(%rip), %zmm9 > > > + vxorpd %zmm12, %zmm12, %zmm12{%k2} > > > + vaddpd {rn-sae}, %zmm8, %zmm8, %zmm0 > > > + vcmppd $21, {sae}, %zmm8, %zmm3, %k1 > > > + > > > +/* X<X^2 iff X<0 */ > > > + vcmppd $17, {sae}, %zmm3, %zmm6, %k3 > > > + vmulpd {rn-sae}, %zmm12, %zmm12, %zmm13 > > > + vmulpd {rn-sae}, %zmm12, %zmm0, %zmm7 > > > + vmovups 896+__svml_dacos_data_internal(%rip), %zmm12 > > > + > > > +/* polynomial */ > > > + vmovups 704+__svml_dacos_data_internal(%rip), %zmm8 > > > + vfmsub213pd {rn-sae}, %zmm14, %zmm13, %zmm0 > > > + vmovups 640+__svml_dacos_data_internal(%rip), %zmm13 > > > + vfmadd231pd {rn-sae}, %zmm3, %zmm9, %zmm12 > > > + vmovups 1344+__svml_dacos_data_internal(%rip), %zmm9 > > > + vfmadd231pd {rn-sae}, %zmm0, %zmm15, %zmm2 > > > + vmovups 1216+__svml_dacos_data_internal(%rip), %zmm15 > > > + vmulpd {rn-sae}, %zmm0, %zmm7, %zmm14 > > > + vfmadd213pd {rn-sae}, %zmm1, %zmm0, %zmm2 > > > + vmovups 768+__svml_dacos_data_internal(%rip), %zmm1 > > > + kmovw %k1, %eax > > > + kmovw %k3, %ecx > > > + kmovw %k0, %edx > > > + vfmadd213pd {rn-sae}, %zmm13, %zmm0, %zmm2 > > > + vfmadd231pd {rn-sae}, %zmm3, %zmm8, %zmm1 > > > + vmovups 1280+__svml_dacos_data_internal(%rip), %zmm8 > > > + vmulpd {rn-sae}, %zmm3, %zmm3, %zmm0 > > > + vfnmadd213pd {rn-sae}, %zmm7, %zmm14, %zmm2 > > > + vmovups 1024+__svml_dacos_data_internal(%rip), %zmm7 > > > + vfmadd231pd {rn-sae}, %zmm3, %zmm15, %zmm8 > > > + vfmadd213pd {rn-sae}, %zmm12, %zmm0, %zmm1 > > > + vblendmpd %zmm2, %zmm5, %zmm2{%k1} > > > + vfmadd231pd {rn-sae}, %zmm3, %zmm10, %zmm7 > > > + vmovups 1152+__svml_dacos_data_internal(%rip), %zmm10 > > > + vfmadd231pd {rn-sae}, %zmm3, %zmm11, %zmm10 > > > + andl %eax, %ecx > > > + vmovups 1408+__svml_dacos_data_internal(%rip), %zmm11 > > > + kmovw %ecx, %k2 > > > + vfmadd213pd {rn-sae}, %zmm10, %zmm0, %zmm7 > > > + vfmadd231pd {rn-sae}, %zmm3, %zmm9, %zmm11 > > > + vmulpd {rn-sae}, %zmm0, %zmm0, %zmm10 > > > + vfmadd213pd {rn-sae}, %zmm7, %zmm10, %zmm1 > > > + vfmadd213pd {rn-sae}, %zmm8, %zmm0, %zmm1 > > > + vfmadd213pd {rn-sae}, %zmm11, %zmm0, %zmm1 > > > + vmovups 1664+__svml_dacos_data_internal(%rip), %zmm0 > > > + vmulpd {rn-sae}, %zmm3, %zmm1, %zmm1 > > > + vxorpd %zmm4, %zmm2, %zmm3 > > > + vxorpd %zmm0, %zmm0, %zmm0{%k1} > > > + vfmadd213pd {rn-sae}, %zmm3, %zmm3, %zmm1 > > > + vorpd 1536+__svml_dacos_data_internal(%rip), %zmm0, %zmm0{%k2} > > > + vaddpd {rn-sae}, %zmm1, %zmm0, %zmm0 > > > + testl %edx, %edx > > > + jne .LBL_1_3 > > > + > > > +.LBL_1_2: > > > + movq %rbp, %rsp > > > + popq %rbp > > > + cfi_def_cfa(7, 8) > > > + cfi_restore(6) > > > + ret > > > + cfi_def_cfa(6, 16) > > > + cfi_offset(6, -16) > > > + > > > +.LBL_1_3: > > > + vmovups %zmm6, 64(%rsp) > > > + vmovups %zmm0, 128(%rsp) > > > + je .LBL_1_2 > > > + xorl %eax, %eax > > > + vzeroupper > > > + kmovw %k4, 24(%rsp) > > > + kmovw %k5, 16(%rsp) > > > + kmovw %k6, 8(%rsp) > > > + kmovw %k7, (%rsp) > > > + movq %rsi, 40(%rsp) > > > + movq %rdi, 32(%rsp) > > > + movq %r12, 56(%rsp) > > > + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22 > > > + movl %eax, %r12d > > > + movq %r13, 48(%rsp) > > > + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22 > > > + movl %edx, %r13d > > > + .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 > > > + > > > +.LBL_1_7: > > > + btl %r12d, %r13d > > > + jc .LBL_1_10 > > > + > > > +.LBL_1_8: > > > + incl %r12d > > > + cmpl $8, %r12d > > > + jl .LBL_1_7 > > > + kmovw 24(%rsp), %k4 > > > + cfi_restore(122) > > > + kmovw 16(%rsp), %k5 > > > + cfi_restore(123) > > > + kmovw 8(%rsp), %k6 > > > + cfi_restore(124) > > > + kmovw (%rsp), %k7 > > > + cfi_restore(125) > > > + vmovups 128(%rsp), %zmm0 > > > + movq 40(%rsp), %rsi > > > + cfi_restore(4) > > > + movq 32(%rsp), %rdi > > > + cfi_restore(5) > > > + movq 56(%rsp), %r12 > > > + cfi_restore(12) > > > + movq 48(%rsp), %r13 > > > + cfi_restore(13) > > > + jmp .LBL_1_2 > > > + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 > > > + > > > +.LBL_1_10: > > > + lea 64(%rsp,%r12,8), %rdi > > > + lea 128(%rsp,%r12,8), %rsi > > > + call __svml_dacos_cout_rare_internal > > > + jmp .LBL_1_8 > > > + > > > +END(_ZGVeN8v_acos_skx) > > > + > > > + .align 16,0x90 > > > + > > > +__svml_dacos_cout_rare_internal: > > > + > > > + cfi_startproc > > > + > > > + xorl %eax, %eax > > > + movzwl 6(%rdi), %edx > > > + andl $32752, %edx > > > + movb 7(%rdi), %cl > > > + movsd (%rdi), %xmm1 > > > + cmpl $32752, %edx > > > + je .LBL_2_20 > > > + movsd %xmm1, -32(%rsp) > > > + andb $127, %cl > > > + movb %cl, -25(%rsp) > > > + movsd -32(%rsp), %xmm12 > > > + movsd 4168+_vmldACosHATab(%rip), %xmm0 > > > + comisd %xmm12, %xmm0 > > > + jbe .LBL_2_14 > > > + movsd 4176+_vmldACosHATab(%rip), %xmm1 > > > + comisd %xmm12, %xmm1 > > > + jbe .LBL_2_10 > > > + comisd 4128+_vmldACosHATab(%rip), %xmm12 > > > + jbe .LBL_2_9 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm6 > > > + movaps %xmm12, %xmm8 > > > + mulsd %xmm12, %xmm6 > > > + movaps %xmm12, %xmm7 > > > + movsd %xmm6, -40(%rsp) > > > + movsd -40(%rsp), %xmm13 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm5 > > > + subsd -32(%rsp), %xmm13 > > > + movsd %xmm13, -48(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + movsd -48(%rsp), %xmm14 > > > + subsd %xmm14, %xmm15 > > > + movaps %xmm12, %xmm14 > > > + movsd %xmm15, -40(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + subsd %xmm6, %xmm8 > > > + movsd %xmm8, -48(%rsp) > > > + movsd -40(%rsp), %xmm9 > > > + movaps %xmm9, %xmm4 > > > + addsd %xmm9, %xmm7 > > > + mulsd %xmm9, %xmm4 > > > + movsd -48(%rsp), %xmm10 > > > + movaps %xmm4, %xmm11 > > > + mulsd %xmm10, %xmm7 > > > + mulsd %xmm4, %xmm5 > > > + addsd %xmm7, %xmm11 > > > + movsd 4312+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm5, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm5 > > > + subsd %xmm4, %xmm1 > > > + addsd 4304+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm1, -48(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + addsd 4296+_vmldACosHATab(%rip), %xmm8 > > > + subsd %xmm2, %xmm0 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + addsd 4288+_vmldACosHATab(%rip), %xmm8 > > > + subsd %xmm3, %xmm4 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm4, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + mulsd %xmm6, %xmm9 > > > + addsd 4280+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm6, %xmm10 > > > + mulsd %xmm11, %xmm8 > > > + mulsd %xmm9, %xmm5 > > > + addsd 4272+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movaps %xmm9, %xmm0 > > > + movsd -48(%rsp), %xmm13 > > > + movaps %xmm6, %xmm4 > > > + movsd %xmm5, -40(%rsp) > > > + addsd %xmm13, %xmm7 > > > + addsd 4264+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm7, %xmm14 > > > + mulsd %xmm11, %xmm8 > > > + addsd %xmm14, %xmm10 > > > + addsd 4256+_vmldACosHATab(%rip), %xmm8 > > > + movsd -40(%rsp), %xmm1 > > > + mulsd %xmm11, %xmm8 > > > + subsd %xmm9, %xmm1 > > > + addsd %xmm10, %xmm9 > > > + addsd 4248+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm9, %xmm7 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm1, -48(%rsp) > > > + movsd -40(%rsp), %xmm2 > > > + movsd -48(%rsp), %xmm15 > > > + subsd %xmm15, %xmm2 > > > + addsd 4240+_vmldACosHATab(%rip), %xmm8 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm5 > > > + mulsd %xmm11, %xmm8 > > > + subsd %xmm5, %xmm0 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movsd -48(%rsp), %xmm5 > > > + movaps %xmm5, %xmm13 > > > + addsd 4232+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm3, %xmm4 > > > + addsd %xmm10, %xmm13 > > > + mulsd %xmm11, %xmm8 > > > + mulsd %xmm13, %xmm6 > > > + addsd 4224+_vmldACosHATab(%rip), %xmm8 > > > + addsd %xmm7, %xmm6 > > > + mulsd %xmm11, %xmm8 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm7 > > > + movaps %xmm4, %xmm13 > > > + mulsd %xmm4, %xmm7 > > > + addsd 4216+_vmldACosHATab(%rip), %xmm8 > > > + movsd %xmm7, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4200+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm4, %xmm1 > > > + mulsd %xmm9, %xmm11 > > > + addsd %xmm6, %xmm4 > > > + movsd %xmm1, -48(%rsp) > > > + movaps %xmm12, %xmm9 > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + movsd 4192+_vmldACosHATab(%rip), %xmm1 > > > + subsd %xmm2, %xmm0 > > > + mulsd %xmm1, %xmm3 > > > + mulsd %xmm1, %xmm10 > > > + mulsd %xmm4, %xmm8 > > > + addsd %xmm3, %xmm9 > > > + mulsd %xmm1, %xmm5 > > > + addsd %xmm10, %xmm11 > > > + movsd %xmm0, -40(%rsp) > > > + addsd %xmm11, %xmm8 > > > + movsd -40(%rsp), %xmm7 > > > + addsd %xmm5, %xmm8 > > > + subsd %xmm7, %xmm13 > > > + movsd %xmm13, -48(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + movsd %xmm9, -40(%rsp) > > > + addsd %xmm2, %xmm6 > > > + movsd -40(%rsp), %xmm10 > > > + movsd %xmm3, -56(%rsp) > > > + subsd %xmm10, %xmm12 > > > + movsd 4208+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm12, %xmm3 > > > + mulsd %xmm4, %xmm0 > > > + mulsd %xmm4, %xmm6 > > > + movsd %xmm3, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movaps %xmm3, %xmm12 > > > + movsd -48(%rsp), %xmm7 > > > + addsd %xmm0, %xmm12 > > > + addsd %xmm7, %xmm8 > > > + movsd %xmm12, -40(%rsp) > > > + movsd -40(%rsp), %xmm12 > > > + subsd %xmm12, %xmm3 > > > + addsd %xmm3, %xmm0 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movsd -48(%rsp), %xmm0 > > > + movsd (%rdi), %xmm1 > > > + addsd %xmm8, %xmm0 > > > + comisd 4184+_vmldACosHATab(%rip), %xmm1 > > > + addsd %xmm0, %xmm6 > > > + jbe .LBL_2_7 > > > + movsd 4136+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm2, %xmm0 > > > + subsd %xmm3, %xmm0 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4144+_vmldACosHATab(%rip), %xmm0 > > > + subsd %xmm1, %xmm2 > > > + subsd %xmm6, %xmm0 > > > + subsd %xmm3, %xmm2 > > > + movsd %xmm2, -48(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd -48(%rsp), %xmm3 > > > + addsd %xmm3, %xmm0 > > > + jmp .LBL_2_8 > > > + > > > +.LBL_2_7: > > > + movsd 4136+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm3, %xmm0 > > > + addsd %xmm2, %xmm0 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + subsd %xmm1, %xmm2 > > > + addsd %xmm2, %xmm3 > > > + movsd %xmm3, -48(%rsp) > > > + movsd 4144+_vmldACosHATab(%rip), %xmm3 > > > + movsd -40(%rsp), %xmm1 > > > + addsd %xmm3, %xmm6 > > > + movsd -48(%rsp), %xmm0 > > > + addsd %xmm6, %xmm0 > > > + > > > +.LBL_2_8: > > > + addsd %xmm0, %xmm1 > > > + movsd %xmm1, (%rsi) > > > + ret > > > + > > > +.LBL_2_9: > > > + movsd 4144+_vmldACosHATab(%rip), %xmm1 > > > + addsd %xmm0, %xmm12 > > > + movsd %xmm12, -40(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + mulsd -32(%rsp), %xmm0 > > > + movsd %xmm0, -56(%rsp) > > > + movb -49(%rsp), %dl > > > + movb 7(%rdi), %dil > > > + andb $127, %dl > > > + andb $-128, %dil > > > + orb %dil, %dl > > > + movb %dl, -49(%rsp) > > > + subsd -56(%rsp), %xmm1 > > > + addsd 4136+_vmldACosHATab(%rip), %xmm1 > > > + movsd %xmm1, (%rsi) > > > + ret > > > + > > > +.LBL_2_10: > > > + movaps %xmm0, %xmm8 > > > + movzwl 4174+_vmldACosHATab(%rip), %r9d > > > + pxor %xmm13, %xmm13 > > > + andl $-32753, %r9d > > > + subsd %xmm12, %xmm8 > > > + subsd %xmm0, %xmm13 > > > + mulsd %xmm8, %xmm1 > > > + movsd %xmm1, -56(%rsp) > > > + movzwl -50(%rsp), %ecx > > > + andl $32752, %ecx > > > + shrl $4, %ecx > > > + addl $-1023, %ecx > > > + movl %ecx, %r8d > > > + movl %ecx, %edx > > > + negl %r8d > > > + addl $1023, %r8d > > > + andl $2047, %r8d > > > + shll $4, %r8d > > > + movsd %xmm0, -32(%rsp) > > > + orl %r8d, %r9d > > > + movw %r9w, -26(%rsp) > > > + andl $1, %edx > > > + movsd -32(%rsp), %xmm4 > > > + lea _vmldACosHATab(%rip), %r8 > > > + mulsd %xmm4, %xmm1 > > > + movl %edx, %r10d > > > + movaps %xmm1, %xmm15 > > > + movsd 4112+_vmldACosHATab(%rip), %xmm6 > > > + addsd %xmm1, %xmm15 > > > + jne .LBL_54 > > > + movaps %xmm1, %xmm15 > > > + > > > +.LBL_54: > > > + mulsd %xmm15, %xmm6 > > > + movaps %xmm15, %xmm7 > > > + movaps %xmm6, %xmm9 > > > + subl %edx, %ecx > > > + movsd 4120+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm15, %xmm9 > > > + addsd %xmm1, %xmm11 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -48(%rsp), %xmm10 > > > + movsd %xmm11, -24(%rsp) > > > + subsd %xmm10, %xmm6 > > > + movl -24(%rsp), %r11d > > > + movaps %xmm6, %xmm14 > > > + shll $8, %r10d > > > + andl $511, %r11d > > > + addl %r10d, %r11d > > > + subsd %xmm6, %xmm7 > > > + movsd (%r8,%r11,8), %xmm5 > > > + addsd %xmm7, %xmm14 > > > + mulsd %xmm5, %xmm6 > > > + movaps %xmm5, %xmm12 > > > + mulsd %xmm5, %xmm12 > > > + mulsd %xmm12, %xmm14 > > > + movsd 4512+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm13, %xmm14 > > > + mulsd %xmm14, %xmm4 > > > + shrl $1, %ecx > > > + addsd 4504+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + addl $1023, %ecx > > > + andl $2047, %ecx > > > + addsd 4496+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movzwl 4174+_vmldACosHATab(%rip), %r9d > > > + shll $4, %ecx > > > + andl $-32753, %r9d > > > + movsd %xmm0, -16(%rsp) > > > + orl %ecx, %r9d > > > + movw %r9w, -10(%rsp) > > > + movsd -16(%rsp), %xmm9 > > > + mulsd %xmm9, %xmm6 > > > + addsd 4488+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm3 > > > + mulsd %xmm6, %xmm3 > > > + addsd 4480+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movsd %xmm3, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4352+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm6, %xmm1 > > > + addsd 4472+_vmldACosHATab(%rip), %xmm4 > > > + addsd 4360+_vmldACosHATab(%rip), %xmm11 > > > + mulsd %xmm14, %xmm4 > > > + mulsd %xmm8, %xmm11 > > > + addsd 4464+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + mulsd %xmm15, %xmm4 > > > + movsd %xmm1, -48(%rsp) > > > + addsd %xmm4, %xmm7 > > > + mulsd %xmm5, %xmm7 > > > + movsd 4456+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm9, %xmm7 > > > + addsd 4448+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm2 > > > + movsd -48(%rsp), %xmm0 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm4 > > > + subsd %xmm0, %xmm2 > > > + mulsd %xmm8, %xmm4 > > > + addsd 4440+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movaps %xmm8, %xmm0 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm14 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm2 > > > + subsd %xmm14, %xmm6 > > > + addsd 4432+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm6, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + movsd -48(%rsp), %xmm10 > > > + movsd %xmm4, -40(%rsp) > > > + addsd %xmm10, %xmm7 > > > + addsd 4424+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm3 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm12 > > > + subsd %xmm8, %xmm3 > > > + addsd 4416+_vmldACosHATab(%rip), %xmm5 > > > + addsd 4344+_vmldACosHATab(%rip), %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + addsd %xmm11, %xmm12 > > > + addsd 4408+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm3, -48(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd -48(%rsp), %xmm15 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm13 > > > + subsd %xmm15, %xmm1 > > > + addsd 4400+_vmldACosHATab(%rip), %xmm5 > > > + addsd 4328+_vmldACosHATab(%rip), %xmm13 > > > + mulsd %xmm8, %xmm5 > > > + addsd %xmm12, %xmm13 > > > + addsd 4392+_vmldACosHATab(%rip), %xmm5 > > > + movsd %xmm1, -40(%rsp) > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm4 > > > + subsd %xmm4, %xmm0 > > > + addsd 4384+_vmldACosHATab(%rip), %xmm5 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm4 > > > + movaps %xmm4, %xmm14 > > > + mulsd %xmm4, %xmm14 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm14, %xmm2 > > > + addsd 4376+_vmldACosHATab(%rip), %xmm5 > > > + movsd -48(%rsp), %xmm3 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm9 > > > + mulsd %xmm8, %xmm5 > > > + subsd %xmm14, %xmm9 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -40(%rsp), %xmm11 > > > + movsd -48(%rsp), %xmm10 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm0 > > > + subsd %xmm10, %xmm11 > > > + mulsd %xmm4, %xmm0 > > > + addsd 4368+_vmldACosHATab(%rip), %xmm5 > > > + addsd %xmm8, %xmm4 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm3, %xmm4 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm11, -40(%rsp) > > > + movaps %xmm0, %xmm1 > > > + movsd -40(%rsp), %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + subsd %xmm12, %xmm14 > > > + movsd %xmm14, -48(%rsp) > > > + addsd %xmm5, %xmm13 > > > + movsd -40(%rsp), %xmm9 > > > + mulsd 4352+_vmldACosHATab(%rip), %xmm9 > > > + mulsd %xmm13, %xmm7 > > > + addsd %xmm9, %xmm1 > > > + movsd -48(%rsp), %xmm2 > > > + movsd %xmm1, -40(%rsp) > > > + addsd %xmm2, %xmm4 > > > + movsd -40(%rsp), %xmm13 > > > + movsd %xmm9, -24(%rsp) > > > + subsd %xmm13, %xmm0 > > > + mulsd 4352+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm0, %xmm9 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -40(%rsp), %xmm12 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm10 > > > + movsd -48(%rsp), %xmm1 > > > + addsd %xmm12, %xmm10 > > > + movsd %xmm10, -40(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm11 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm9 > > > + subsd %xmm15, %xmm11 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm2 > > > + addsd %xmm11, %xmm12 > > > + mulsd %xmm3, %xmm2 > > > + movsd %xmm12, -48(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + mulsd %xmm15, %xmm9 > > > + movsd -48(%rsp), %xmm0 > > > + movsd %xmm9, -40(%rsp) > > > + movsd -40(%rsp), %xmm10 > > > + movsd 4360+_vmldACosHATab(%rip), %xmm3 > > > + subsd %xmm15, %xmm10 > > > + mulsd %xmm8, %xmm3 > > > + movsd %xmm10, -48(%rsp) > > > + movsd -40(%rsp), %xmm11 > > > + movsd -48(%rsp), %xmm13 > > > + subsd %xmm13, %xmm11 > > > + addsd 4344+_vmldACosHATab(%rip), %xmm3 > > > + movsd %xmm11, -40(%rsp) > > > + movsd -40(%rsp), %xmm14 > > > + mulsd %xmm8, %xmm3 > > > + subsd %xmm14, %xmm15 > > > + movsd %xmm15, -48(%rsp) > > > + movsd -40(%rsp), %xmm10 > > > + movsd -48(%rsp), %xmm9 > > > + addsd %xmm9, %xmm4 > > > + addsd 4328+_vmldACosHATab(%rip), %xmm3 > > > + addsd %xmm2, %xmm4 > > > + addsd %xmm5, %xmm3 > > > + addsd %xmm1, %xmm4 > > > + addsd %xmm0, %xmm4 > > > + addsd %xmm3, %xmm4 > > > + mulsd %xmm6, %xmm4 > > > + mulsd %xmm10, %xmm6 > > > + addsd %xmm7, %xmm4 > > > + movsd (%rdi), %xmm7 > > > + comisd 4184+_vmldACosHATab(%rip), %xmm7 > > > + ja .LBL_2_13 > > > + movsd 4152+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm2, %xmm0 > > > + movsd 4160+_vmldACosHATab(%rip), %xmm5 > > > + subsd %xmm6, %xmm0 > > > + subsd %xmm4, %xmm5 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd %xmm6, -56(%rsp) > > > + subsd %xmm1, %xmm2 > > > + subsd %xmm6, %xmm2 > > > + movsd %xmm2, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + movsd -48(%rsp), %xmm3 > > > + movaps %xmm3, %xmm4 > > > + addsd %xmm5, %xmm4 > > > + > > > +.LBL_2_13: > > > + addsd %xmm4, %xmm6 > > > + movsd %xmm6, (%rsi) > > > + ret > > > + > > > +.LBL_2_14: > > > + ucomisd %xmm0, %xmm1 > > > + jp .LBL_2_15 > > > + je .LBL_2_19 > > > + > > > +.LBL_2_15: > > > + xorps .FLT_197(%rip), %xmm0 > > > + ucomisd %xmm0, %xmm1 > > > + jp .LBL_2_16 > > > + je .LBL_2_18 > > > + > > > +.LBL_2_16: > > > + movl $1, %eax > > > + pxor %xmm1, %xmm1 > > > + pxor %xmm0, %xmm0 > > > + divsd %xmm0, %xmm1 > > > + movsd %xmm1, (%rsi) > > > + > > > +.LBL_2_17: > > > + ret > > > + > > > +.LBL_2_18: > > > + movsd 4152+_vmldACosHATab(%rip), %xmm0 > > > + addsd 4160+_vmldACosHATab(%rip), %xmm0 > > > + movsd %xmm0, (%rsi) > > > + ret > > > + > > > +.LBL_2_19: > > > + movq 4184+_vmldACosHATab(%rip), %rdx > > > + movq %rdx, (%rsi) > > > + ret > > > + > > > +.LBL_2_20: > > > + divsd %xmm1, %xmm1 > > > + movsd %xmm1, (%rsi) > > > + testl $1048575, 4(%rdi) > > > + jne .LBL_2_17 > > > + cmpl $0, (%rdi) > > > + sete %al > > > + ret > > > + > > > + cfi_endproc > > > + > > > + .type __svml_dacos_cout_rare_internal,@function > > > + .size __svml_dacos_cout_rare_internal,.-__svml_dacos_cout_rare_internal > > > + > > > + .section .rodata, "a" > > > + .align 64 > > > + > > > +__svml_dacos_data_internal: > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 805306368 > > > + .long 0 > > > + .long 805306368 > > > + .long 0 > > > + .long 805306368 > > > + .long 0 > > > + .long 805306368 > > > + .long 0 > > > + .long 805306368 > > > + .long 0 > > > + .long 805306368 > > > + .long 0 > > > + .long 805306368 > > > + .long 0 > > > + .long 805306368 > > > + .long 0 > > > + .long 4294967040 > > > + .long 0 > > > + .long 4294967040 > > > + .long 0 > > > + .long 4294967040 > > > + .long 0 > > > + .long 4294967040 > > > + .long 0 > > > + .long 4294967040 > > > + .long 0 > > > + .long 4294967040 > > > + .long 0 > > > + .long 4294967040 > > > + .long 0 > > > + .long 4294967040 > > > + .long 0 > > > + .long 3220176896 > > > + .long 0 > > > + .long 3220176896 > > > + .long 0 > > > + .long 3220176896 > > > + .long 0 > > > + .long 3220176896 > > > + .long 0 > > > + .long 3220176896 > > > + .long 0 > > > + .long 3220176896 > > > + .long 0 > > > + .long 3220176896 > > > + .long 0 > > > + .long 3220176896 > > > + .long 4227858432 > > > + .long 4294967295 > > > + .long 4227858432 > > > + .long 4294967295 > > > + .long 4227858432 > > > + .long 4294967295 > > > + .long 4227858432 > > > + .long 4294967295 > > > + .long 4227858432 > > > + .long 4294967295 > > > + .long 4227858432 > > > + .long 4294967295 > > > + .long 4227858432 > > > + .long 4294967295 > > > + .long 4227858432 > > > + .long 4294967295 > > > + .long 0 > > > + .long 1073741824 > > > + .long 0 > > > + .long 1073741824 > > > + .long 0 > > > + .long 1073741824 > > > + .long 0 > > > + .long 1073741824 > > > + .long 0 > > > + .long 1073741824 > > > + .long 0 > > > + .long 1073741824 > > > + .long 0 > > > + .long 1073741824 > > > + .long 0 > > > + .long 1073741824 > > > + .long 2570790083 > > > + .long 3213983744 > > > + .long 2570790083 > > > + .long 3213983744 > > > + .long 2570790083 > > > + .long 3213983744 > > > + .long 2570790083 > > > + .long 3213983744 > > > + .long 2570790083 > > > + .long 3213983744 > > > + .long 2570790083 > > > + .long 3213983744 > > > + .long 2570790083 > > > + .long 3213983744 > > > + .long 2570790083 > > > + .long 3213983744 > > > + .long 1869665325 > > > + .long 1067712512 > > > + .long 1869665325 > > > + .long 1067712512 > > > + .long 1869665325 > > > + .long 1067712512 > > > + .long 1869665325 > > > + .long 1067712512 > > > + .long 1869665325 > > > + .long 1067712512 > > > + .long 1869665325 > > > + .long 1067712512 > > > + .long 1869665325 > > > + .long 1067712512 > > > + .long 1869665325 > > > + .long 1067712512 > > > + .long 4294966935 > > > + .long 3216506879 > > > + .long 4294966935 > > > + .long 3216506879 > > > + .long 4294966935 > > > + .long 3216506879 > > > + .long 4294966935 > > > + .long 3216506879 > > > + .long 4294966935 > > > + .long 3216506879 > > > + .long 4294966935 > > > + .long 3216506879 > > > + .long 4294966935 > > > + .long 3216506879 > > > + .long 4294966935 > > > + .long 3216506879 > > > + .long 4294967197 > > > + .long 1070596095 > > > + .long 4294967197 > > > + .long 1070596095 > > > + .long 4294967197 > > > + .long 1070596095 > > > + .long 4294967197 > > > + .long 1070596095 > > > + .long 4294967197 > > > + .long 1070596095 > > > + .long 4294967197 > > > + .long 1070596095 > > > + .long 4294967197 > > > + .long 1070596095 > > > + .long 4294967197 > > > + .long 1070596095 > > > + .long 3339630857 > > > + .long 1067480352 > > > + .long 3339630857 > > > + .long 1067480352 > > > + .long 3339630857 > > > + .long 1067480352 > > > + .long 3339630857 > > > + .long 1067480352 > > > + .long 3339630857 > > > + .long 1067480352 > > > + .long 3339630857 > > > + .long 1067480352 > > > + .long 3339630857 > > > + .long 1067480352 > > > + .long 3339630857 > > > + .long 1067480352 > > > + .long 4158370029 > > > + .long 3213949719 > > > + .long 4158370029 > > > + .long 3213949719 > > > + .long 4158370029 > > > + .long 3213949719 > > > + .long 4158370029 > > > + .long 3213949719 > > > + .long 4158370029 > > > + .long 3213949719 > > > + .long 4158370029 > > > + .long 3213949719 > > > + .long 4158370029 > > > + .long 3213949719 > > > + .long 4158370029 > > > + .long 3213949719 > > > + .long 3216784302 > > > + .long 1066680132 > > > + .long 3216784302 > > > + .long 1066680132 > > > + .long 3216784302 > > > + .long 1066680132 > > > + .long 3216784302 > > > + .long 1066680132 > > > + .long 3216784302 > > > + .long 1066680132 > > > + .long 3216784302 > > > + .long 1066680132 > > > + .long 3216784302 > > > + .long 1066680132 > > > + .long 3216784302 > > > + .long 1066680132 > > > + .long 2513723093 > > > + .long 1064982579 > > > + .long 2513723093 > > > + .long 1064982579 > > > + .long 2513723093 > > > + .long 1064982579 > > > + .long 2513723093 > > > + .long 1064982579 > > > + .long 2513723093 > > > + .long 1064982579 > > > + .long 2513723093 > > > + .long 1064982579 > > > + .long 2513723093 > > > + .long 1064982579 > > > + .long 2513723093 > > > + .long 1064982579 > > > + .long 721210070 > > > + .long 1065941212 > > > + .long 721210070 > > > + .long 1065941212 > > > + .long 721210070 > > > + .long 1065941212 > > > + .long 721210070 > > > + .long 1065941212 > > > + .long 721210070 > > > + .long 1065941212 > > > + .long 721210070 > > > + .long 1065941212 > > > + .long 721210070 > > > + .long 1065941212 > > > + .long 721210070 > > > + .long 1065941212 > > > + .long 3414736215 > > > + .long 1066167739 > > > + .long 3414736215 > > > + .long 1066167739 > > > + .long 3414736215 > > > + .long 1066167739 > > > + .long 3414736215 > > > + .long 1066167739 > > > + .long 3414736215 > > > + .long 1066167739 > > > + .long 3414736215 > > > + .long 1066167739 > > > + .long 3414736215 > > > + .long 1066167739 > > > + .long 3414736215 > > > + .long 1066167739 > > > + .long 4114132270 > > > + .long 1066518236 > > > + .long 4114132270 > > > + .long 1066518236 > > > + .long 4114132270 > > > + .long 1066518236 > > > + .long 4114132270 > > > + .long 1066518236 > > > + .long 4114132270 > > > + .long 1066518236 > > > + .long 4114132270 > > > + .long 1066518236 > > > + .long 4114132270 > > > + .long 1066518236 > > > + .long 4114132270 > > > + .long 1066518236 > > > + .long 3957258973 > > > + .long 1066854556 > > > + .long 3957258973 > > > + .long 1066854556 > > > + .long 3957258973 > > > + .long 1066854556 > > > + .long 3957258973 > > > + .long 1066854556 > > > + .long 3957258973 > > > + .long 1066854556 > > > + .long 3957258973 > > > + .long 1066854556 > > > + .long 3957258973 > > > + .long 1066854556 > > > + .long 3957258973 > > > + .long 1066854556 > > > + .long 3778730174 > > > + .long 1067392114 > > > + .long 3778730174 > > > + .long 1067392114 > > > + .long 3778730174 > > > + .long 1067392114 > > > + .long 3778730174 > > > + .long 1067392114 > > > + .long 3778730174 > > > + .long 1067392114 > > > + .long 3778730174 > > > + .long 1067392114 > > > + .long 3778730174 > > > + .long 1067392114 > > > + .long 3778730174 > > > + .long 1067392114 > > > + .long 3014936056 > > > + .long 1067899757 > > > + .long 3014936056 > > > + .long 1067899757 > > > + .long 3014936056 > > > + .long 1067899757 > > > + .long 3014936056 > > > + .long 1067899757 > > > + .long 3014936056 > > > + .long 1067899757 > > > + .long 3014936056 > > > + .long 1067899757 > > > + .long 3014936056 > > > + .long 1067899757 > > > + .long 3014936056 > > > + .long 1067899757 > > > + .long 859300062 > > > + .long 1068708659 > > > + .long 859300062 > > > + .long 1068708659 > > > + .long 859300062 > > > + .long 1068708659 > > > + .long 859300062 > > > + .long 1068708659 > > > + .long 859300062 > > > + .long 1068708659 > > > + .long 859300062 > > > + .long 1068708659 > > > + .long 859300062 > > > + .long 1068708659 > > > + .long 859300062 > > > + .long 1068708659 > > > + .long 1431655068 > > > + .long 1069897045 > > > + .long 1431655068 > > > + .long 1069897045 > > > + .long 1431655068 > > > + .long 1069897045 > > > + .long 1431655068 > > > + .long 1069897045 > > > + .long 1431655068 > > > + .long 1069897045 > > > + .long 1431655068 > > > + .long 1069897045 > > > + .long 1431655068 > > > + .long 1069897045 > > > + .long 1431655068 > > > + .long 1069897045 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 2147483648 > > > + .long 0 > > > + .long 4294705152 > > > + .long 0 > > > + .long 4294705152 > > > + .long 0 > > > + .long 4294705152 > > > + .long 0 > > > + .long 4294705152 > > > + .long 0 > > > + .long 4294705152 > > > + .long 0 > > > + .long 4294705152 > > > + .long 0 > > > + .long 4294705152 > > > + .long 0 > > > + .long 4294705152 > > > + .long 4131758366 > > > + .long 1067674714 > > > + .long 4131758366 > > > + .long 1067674714 > > > + .long 4131758366 > > > + .long 1067674714 > > > + .long 4131758366 > > > + .long 1067674714 > > > + .long 4131758366 > > > + .long 1067674714 > > > + .long 4131758366 > > > + .long 1067674714 > > > + .long 4131758366 > > > + .long 1067674714 > > > + .long 4131758366 > > > + .long 1067674714 > > > + .long 3936260738 > > > + .long 1066197319 > > > + .long 3936260738 > > > + .long 1066197319 > > > + .long 3936260738 > > > + .long 1066197319 > > > + .long 3936260738 > > > + .long 1066197319 > > > + .long 3936260738 > > > + .long 1066197319 > > > + .long 3936260738 > > > + .long 1066197319 > > > + .long 3936260738 > > > + .long 1066197319 > > > + .long 3936260738 > > > + .long 1066197319 > > > + .long 354394453 > > > + .long 1067472564 > > > + .long 354394453 > > > + .long 1067472564 > > > + .long 354394453 > > > + .long 1067472564 > > > + .long 354394453 > > > + .long 1067472564 > > > + .long 354394453 > > > + .long 1067472564 > > > + .long 354394453 > > > + .long 1067472564 > > > + .long 354394453 > > > + .long 1067472564 > > > + .long 354394453 > > > + .long 1067472564 > > > + .long 709676628 > > > + .long 1067895021 > > > + .long 709676628 > > > + .long 1067895021 > > > + .long 709676628 > > > + .long 1067895021 > > > + .long 709676628 > > > + .long 1067895021 > > > + .long 709676628 > > > + .long 1067895021 > > > + .long 709676628 > > > + .long 1067895021 > > > + .long 709676628 > > > + .long 1067895021 > > > + .long 709676628 > > > + .long 1067895021 > > > + .long 3958922090 > > > + .long 1068708761 > > > + .long 3958922090 > > > + .long 1068708761 > > > + .long 3958922090 > > > + .long 1068708761 > > > + .long 3958922090 > > > + .long 1068708761 > > > + .long 3958922090 > > > + .long 1068708761 > > > + .long 3958922090 > > > + .long 1068708761 > > > + .long 3958922090 > > > + .long 1068708761 > > > + .long 3958922090 > > > + .long 1068708761 > > > + .long 2160605765 > > > + .long 1069897044 > > > + .long 2160605765 > > > + .long 1069897044 > > > + .long 2160605765 > > > + .long 1069897044 > > > + .long 2160605765 > > > + .long 1069897044 > > > + .long 2160605765 > > > + .long 1069897044 > > > + .long 2160605765 > > > + .long 1069897044 > > > + .long 2160605765 > > > + .long 1069897044 > > > + .long 2160605765 > > > + .long 1069897044 > > > + .long 0 > > > + .long 2146435072 > > > + .long 0 > > > + .long 4293918720 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 1072693248 > > > + .long 0 > > > + .long 3220176896 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 2147483648 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .type __svml_dacos_data_internal,@object > > > + .size __svml_dacos_data_internal,2496 > > > + .align 32 > > > + > > > +_vmldACosHATab: > > > + .long 0 > > > + .long 1072693248 > > > + .long 0 > > > + .long 1072689152 > > > + .long 0 > > > + .long 1072685056 > > > + .long 0 > > > + .long 1072680960 > > > + .long 0 > > > + .long 1072676864 > > > + .long 0 > > > + .long 1072672768 > > > + .long 0 > > > + .long 1072668672 > > > + .long 0 > > > + .long 1072665600 > > > + .long 0 > > > + .long 1072661504 > > > + .long 0 > > > + .long 1072657408 > > > + .long 0 > > > + .long 1072653312 > > > + .long 0 > > > + .long 1072649216 > > > + .long 0 > > > + .long 1072646144 > > > + .long 0 > > > + .long 1072642048 > > > + .long 0 > > > + .long 1072637952 > > > + .long 0 > > > + .long 1072634880 > > > + .long 0 > > > + .long 1072630784 > > > + .long 0 > > > + .long 1072626688 > > > + .long 0 > > > + .long 1072623616 > > > + .long 0 > > > + .long 1072619520 > > > + .long 0 > > > + .long 1072615424 > > > + .long 0 > > > + .long 1072612352 > > > + .long 0 > > > + .long 1072608256 > > > + .long 0 > > > + .long 1072605184 > > > + .long 0 > > > + .long 1072601088 > > > + .long 0 > > > + .long 1072598016 > > > + .long 0 > > > + .long 1072593920 > > > + .long 0 > > > + .long 1072590848 > > > + .long 0 > > > + .long 1072586752 > > > + .long 0 > > > + .long 1072583680 > > > + .long 0 > > > + .long 1072580608 > > > + .long 0 > > > + .long 1072576512 > > > + .long 0 > > > + .long 1072573440 > > > + .long 0 > > > + .long 1072570368 > > > + .long 0 > > > + .long 1072566272 > > > + .long 0 > > > + .long 1072563200 > > > + .long 0 > > > + .long 1072560128 > > > + .long 0 > > > + .long 1072556032 > > > + .long 0 > > > + .long 1072552960 > > > + .long 0 > > > + .long 1072549888 > > > + .long 0 > > > + .long 1072546816 > > > + .long 0 > > > + .long 1072542720 > > > + .long 0 > > > + .long 1072539648 > > > + .long 0 > > > + .long 1072536576 > > > + .long 0 > > > + .long 1072533504 > > > + .long 0 > > > + .long 1072530432 > > > + .long 0 > > > + .long 1072527360 > > > + .long 0 > > > + .long 1072523264 > > > + .long 0 > > > + .long 1072520192 > > > + .long 0 > > > + .long 1072517120 > > > + .long 0 > > > + .long 1072514048 > > > + .long 0 > > > + .long 1072510976 > > > + .long 0 > > > + .long 1072507904 > > > + .long 0 > > > + .long 1072504832 > > > + .long 0 > > > + .long 1072501760 > > > + .long 0 > > > + .long 1072498688 > > > + .long 0 > > > + .long 1072495616 > > > + .long 0 > > > + .long 1072492544 > > > + .long 0 > > > + .long 1072489472 > > > + .long 0 > > > + .long 1072486400 > > > + .long 0 > > > + .long 1072483328 > > > + .long 0 > > > + .long 1072480256 > > > + .long 0 > > > + .long 1072478208 > > > + .long 0 > > > + .long 1072475136 > > > + .long 0 > > > + .long 1072472064 > > > + .long 0 > > > + .long 1072468992 > > > + .long 0 > > > + .long 1072465920 > > > + .long 0 > > > + .long 1072462848 > > > + .long 0 > > > + .long 1072459776 > > > + .long 0 > > > + .long 1072457728 > > > + .long 0 > > > + .long 1072454656 > > > + .long 0 > > > + .long 1072451584 > > > + .long 0 > > > + .long 1072448512 > > > + .long 0 > > > + .long 1072446464 > > > + .long 0 > > > + .long 1072443392 > > > + .long 0 > > > + .long 1072440320 > > > + .long 0 > > > + .long 1072437248 > > > + .long 0 > > > + .long 1072435200 > > > + .long 0 > > > + .long 1072432128 > > > + .long 0 > > > + .long 1072429056 > > > + .long 0 > > > + .long 1072427008 > > > + .long 0 > > > + .long 1072423936 > > > + .long 0 > > > + .long 1072420864 > > > + .long 0 > > > + .long 1072418816 > > > + .long 0 > > > + .long 1072415744 > > > + .long 0 > > > + .long 1072412672 > > > + .long 0 > > > + .long 1072410624 > > > + .long 0 > > > + .long 1072407552 > > > + .long 0 > > > + .long 1072405504 > > > + .long 0 > > > + .long 1072402432 > > > + .long 0 > > > + .long 1072400384 > > > + .long 0 > > > + .long 1072397312 > > > + .long 0 > > > + .long 1072395264 > > > + .long 0 > > > + .long 1072392192 > > > + .long 0 > > > + .long 1072390144 > > > + .long 0 > > > + .long 1072387072 > > > + .long 0 > > > + .long 1072385024 > > > + .long 0 > > > + .long 1072381952 > > > + .long 0 > > > + .long 1072379904 > > > + .long 0 > > > + .long 1072376832 > > > + .long 0 > > > + .long 1072374784 > > > + .long 0 > > > + .long 1072371712 > > > + .long 0 > > > + .long 1072369664 > > > + .long 0 > > > + .long 1072366592 > > > + .long 0 > > > + .long 1072364544 > > > + .long 0 > > > + .long 1072362496 > > > + .long 0 > > > + .long 1072359424 > > > + .long 0 > > > + .long 1072357376 > > > + .long 0 > > > + .long 1072355328 > > > + .long 0 > > > + .long 1072352256 > > > + .long 0 > > > + .long 1072350208 > > > + .long 0 > > > + .long 1072347136 > > > + .long 0 > > > + .long 1072345088 > > > + .long 0 > > > + .long 1072343040 > > > + .long 0 > > > + .long 1072340992 > > > + .long 0 > > > + .long 1072337920 > > > + .long 0 > > > + .long 1072335872 > > > + .long 0 > > > + .long 1072333824 > > > + .long 0 > > > + .long 1072330752 > > > + .long 0 > > > + .long 1072328704 > > > + .long 0 > > > + .long 1072326656 > > > + .long 0 > > > + .long 1072324608 > > > + .long 0 > > > + .long 1072321536 > > > + .long 0 > > > + .long 1072319488 > > > + .long 0 > > > + .long 1072317440 > > > + .long 0 > > > + .long 1072315392 > > > + .long 0 > > > + .long 1072313344 > > > + .long 0 > > > + .long 1072310272 > > > + .long 0 > > > + .long 1072308224 > > > + .long 0 > > > + .long 1072306176 > > > + .long 0 > > > + .long 1072304128 > > > + .long 0 > > > + .long 1072302080 > > > + .long 0 > > > + .long 1072300032 > > > + .long 0 > > > + .long 1072296960 > > > + .long 0 > > > + .long 1072294912 > > > + .long 0 > > > + .long 1072292864 > > > + .long 0 > > > + .long 1072290816 > > > + .long 0 > > > + .long 1072288768 > > > + .long 0 > > > + .long 1072286720 > > > + .long 0 > > > + .long 1072284672 > > > + .long 0 > > > + .long 1072282624 > > > + .long 0 > > > + .long 1072280576 > > > + .long 0 > > > + .long 1072278528 > > > + .long 0 > > > + .long 1072275456 > > > + .long 0 > > > + .long 1072273408 > > > + .long 0 > > > + .long 1072271360 > > > + .long 0 > > > + .long 1072269312 > > > + .long 0 > > > + .long 1072267264 > > > + .long 0 > > > + .long 1072265216 > > > + .long 0 > > > + .long 1072263168 > > > + .long 0 > > > + .long 1072261120 > > > + .long 0 > > > + .long 1072259072 > > > + .long 0 > > > + .long 1072257024 > > > + .long 0 > > > + .long 1072254976 > > > + .long 0 > > > + .long 1072252928 > > > + .long 0 > > > + .long 1072250880 > > > + .long 0 > > > + .long 1072248832 > > > + .long 0 > > > + .long 1072246784 > > > + .long 0 > > > + .long 1072244736 > > > + .long 0 > > > + .long 1072243712 > > > + .long 0 > > > + .long 1072241664 > > > + .long 0 > > > + .long 1072239616 > > > + .long 0 > > > + .long 1072237568 > > > + .long 0 > > > + .long 1072235520 > > > + .long 0 > > > + .long 1072233472 > > > + .long 0 > > > + .long 1072231424 > > > + .long 0 > > > + .long 1072229376 > > > + .long 0 > > > + .long 1072227328 > > > + .long 0 > > > + .long 1072225280 > > > + .long 0 > > > + .long 1072223232 > > > + .long 0 > > > + .long 1072222208 > > > + .long 0 > > > + .long 1072220160 > > > + .long 0 > > > + .long 1072218112 > > > + .long 0 > > > + .long 1072216064 > > > + .long 0 > > > + .long 1072214016 > > > + .long 0 > > > + .long 1072211968 > > > + .long 0 > > > + .long 1072210944 > > > + .long 0 > > > + .long 1072208896 > > > + .long 0 > > > + .long 1072206848 > > > + .long 0 > > > + .long 1072204800 > > > + .long 0 > > > + .long 1072202752 > > > + .long 0 > > > + .long 1072201728 > > > + .long 0 > > > + .long 1072199680 > > > + .long 0 > > > + .long 1072197632 > > > + .long 0 > > > + .long 1072195584 > > > + .long 0 > > > + .long 1072193536 > > > + .long 0 > > > + .long 1072192512 > > > + .long 0 > > > + .long 1072190464 > > > + .long 0 > > > + .long 1072188416 > > > + .long 0 > > > + .long 1072186368 > > > + .long 0 > > > + .long 1072185344 > > > + .long 0 > > > + .long 1072183296 > > > + .long 0 > > > + .long 1072181248 > > > + .long 0 > > > + .long 1072179200 > > > + .long 0 > > > + .long 1072178176 > > > + .long 0 > > > + .long 1072176128 > > > + .long 0 > > > + .long 1072174080 > > > + .long 0 > > > + .long 1072173056 > > > + .long 0 > > > + .long 1072171008 > > > + .long 0 > > > + .long 1072168960 > > > + .long 0 > > > + .long 1072167936 > > > + .long 0 > > > + .long 1072165888 > > > + .long 0 > > > + .long 1072163840 > > > + .long 0 > > > + .long 1072161792 > > > + .long 0 > > > + .long 1072160768 > > > + .long 0 > > > + .long 1072158720 > > > + .long 0 > > > + .long 1072157696 > > > + .long 0 > > > + .long 1072155648 > > > + .long 0 > > > + .long 1072153600 > > > + .long 0 > > > + .long 1072152576 > > > + .long 0 > > > + .long 1072150528 > > > + .long 0 > > > + .long 1072148480 > > > + .long 0 > > > + .long 1072147456 > > > + .long 0 > > > + .long 1072145408 > > > + .long 0 > > > + .long 1072143360 > > > + .long 0 > > > + .long 1072142336 > > > + .long 0 > > > + .long 1072140288 > > > + .long 0 > > > + .long 1072139264 > > > + .long 0 > > > + .long 1072137216 > > > + .long 0 > > > + .long 1072135168 > > > + .long 0 > > > + .long 1072134144 > > > + .long 0 > > > + .long 1072132096 > > > + .long 0 > > > + .long 1072131072 > > > + .long 0 > > > + .long 1072129024 > > > + .long 0 > > > + .long 1072128000 > > > + .long 0 > > > + .long 1072125952 > > > + .long 0 > > > + .long 1072124928 > > > + .long 0 > > > + .long 1072122880 > > > + .long 0 > > > + .long 1072120832 > > > + .long 0 > > > + .long 1072119808 > > > + .long 0 > > > + .long 1072117760 > > > + .long 0 > > > + .long 1072116736 > > > + .long 0 > > > + .long 1072114688 > > > + .long 0 > > > + .long 1072113664 > > > + .long 0 > > > + .long 1072111616 > > > + .long 0 > > > + .long 1072110592 > > > + .long 0 > > > + .long 1072108544 > > > + .long 0 > > > + .long 1072107520 > > > + .long 0 > > > + .long 1072105472 > > > + .long 0 > > > + .long 1072104448 > > > + .long 0 > > > + .long 1072102400 > > > + .long 0 > > > + .long 1072101376 > > > + .long 0 > > > + .long 1072099328 > > > + .long 0 > > > + .long 1072098304 > > > + .long 0 > > > + .long 1072096256 > > > + .long 0 > > > + .long 1072095232 > > > + .long 0 > > > + .long 1072094208 > > > + .long 0 > > > + .long 1072092160 > > > + .long 0 > > > + .long 1072091136 > > > + .long 0 > > > + .long 1072089088 > > > + .long 0 > > > + .long 1072088064 > > > + .long 0 > > > + .long 1072086016 > > > + .long 0 > > > + .long 1072084992 > > > + .long 0 > > > + .long 1072082944 > > > + .long 0 > > > + .long 1072081920 > > > + .long 0 > > > + .long 1072080896 > > > + .long 0 > > > + .long 1072078848 > > > + .long 0 > > > + .long 1072075776 > > > + .long 0 > > > + .long 1072073728 > > > + .long 0 > > > + .long 1072070656 > > > + .long 0 > > > + .long 1072067584 > > > + .long 0 > > > + .long 1072064512 > > > + .long 0 > > > + .long 1072061440 > > > + .long 0 > > > + .long 1072059392 > > > + .long 0 > > > + .long 1072056320 > > > + .long 0 > > > + .long 1072053248 > > > + .long 0 > > > + .long 1072051200 > > > + .long 0 > > > + .long 1072048128 > > > + .long 0 > > > + .long 1072045056 > > > + .long 0 > > > + .long 1072043008 > > > + .long 0 > > > + .long 1072039936 > > > + .long 0 > > > + .long 1072037888 > > > + .long 0 > > > + .long 1072034816 > > > + .long 0 > > > + .long 1072031744 > > > + .long 0 > > > + .long 1072029696 > > > + .long 0 > > > + .long 1072026624 > > > + .long 0 > > > + .long 1072024576 > > > + .long 0 > > > + .long 1072021504 > > > + .long 0 > > > + .long 1072019456 > > > + .long 0 > > > + .long 1072016384 > > > + .long 0 > > > + .long 1072014336 > > > + .long 0 > > > + .long 1072011264 > > > + .long 0 > > > + .long 1072009216 > > > + .long 0 > > > + .long 1072006144 > > > + .long 0 > > > + .long 1072004096 > > > + .long 0 > > > + .long 1072002048 > > > + .long 0 > > > + .long 1071998976 > > > + .long 0 > > > + .long 1071996928 > > > + .long 0 > > > + .long 1071993856 > > > + .long 0 > > > + .long 1071991808 > > > + .long 0 > > > + .long 1071989760 > > > + .long 0 > > > + .long 1071986688 > > > + .long 0 > > > + .long 1071984640 > > > + .long 0 > > > + .long 1071982592 > > > + .long 0 > > > + .long 1071979520 > > > + .long 0 > > > + .long 1071977472 > > > + .long 0 > > > + .long 1071975424 > > > + .long 0 > > > + .long 1071972352 > > > + .long 0 > > > + .long 1071970304 > > > + .long 0 > > > + .long 1071968256 > > > + .long 0 > > > + .long 1071966208 > > > + .long 0 > > > + .long 1071964160 > > > + .long 0 > > > + .long 1071961088 > > > + .long 0 > > > + .long 1071959040 > > > + .long 0 > > > + .long 1071956992 > > > + .long 0 > > > + .long 1071954944 > > > + .long 0 > > > + .long 1071952896 > > > + .long 0 > > > + .long 1071949824 > > > + .long 0 > > > + .long 1071947776 > > > + .long 0 > > > + .long 1071945728 > > > + .long 0 > > > + .long 1071943680 > > > + .long 0 > > > + .long 1071941632 > > > + .long 0 > > > + .long 1071939584 > > > + .long 0 > > > + .long 1071937536 > > > + .long 0 > > > + .long 1071935488 > > > + .long 0 > > > + .long 1071933440 > > > + .long 0 > > > + .long 1071930368 > > > + .long 0 > > > + .long 1071928320 > > > + .long 0 > > > + .long 1071926272 > > > + .long 0 > > > + .long 1071924224 > > > + .long 0 > > > + .long 1071922176 > > > + .long 0 > > > + .long 1071920128 > > > + .long 0 > > > + .long 1071918080 > > > + .long 0 > > > + .long 1071916032 > > > + .long 0 > > > + .long 1071913984 > > > + .long 0 > > > + .long 1071911936 > > > + .long 0 > > > + .long 1071909888 > > > + .long 0 > > > + .long 1071907840 > > > + .long 0 > > > + .long 1071905792 > > > + .long 0 > > > + .long 1071903744 > > > + .long 0 > > > + .long 1071901696 > > > + .long 0 > > > + .long 1071900672 > > > + .long 0 > > > + .long 1071898624 > > > + .long 0 > > > + .long 1071896576 > > > + .long 0 > > > + .long 1071894528 > > > + .long 0 > > > + .long 1071892480 > > > + .long 0 > > > + .long 1071890432 > > > + .long 0 > > > + .long 1071888384 > > > + .long 0 > > > + .long 1071886336 > > > + .long 0 > > > + .long 1071884288 > > > + .long 0 > > > + .long 1071883264 > > > + .long 0 > > > + .long 1071881216 > > > + .long 0 > > > + .long 1071879168 > > > + .long 0 > > > + .long 1071877120 > > > + .long 0 > > > + .long 1071875072 > > > + .long 0 > > > + .long 1071873024 > > > + .long 0 > > > + .long 1071872000 > > > + .long 0 > > > + .long 1071869952 > > > + .long 0 > > > + .long 1071867904 > > > + .long 0 > > > + .long 1071865856 > > > + .long 0 > > > + .long 1071864832 > > > + .long 0 > > > + .long 1071862784 > > > + .long 0 > > > + .long 1071860736 > > > + .long 0 > > > + .long 1071858688 > > > + .long 0 > > > + .long 1071856640 > > > + .long 0 > > > + .long 1071855616 > > > + .long 0 > > > + .long 1071853568 > > > + .long 0 > > > + .long 1071851520 > > > + .long 0 > > > + .long 1071850496 > > > + .long 0 > > > + .long 1071848448 > > > + .long 0 > > > + .long 1071846400 > > > + .long 0 > > > + .long 1071844352 > > > + .long 0 > > > + .long 1071843328 > > > + .long 0 > > > + .long 1071841280 > > > + .long 0 > > > + .long 1071839232 > > > + .long 0 > > > + .long 1071838208 > > > + .long 0 > > > + .long 1071836160 > > > + .long 0 > > > + .long 1071834112 > > > + .long 0 > > > + .long 1071833088 > > > + .long 0 > > > + .long 1071831040 > > > + .long 0 > > > + .long 1071830016 > > > + .long 0 > > > + .long 1071827968 > > > + .long 0 > > > + .long 1071825920 > > > + .long 0 > > > + .long 1071824896 > > > + .long 0 > > > + .long 1071822848 > > > + .long 0 > > > + .long 1071821824 > > > + .long 0 > > > + .long 1071819776 > > > + .long 0 > > > + .long 1071817728 > > > + .long 0 > > > + .long 1071816704 > > > + .long 0 > > > + .long 1071814656 > > > + .long 0 > > > + .long 1071813632 > > > + .long 0 > > > + .long 1071811584 > > > + .long 0 > > > + .long 1071810560 > > > + .long 0 > > > + .long 1071808512 > > > + .long 0 > > > + .long 1071806464 > > > + .long 0 > > > + .long 1071805440 > > > + .long 0 > > > + .long 1071803392 > > > + .long 0 > > > + .long 1071802368 > > > + .long 0 > > > + .long 1071800320 > > > + .long 0 > > > + .long 1071799296 > > > + .long 0 > > > + .long 1071797248 > > > + .long 0 > > > + .long 1071796224 > > > + .long 0 > > > + .long 1071794176 > > > + .long 0 > > > + .long 1071793152 > > > + .long 0 > > > + .long 1071791104 > > > + .long 0 > > > + .long 1071790080 > > > + .long 0 > > > + .long 1071788032 > > > + .long 0 > > > + .long 1071787008 > > > + .long 0 > > > + .long 1071784960 > > > + .long 0 > > > + .long 1071783936 > > > + .long 0 > > > + .long 1071782912 > > > + .long 0 > > > + .long 1071780864 > > > + .long 0 > > > + .long 1071779840 > > > + .long 0 > > > + .long 1071777792 > > > + .long 0 > > > + .long 1071776768 > > > + .long 0 > > > + .long 1071774720 > > > + .long 0 > > > + .long 1071773696 > > > + .long 0 > > > + .long 1071772672 > > > + .long 0 > > > + .long 1071770624 > > > + .long 0 > > > + .long 1071769600 > > > + .long 0 > > > + .long 1071767552 > > > + .long 0 > > > + .long 1071766528 > > > + .long 0 > > > + .long 1071765504 > > > + .long 0 > > > + .long 1071763456 > > > + .long 0 > > > + .long 1071762432 > > > + .long 0 > > > + .long 1071760384 > > > + .long 0 > > > + .long 1071759360 > > > + .long 0 > > > + .long 1071758336 > > > + .long 0 > > > + .long 1071756288 > > > + .long 0 > > > + .long 1071755264 > > > + .long 0 > > > + .long 1071754240 > > > + .long 0 > > > + .long 1071752192 > > > + .long 0 > > > + .long 1071751168 > > > + .long 0 > > > + .long 1071750144 > > > + .long 0 > > > + .long 1071748096 > > > + .long 0 > > > + .long 1071747072 > > > + .long 0 > > > + .long 1071746048 > > > + .long 0 > > > + .long 1071744000 > > > + .long 0 > > > + .long 1071742976 > > > + .long 0 > > > + .long 1071741952 > > > + .long 0 > > > + .long 1071739904 > > > + .long 0 > > > + .long 1071738880 > > > + .long 0 > > > + .long 1071737856 > > > + .long 0 > > > + .long 1071736832 > > > + .long 0 > > > + .long 1071734784 > > > + .long 0 > > > + .long 1071733760 > > > + .long 0 > > > + .long 1071732736 > > > + .long 0 > > > + .long 1071730688 > > > + .long 0 > > > + .long 1071729664 > > > + .long 0 > > > + .long 1071728640 > > > + .long 0 > > > + .long 1071727616 > > > + .long 0 > > > + .long 1071725568 > > > + .long 0 > > > + .long 1071724544 > > > + .long 0 > > > + .long 1071723520 > > > + .long 0 > > > + .long 1071722496 > > > + .long 0 > > > + .long 1071720448 > > > + .long 0 > > > + .long 1071719424 > > > + .long 0 > > > + .long 1071718400 > > > + .long 0 > > > + .long 1071717376 > > > + .long 0 > > > + .long 1071715328 > > > + .long 0 > > > + .long 1071714304 > > > + .long 0 > > > + .long 1071713280 > > > + .long 0 > > > + .long 1071712256 > > > + .long 0 > > > + .long 1071711232 > > > + .long 0 > > > + .long 1071709184 > > > + .long 0 > > > + .long 1071708160 > > > + .long 0 > > > + .long 1071707136 > > > + .long 0 > > > + .long 1071706112 > > > + .long 0 > > > + .long 1071705088 > > > + .long 0 > > > + .long 1071704064 > > > + .long 0 > > > + .long 1071702016 > > > + .long 0 > > > + .long 1071700992 > > > + .long 0 > > > + .long 1071699968 > > > + .long 0 > > > + .long 1071698944 > > > + .long 0 > > > + .long 1071697920 > > > + .long 0 > > > + .long 1071696896 > > > + .long 0 > > > + .long 1071694848 > > > + .long 0 > > > + .long 1071693824 > > > + .long 0 > > > + .long 1071692800 > > > + .long 0 > > > + .long 1071691776 > > > + .long 0 > > > + .long 1071690752 > > > + .long 0 > > > + .long 1071689728 > > > + .long 0 > > > + .long 1071688704 > > > + .long 0 > > > + .long 1071686656 > > > + .long 0 > > > + .long 1071685632 > > > + .long 0 > > > + .long 1071684608 > > > + .long 0 > > > + .long 1071683584 > > > + .long 0 > > > + .long 1071682560 > > > + .long 0 > > > + .long 1071681536 > > > + .long 0 > > > + .long 1071680512 > > > + .long 0 > > > + .long 1071679488 > > > + .long 0 > > > + .long 1071677440 > > > + .long 0 > > > + .long 1071676416 > > > + .long 0 > > > + .long 1071675392 > > > + .long 0 > > > + .long 1071674368 > > > + .long 0 > > > + .long 1071673344 > > > + .long 0 > > > + .long 1071672320 > > > + .long 0 > > > + .long 1071671296 > > > + .long 0 > > > + .long 1071670272 > > > + .long 0 > > > + .long 1071669248 > > > + .long 0 > > > + .long 1071668224 > > > + .long 0 > > > + .long 1071667200 > > > + .long 0 > > > + .long 1071666176 > > > + .long 0 > > > + .long 1071665152 > > > + .long 0 > > > + .long 1071663104 > > > + .long 0 > > > + .long 1071662080 > > > + .long 0 > > > + .long 1071661056 > > > + .long 0 > > > + .long 1071660032 > > > + .long 0 > > > + .long 1071659008 > > > + .long 0 > > > + .long 1071657984 > > > + .long 0 > > > + .long 1071656960 > > > + .long 0 > > > + .long 1071655936 > > > + .long 0 > > > + .long 1071654912 > > > + .long 0 > > > + .long 1071653888 > > > + .long 0 > > > + .long 1071652864 > > > + .long 0 > > > + .long 1071651840 > > > + .long 0 > > > + .long 1071650816 > > > + .long 0 > > > + .long 1071649792 > > > + .long 0 > > > + .long 1071648768 > > > + .long 0 > > > + .long 1071647744 > > > + .long 0 > > > + .long 1071646720 > > > + .long 0 > > > + .long 1071645696 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1101004800 > > > + .long 1073741824 > > > + .long 1095761920 > > > + .long 256 > > > + .long 1118830592 > > > + .long 0 > > > + .long 1017118720 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 0 > > > + .long 1072693248 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 0 > > > + .long 1476395008 > > > + .long 1069897045 > > > + .long 1768958041 > > > + .long 3189069141 > > > + .long 805306368 > > > + .long 1068708659 > > > + .long 3580333578 > > > + .long 1040816593 > > > + .long 3067382784 > > > + .long 1067899757 > > > + .long 3397590151 > > > + .long 1067392113 > > > + .long 2939529726 > > > + .long 1066854585 > > > + .long 1423429166 > > > + .long 1066517752 > > > + .long 1775218934 > > > + .long 1066178574 > > > + .long 1185392460 > > > + .long 1065859647 > > > + .long 289998670 > > > + .long 1065577550 > > > + .long 3179807072 > > > + .long 1065648121 > > > + .long 3781007284 > > > + .long 1061576176 > > > + .long 2482106687 > > > + .long 1067019199 > > > + .long 763519713 > > > + .long 3214591591 > > > + .long 3695107454 > > > + .long 1067530646 > > > + .long 0 > > > + .long 1073741824 > > > + .long 1124791109 > > > + .long 1006764147 > > > + .long 1476395008 > > > + .long 1069897045 > > > + .long 1953913876 > > > + .long 3189069141 > > > + .long 805306368 > > > + .long 1067660083 > > > + .long 165110192 > > > + .long 1039768033 > > > + .long 3067304082 > > > + .long 1065802605 > > > + .long 3404727379 > > > + .long 1064246385 > > > + .long 2737480376 > > > + .long 1062660281 > > > + .long 933797922 > > > + .long 1061274873 > > > + .long 1475716730 > > > + .long 1059887095 > > > + .long 1511619763 > > > + .long 1058519827 > > > + .long 556024211 > > > + .long 1057187555 > > > + .long 3482101045 > > > + .long 1056217350 > > > + .long 1174622859 > > > + .long 1050762633 > > > + .long 899668651 > > > + .long 1055506366 > > > + .long 1081094694 > > > + .long 3202035365 > > > + .long 2559814773 > > > + .long 1053906576 > > > + .long 0 > > > + .long 3219128320 > > > + .long 0 > > > + .long 1071120384 > > > + .long 0 > > > + .long 3218341888 > > > + .long 0 > > > + .long 1070694400 > > > + .long 0 > > > + .long 3218046976 > > > + .long 0 > > > + .long 1070391296 > > > + .long 0 > > > + .long 3217739776 > > > + .type _vmldACosHATab,@object > > > + .size _vmldACosHATab,4520 > > > + .space 88, 0x00 > > > + .align 16 > > > + > > > +.FLT_197: > > > + .long 0x00000000,0x80000000,0x00000000,0x00000000 > > > + .type .FLT_197,@object > > > + .size .FLT_197,16 > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core-avx2.S b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core-avx2.S > > > new file mode 100644 > > > index 0000000000..1ff0cfc8d5 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core-avx2.S > > > @@ -0,0 +1,20 @@ > > > +/* AVX2 version of vectorized acosf. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#define _ZGVeN16v_acosf _ZGVeN16v_acosf_avx2_wrapper > > > +#include "../svml_s_acosf16_core.S" > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core.c b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core.c > > > new file mode 100644 > > > index 0000000000..fcf05782c5 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core.c > > > @@ -0,0 +1,28 @@ > > > +/* Multiple versions of vectorized acosf, vector length is 16. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#define SYMBOL_NAME _ZGVeN16v_acosf > > > +#include "ifunc-mathvec-avx512-skx.h" > > > + > > > +libc_ifunc_redirected (REDIRECT_NAME, SYMBOL_NAME, IFUNC_SELECTOR ()); > > > + > > > +#ifdef SHARED > > > +__hidden_ver1 (_ZGVeN16v_acosf, __GI__ZGVeN16v_acosf, > > > + __redirect__ZGVeN16v_acosf) > > > + __attribute__ ((visibility ("hidden"))); > > > +#endif > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core_avx512.S b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core_avx512.S > > > new file mode 100644 > > > index 0000000000..65ae01451c > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core_avx512.S > > > @@ -0,0 +1,2260 @@ > > > +/* Function acosf vectorized with AVX-512. > > > + Copyright (C) 2021 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 > > > + https://www.gnu.org/licenses/. */ > > > + > > > +/* > > > + * ALGORITHM DESCRIPTION: > > > + * > > > + * SelMask = (|x| >= 0.5) ? 1 : 0; > > > + * R = SelMask ? sqrt(0.5 - 0.5*|x|) : |x| > > > + * acos(|x|) = SelMask ? 2*Poly(R) : (Pi/2 - Poly(R)) > > > + * acos(x) = sign(x) ? (Pi - acos(|x|)) : acos(|x|) > > > + * > > > + * > > > + */ > > > + > > > +#include <sysdep.h> > > > + > > > + .text > > > +ENTRY(_ZGVeN16v_acosf_skx) > > > + pushq %rbp > > > + cfi_def_cfa_offset(16) > > > + movq %rsp, %rbp > > > + cfi_def_cfa(6, 16) > > > + cfi_offset(6, -16) > > > + andq $-64, %rsp > > > + subq $192, %rsp > > > + vmovups __svml_sacos_data_internal(%rip), %zmm5 > > > + vmovups 64+__svml_sacos_data_internal(%rip), %zmm6 > > > + > > > +/* SQ ~ 2*sqrt(Y) */ > > > + vmovups 192+__svml_sacos_data_internal(%rip), %zmm9 > > > + vmovups 256+__svml_sacos_data_internal(%rip), %zmm8 > > > + vmovups 448+__svml_sacos_data_internal(%rip), %zmm12 > > > + vmovups 512+__svml_sacos_data_internal(%rip), %zmm13 > > > + vmovaps %zmm0, %zmm4 > > > + > > > +/* x = -|arg| */ > > > + vorps %zmm4, %zmm5, %zmm3 > > > + vandps %zmm4, %zmm5, %zmm2 > > > + vmovups 576+__svml_sacos_data_internal(%rip), %zmm0 > > > + > > > +/* Y = 0.5 + 0.5*(-x) */ > > > + vfmadd231ps {rn-sae}, %zmm3, %zmm6, %zmm6 > > > + > > > +/* x^2 */ > > > + vmulps {rn-sae}, %zmm3, %zmm3, %zmm7 > > > + vrsqrt14ps %zmm6, %zmm10 > > > + vcmpps $17, {sae}, %zmm9, %zmm6, %k2 > > > + vcmpps $22, {sae}, %zmm3, %zmm8, %k0 > > > + vmovups 832+__svml_sacos_data_internal(%rip), %zmm9 > > > + vminps {sae}, %zmm6, %zmm7, %zmm1 > > > + vmovups 768+__svml_sacos_data_internal(%rip), %zmm7 > > > + vxorps %zmm10, %zmm10, %zmm10{%k2} > > > + vaddps {rn-sae}, %zmm6, %zmm6, %zmm14 > > > + vmulps {rn-sae}, %zmm1, %zmm1, %zmm8 > > > + vmulps {rn-sae}, %zmm10, %zmm10, %zmm11 > > > + vmulps {rn-sae}, %zmm10, %zmm14, %zmm5 > > > + vcmpps $21, {sae}, %zmm6, %zmm1, %k1 > > > + > > > +/* X<X^2 iff X<0 */ > > > + vcmpps $17, {sae}, %zmm1, %zmm4, %k3 > > > + > > > +/* polynomial */ > > > + vmovups 640+__svml_sacos_data_internal(%rip), %zmm6 > > > + vfmsub213ps {rn-sae}, %zmm12, %zmm11, %zmm14 > > > + vmovups 704+__svml_sacos_data_internal(%rip), %zmm11 > > > + vfmadd231ps {rn-sae}, %zmm1, %zmm7, %zmm9 > > > + vmovups 896+__svml_sacos_data_internal(%rip), %zmm10 > > > + vmovups 960+__svml_sacos_data_internal(%rip), %zmm12 > > > + vfmadd231ps {rn-sae}, %zmm14, %zmm13, %zmm0 > > > + vfmadd231ps {rn-sae}, %zmm1, %zmm6, %zmm11 > > > + vmulps {rn-sae}, %zmm14, %zmm5, %zmm15 > > > + vfmadd213ps {rn-sae}, %zmm9, %zmm8, %zmm11 > > > + vxorps %zmm12, %zmm12, %zmm12{%k1} > > > + vfnmadd213ps {rn-sae}, %zmm5, %zmm15, %zmm0 > > > + vfmadd213ps {rn-sae}, %zmm10, %zmm1, %zmm11 > > > + kmovw %k1, %eax > > > + kmovw %k3, %ecx > > > + kmovw %k0, %edx > > > + vmulps {rn-sae}, %zmm1, %zmm11, %zmm13 > > > + vblendmps %zmm0, %zmm3, %zmm0{%k1} > > > + vxorps %zmm2, %zmm0, %zmm1 > > > + andl %eax, %ecx > > > + kmovw %ecx, %k2 > > > + vfmadd213ps {rn-sae}, %zmm1, %zmm1, %zmm13 > > > + vorps 1088+__svml_sacos_data_internal(%rip), %zmm12, %zmm12{%k2} > > > + vaddps {rn-sae}, %zmm13, %zmm12, %zmm0 > > > + testl %edx, %edx > > > + jne .LBL_1_3 > > > + > > > +.LBL_1_2: > > > + movq %rbp, %rsp > > > + popq %rbp > > > + cfi_def_cfa(7, 8) > > > + cfi_restore(6) > > > + ret > > > + cfi_def_cfa(6, 16) > > > + cfi_offset(6, -16) > > > + > > > +.LBL_1_3: > > > + vmovups %zmm4, 64(%rsp) > > > + vmovups %zmm0, 128(%rsp) > > > + je .LBL_1_2 > > > + xorl %eax, %eax > > > + vzeroupper > > > + kmovw %k4, 24(%rsp) > > > + kmovw %k5, 16(%rsp) > > > + kmovw %k6, 8(%rsp) > > > + kmovw %k7, (%rsp) > > > + movq %rsi, 40(%rsp) > > > + movq %rdi, 32(%rsp) > > > + movq %r12, 56(%rsp) > > > + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22 > > > + movl %eax, %r12d > > > + movq %r13, 48(%rsp) > > > + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22 > > > + movl %edx, %r13d > > > + .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 > > > + > > > +.LBL_1_7: > > > + btl %r12d, %r13d > > > + jc .LBL_1_10 > > > + > > > +.LBL_1_8: > > > + incl %r12d > > > + cmpl $16, %r12d > > > + jl .LBL_1_7 > > > + kmovw 24(%rsp), %k4 > > > + cfi_restore(122) > > > + kmovw 16(%rsp), %k5 > > > + cfi_restore(123) > > > + kmovw 8(%rsp), %k6 > > > + cfi_restore(124) > > > + kmovw (%rsp), %k7 > > > + cfi_restore(125) > > > + vmovups 128(%rsp), %zmm0 > > > + movq 40(%rsp), %rsi > > > + cfi_restore(4) > > > + movq 32(%rsp), %rdi > > > + cfi_restore(5) > > > + movq 56(%rsp), %r12 > > > + cfi_restore(12) > > > + movq 48(%rsp), %r13 > > > + cfi_restore(13) > > > + jmp .LBL_1_2 > > > + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 > > > + > > > +.LBL_1_10: > > > + lea 64(%rsp,%r12,4), %rdi > > > + lea 128(%rsp,%r12,4), %rsi > > > + call __svml_sacos_cout_rare_internal > > > + jmp .LBL_1_8 > > > + > > > +END(_ZGVeN16v_acosf_skx) > > > + > > > + .align 16,0x90 > > > + > > > +__svml_sacos_cout_rare_internal: > > > + > > > + cfi_startproc > > > + > > > + xorl %eax, %eax > > > + movzwl 2(%rdi), %edx > > > + andl $32640, %edx > > > + movss (%rdi), %xmm1 > > > + cmpl $32640, %edx > > > + je .LBL_2_20 > > > + cvtss2sd %xmm1, %xmm1 > > > + movsd %xmm1, -32(%rsp) > > > + andb $127, -25(%rsp) > > > + movsd -32(%rsp), %xmm12 > > > + movsd 4168+_vmldACosHATab(%rip), %xmm0 > > > + comisd %xmm12, %xmm0 > > > + jbe .LBL_2_14 > > > + movsd 4176+_vmldACosHATab(%rip), %xmm1 > > > + comisd %xmm12, %xmm1 > > > + jbe .LBL_2_10 > > > + comisd 4128+_vmldACosHATab(%rip), %xmm12 > > > + jbe .LBL_2_9 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm6 > > > + movaps %xmm12, %xmm8 > > > + mulsd %xmm12, %xmm6 > > > + movaps %xmm12, %xmm7 > > > + movsd %xmm6, -40(%rsp) > > > + movsd -40(%rsp), %xmm13 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm5 > > > + subsd -32(%rsp), %xmm13 > > > + movsd %xmm13, -48(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + movsd -48(%rsp), %xmm14 > > > + subsd %xmm14, %xmm15 > > > + movaps %xmm12, %xmm14 > > > + movsd %xmm15, -40(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + subsd %xmm6, %xmm8 > > > + movsd %xmm8, -48(%rsp) > > > + movsd -40(%rsp), %xmm9 > > > + movaps %xmm9, %xmm4 > > > + addsd %xmm9, %xmm7 > > > + mulsd %xmm9, %xmm4 > > > + movsd -48(%rsp), %xmm10 > > > + movaps %xmm4, %xmm11 > > > + mulsd %xmm10, %xmm7 > > > + mulsd %xmm4, %xmm5 > > > + addsd %xmm7, %xmm11 > > > + movsd 4312+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm5, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm5 > > > + subsd %xmm4, %xmm1 > > > + addsd 4304+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm1, -48(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + addsd 4296+_vmldACosHATab(%rip), %xmm8 > > > + subsd %xmm2, %xmm0 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + addsd 4288+_vmldACosHATab(%rip), %xmm8 > > > + subsd %xmm3, %xmm4 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm4, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + mulsd %xmm6, %xmm9 > > > + addsd 4280+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm6, %xmm10 > > > + mulsd %xmm11, %xmm8 > > > + mulsd %xmm9, %xmm5 > > > + addsd 4272+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movaps %xmm9, %xmm0 > > > + movsd -48(%rsp), %xmm13 > > > + movaps %xmm6, %xmm4 > > > + movsd %xmm5, -40(%rsp) > > > + addsd %xmm13, %xmm7 > > > + addsd 4264+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm7, %xmm14 > > > + mulsd %xmm11, %xmm8 > > > + addsd %xmm14, %xmm10 > > > + addsd 4256+_vmldACosHATab(%rip), %xmm8 > > > + movsd -40(%rsp), %xmm1 > > > + mulsd %xmm11, %xmm8 > > > + subsd %xmm9, %xmm1 > > > + addsd %xmm10, %xmm9 > > > + addsd 4248+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm9, %xmm7 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm1, -48(%rsp) > > > + movsd -40(%rsp), %xmm2 > > > + movsd -48(%rsp), %xmm15 > > > + subsd %xmm15, %xmm2 > > > + addsd 4240+_vmldACosHATab(%rip), %xmm8 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm5 > > > + mulsd %xmm11, %xmm8 > > > + subsd %xmm5, %xmm0 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movsd -48(%rsp), %xmm5 > > > + movaps %xmm5, %xmm13 > > > + addsd 4232+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm3, %xmm4 > > > + addsd %xmm10, %xmm13 > > > + mulsd %xmm11, %xmm8 > > > + mulsd %xmm13, %xmm6 > > > + addsd 4224+_vmldACosHATab(%rip), %xmm8 > > > + addsd %xmm7, %xmm6 > > > + mulsd %xmm11, %xmm8 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm7 > > > + movaps %xmm4, %xmm13 > > > + mulsd %xmm4, %xmm7 > > > + addsd 4216+_vmldACosHATab(%rip), %xmm8 > > > + movsd %xmm7, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4200+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm4, %xmm1 > > > + mulsd %xmm9, %xmm11 > > > + addsd %xmm6, %xmm4 > > > + movsd %xmm1, -48(%rsp) > > > + movaps %xmm12, %xmm9 > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + movsd 4192+_vmldACosHATab(%rip), %xmm1 > > > + subsd %xmm2, %xmm0 > > > + mulsd %xmm1, %xmm3 > > > + mulsd %xmm1, %xmm10 > > > + mulsd %xmm4, %xmm8 > > > + addsd %xmm3, %xmm9 > > > + mulsd %xmm1, %xmm5 > > > + addsd %xmm10, %xmm11 > > > + movsd %xmm0, -40(%rsp) > > > + pxor %xmm1, %xmm1 > > > + movsd -40(%rsp), %xmm7 > > > + addsd %xmm11, %xmm8 > > > + subsd %xmm7, %xmm13 > > > + addsd %xmm5, %xmm8 > > > + movsd %xmm13, -48(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + movsd %xmm9, -40(%rsp) > > > + addsd %xmm2, %xmm6 > > > + movsd -40(%rsp), %xmm10 > > > + movsd %xmm3, -56(%rsp) > > > + subsd %xmm10, %xmm12 > > > + movsd 4208+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm12, %xmm3 > > > + mulsd %xmm4, %xmm0 > > > + mulsd %xmm4, %xmm6 > > > + movsd %xmm3, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movaps %xmm3, %xmm12 > > > + movsd -48(%rsp), %xmm7 > > > + addsd %xmm0, %xmm12 > > > + addsd %xmm7, %xmm8 > > > + movsd %xmm12, -40(%rsp) > > > + movsd -40(%rsp), %xmm12 > > > + subsd %xmm12, %xmm3 > > > + addsd %xmm3, %xmm0 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movsd -48(%rsp), %xmm0 > > > + cvtss2sd (%rdi), %xmm1 > > > + addsd %xmm8, %xmm0 > > > + comisd 4184+_vmldACosHATab(%rip), %xmm1 > > > + addsd %xmm0, %xmm6 > > > + jbe .LBL_2_7 > > > + movsd 4136+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm2, %xmm0 > > > + subsd %xmm3, %xmm0 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4144+_vmldACosHATab(%rip), %xmm0 > > > + subsd %xmm1, %xmm2 > > > + subsd %xmm6, %xmm0 > > > + subsd %xmm3, %xmm2 > > > + movsd %xmm2, -48(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd -48(%rsp), %xmm3 > > > + addsd %xmm3, %xmm0 > > > + jmp .LBL_2_8 > > > + > > > +.LBL_2_7: > > > + movsd 4136+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm3, %xmm0 > > > + addsd %xmm2, %xmm0 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + subsd %xmm1, %xmm2 > > > + addsd %xmm2, %xmm3 > > > + movsd %xmm3, -48(%rsp) > > > + movsd 4144+_vmldACosHATab(%rip), %xmm3 > > > + movsd -40(%rsp), %xmm1 > > > + addsd %xmm3, %xmm6 > > > + movsd -48(%rsp), %xmm0 > > > + addsd %xmm6, %xmm0 > > > + > > > +.LBL_2_8: > > > + addsd %xmm0, %xmm1 > > > + cvtsd2ss %xmm1, %xmm1 > > > + movss %xmm1, (%rsi) > > > + ret > > > + > > > +.LBL_2_9: > > > + movsd 4144+_vmldACosHATab(%rip), %xmm1 > > > + addsd %xmm0, %xmm12 > > > + movsd %xmm12, -40(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + mulsd -32(%rsp), %xmm0 > > > + movsd %xmm0, -56(%rsp) > > > + movb -49(%rsp), %dl > > > + movb 3(%rdi), %dil > > > + andb $127, %dl > > > + andb $-128, %dil > > > + orb %dil, %dl > > > + movb %dl, -49(%rsp) > > > + subsd -56(%rsp), %xmm1 > > > + addsd 4136+_vmldACosHATab(%rip), %xmm1 > > > + cvtsd2ss %xmm1, %xmm1 > > > + movss %xmm1, (%rsi) > > > + ret > > > + > > > +.LBL_2_10: > > > + movaps %xmm0, %xmm8 > > > + movzwl 4174+_vmldACosHATab(%rip), %r9d > > > + pxor %xmm13, %xmm13 > > > + andl $-32753, %r9d > > > + subsd %xmm12, %xmm8 > > > + subsd %xmm0, %xmm13 > > > + mulsd %xmm8, %xmm1 > > > + movsd %xmm1, -56(%rsp) > > > + movzwl -50(%rsp), %ecx > > > + andl $32752, %ecx > > > + shrl $4, %ecx > > > + addl $-1023, %ecx > > > + movl %ecx, %r8d > > > + movl %ecx, %edx > > > + negl %r8d > > > + addl $1023, %r8d > > > + andl $2047, %r8d > > > + shll $4, %r8d > > > + movsd %xmm0, -32(%rsp) > > > + orl %r8d, %r9d > > > + movw %r9w, -26(%rsp) > > > + andl $1, %edx > > > + movsd -32(%rsp), %xmm4 > > > + lea _vmldACosHATab(%rip), %r8 > > > + mulsd %xmm4, %xmm1 > > > + movl %edx, %r10d > > > + movaps %xmm1, %xmm15 > > > + movsd 4112+_vmldACosHATab(%rip), %xmm6 > > > + addsd %xmm1, %xmm15 > > > + jne .LBL_54 > > > + movaps %xmm1, %xmm15 > > > + > > > +.LBL_54: > > > + mulsd %xmm15, %xmm6 > > > + movaps %xmm15, %xmm7 > > > + movaps %xmm6, %xmm9 > > > + subl %edx, %ecx > > > + movsd 4120+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm15, %xmm9 > > > + addsd %xmm1, %xmm11 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -48(%rsp), %xmm10 > > > + movsd %xmm11, -24(%rsp) > > > + subsd %xmm10, %xmm6 > > > + movl -24(%rsp), %r11d > > > + movaps %xmm6, %xmm14 > > > + shll $8, %r10d > > > + andl $511, %r11d > > > + addl %r10d, %r11d > > > + subsd %xmm6, %xmm7 > > > + movsd (%r8,%r11,8), %xmm5 > > > + addsd %xmm7, %xmm14 > > > + mulsd %xmm5, %xmm6 > > > + movaps %xmm5, %xmm12 > > > + mulsd %xmm5, %xmm12 > > > + mulsd %xmm12, %xmm14 > > > + movsd 4512+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm13, %xmm14 > > > + mulsd %xmm14, %xmm4 > > > + shrl $1, %ecx > > > + addsd 4504+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + addl $1023, %ecx > > > + andl $2047, %ecx > > > + addsd 4496+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movzwl 4174+_vmldACosHATab(%rip), %r9d > > > + shll $4, %ecx > > > + andl $-32753, %r9d > > > + movsd %xmm0, -16(%rsp) > > > + orl %ecx, %r9d > > > + movw %r9w, -10(%rsp) > > > + movsd -16(%rsp), %xmm9 > > > + mulsd %xmm9, %xmm6 > > > + addsd 4488+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm3 > > > + mulsd %xmm6, %xmm3 > > > + addsd 4480+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movsd %xmm3, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4352+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm6, %xmm1 > > > + addsd 4472+_vmldACosHATab(%rip), %xmm4 > > > + addsd 4360+_vmldACosHATab(%rip), %xmm11 > > > + mulsd %xmm14, %xmm4 > > > + mulsd %xmm8, %xmm11 > > > + addsd 4464+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + mulsd %xmm15, %xmm4 > > > + movsd %xmm1, -48(%rsp) > > > + addsd %xmm4, %xmm7 > > > + mulsd %xmm5, %xmm7 > > > + movsd 4456+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm9, %xmm7 > > > + addsd 4448+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm2 > > > + movsd -48(%rsp), %xmm0 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm4 > > > + subsd %xmm0, %xmm2 > > > + mulsd %xmm8, %xmm4 > > > + addsd 4440+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movaps %xmm8, %xmm0 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm14 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm2 > > > + subsd %xmm14, %xmm6 > > > + addsd 4432+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm6, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + movsd -48(%rsp), %xmm10 > > > + movsd %xmm4, -40(%rsp) > > > + addsd %xmm10, %xmm7 > > > + addsd 4424+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm3 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm12 > > > + subsd %xmm8, %xmm3 > > > + addsd 4416+_vmldACosHATab(%rip), %xmm5 > > > + addsd 4344+_vmldACosHATab(%rip), %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + addsd %xmm11, %xmm12 > > > + addsd 4408+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm3, -48(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd -48(%rsp), %xmm15 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm13 > > > + subsd %xmm15, %xmm1 > > > + addsd 4400+_vmldACosHATab(%rip), %xmm5 > > > + addsd 4328+_vmldACosHATab(%rip), %xmm13 > > > + mulsd %xmm8, %xmm5 > > > + addsd %xmm12, %xmm13 > > > + addsd 4392+_vmldACosHATab(%rip), %xmm5 > > > + movsd %xmm1, -40(%rsp) > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm4 > > > + subsd %xmm4, %xmm0 > > > + addsd 4384+_vmldACosHATab(%rip), %xmm5 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm4 > > > + movaps %xmm4, %xmm14 > > > + mulsd %xmm4, %xmm14 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm14, %xmm2 > > > + addsd 4376+_vmldACosHATab(%rip), %xmm5 > > > + movsd -48(%rsp), %xmm3 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm9 > > > + mulsd %xmm8, %xmm5 > > > + subsd %xmm14, %xmm9 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -40(%rsp), %xmm11 > > > + movsd -48(%rsp), %xmm10 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm0 > > > + subsd %xmm10, %xmm11 > > > + mulsd %xmm4, %xmm0 > > > + addsd 4368+_vmldACosHATab(%rip), %xmm5 > > > + addsd %xmm8, %xmm4 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm3, %xmm4 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm11, -40(%rsp) > > > + movaps %xmm0, %xmm1 > > > + movsd -40(%rsp), %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + subsd %xmm12, %xmm14 > > > + movsd %xmm14, -48(%rsp) > > > + addsd %xmm5, %xmm13 > > > + movsd -40(%rsp), %xmm9 > > > + mulsd 4352+_vmldACosHATab(%rip), %xmm9 > > > + mulsd %xmm13, %xmm7 > > > + addsd %xmm9, %xmm1 > > > + movsd -48(%rsp), %xmm2 > > > + movsd %xmm1, -40(%rsp) > > > + addsd %xmm2, %xmm4 > > > + movsd -40(%rsp), %xmm13 > > > + movsd %xmm9, -24(%rsp) > > > + subsd %xmm13, %xmm0 > > > + mulsd 4352+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm0, %xmm9 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -40(%rsp), %xmm12 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm10 > > > + movsd -48(%rsp), %xmm1 > > > + addsd %xmm12, %xmm10 > > > + movsd %xmm10, -40(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm11 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm9 > > > + subsd %xmm15, %xmm11 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm2 > > > + addsd %xmm11, %xmm12 > > > + mulsd %xmm3, %xmm2 > > > + movsd %xmm12, -48(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + mulsd %xmm15, %xmm9 > > > + movsd -48(%rsp), %xmm0 > > > + movsd %xmm9, -40(%rsp) > > > + movsd -40(%rsp), %xmm10 > > > + movsd 4360+_vmldACosHATab(%rip), %xmm3 > > > + subsd %xmm15, %xmm10 > > > + mulsd %xmm8, %xmm3 > > > + movsd %xmm10, -48(%rsp) > > > + movsd -40(%rsp), %xmm11 > > > + movsd -48(%rsp), %xmm13 > > > + subsd %xmm13, %xmm11 > > > + addsd 4344+_vmldACosHATab(%rip), %xmm3 > > > + movsd %xmm11, -40(%rsp) > > > + movsd -40(%rsp), %xmm14 > > > + mulsd %xmm8, %xmm3 > > > + subsd %xmm14, %xmm15 > > > + movsd %xmm15, -48(%rsp) > > > + movsd -40(%rsp), %xmm10 > > > + movsd -48(%rsp), %xmm9 > > > + addsd %xmm9, %xmm4 > > > + addsd 4328+_vmldACosHATab(%rip), %xmm3 > > > + addsd %xmm2, %xmm4 > > > + addsd %xmm5, %xmm3 > > > + addsd %xmm1, %xmm4 > > > + addsd %xmm0, %xmm4 > > > + addsd %xmm3, %xmm4 > > > + mulsd %xmm6, %xmm4 > > > + mulsd %xmm10, %xmm6 > > > + addsd %xmm7, %xmm4 > > > + pxor %xmm7, %xmm7 > > > + cvtss2sd (%rdi), %xmm7 > > > + comisd 4184+_vmldACosHATab(%rip), %xmm7 > > > + ja .LBL_2_13 > > > + movsd 4152+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm2, %xmm0 > > > + movsd 4160+_vmldACosHATab(%rip), %xmm5 > > > + subsd %xmm6, %xmm0 > > > + subsd %xmm4, %xmm5 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd %xmm6, -56(%rsp) > > > + subsd %xmm1, %xmm2 > > > + subsd %xmm6, %xmm2 > > > + movsd %xmm2, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + movsd -48(%rsp), %xmm3 > > > + movaps %xmm3, %xmm4 > > > + addsd %xmm5, %xmm4 > > > + > > > +.LBL_2_13: > > > + addsd %xmm4, %xmm6 > > > + cvtsd2ss %xmm6, %xmm6 > > > + movss %xmm6, (%rsi) > > > + ret > > > + > > > +.LBL_2_14: > > > + ucomisd %xmm0, %xmm1 > > > + jp .LBL_2_15 > > > + je .LBL_2_19 > > > + > > > +.LBL_2_15: > > > + xorps .FLT_199(%rip), %xmm0 > > > + ucomisd %xmm0, %xmm1 > > > + jp .LBL_2_16 > > > + je .LBL_2_18 > > > + > > > +.LBL_2_16: > > > + movl $1, %eax > > > + pxor %xmm1, %xmm1 > > > + pxor %xmm0, %xmm0 > > > + divss %xmm0, %xmm1 > > > + movss %xmm1, (%rsi) > > > + ret > > > + > > > +.LBL_2_18: > > > + movsd 4152+_vmldACosHATab(%rip), %xmm0 > > > + addsd 4160+_vmldACosHATab(%rip), %xmm0 > > > + cvtsd2ss %xmm0, %xmm0 > > > + movss %xmm0, (%rsi) > > > + ret > > > + > > > +.LBL_2_19: > > > + movsd 4184+_vmldACosHATab(%rip), %xmm0 > > > + cvtsd2ss %xmm0, %xmm0 > > > + movss %xmm0, (%rsi) > > > + ret > > > + > > > +.LBL_2_20: > > > + divss %xmm1, %xmm1 > > > + testl $8388607, (%rdi) > > > + movss %xmm1, (%rsi) > > > + sete %al > > > + ret > > > + > > > + cfi_endproc > > > + > > > + .type __svml_sacos_cout_rare_internal,@function > > > + .size __svml_sacos_cout_rare_internal,.-__svml_sacos_cout_rare_internal > > > + > > > + .section .rodata, "a" > > > + .align 64 > > > + > > > +__svml_sacos_data_internal: > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .type __svml_sacos_data_internal,@object > > > + .size __svml_sacos_data_internal,1600 > > > + .align 32 > > > + > > > +_vmldACosHATab: > > > + .long 0 > > > + .long 1072693248 > > > + .long 0 > > > + .long 1072689152 > > > + .long 0 > > > + .long 1072685056 > > > + .long 0 > > > + .long 1072680960 > > > + .long 0 > > > + .long 1072676864 > > > + .long 0 > > > + .long 1072672768 > > > + .long 0 > > > + .long 1072668672 > > > + .long 0 > > > + .long 1072665600 > > > + .long 0 > > > + .long 1072661504 > > > + .long 0 > > > + .long 1072657408 > > > + .long 0 > > > + .long 1072653312 > > > + .long 0 > > > + .long 1072649216 > > > + .long 0 > > > + .long 1072646144 > > > + .long 0 > > > + .long 1072642048 > > > + .long 0 > > > + .long 1072637952 > > > + .long 0 > > > + .long 1072634880 > > > + .long 0 > > > + .long 1072630784 > > > + .long 0 > > > + .long 1072626688 > > > + .long 0 > > > + .long 1072623616 > > > + .long 0 > > > + .long 1072619520 > > > + .long 0 > > > + .long 1072615424 > > > + .long 0 > > > + .long 1072612352 > > > + .long 0 > > > + .long 1072608256 > > > + .long 0 > > > + .long 1072605184 > > > + .long 0 > > > + .long 1072601088 > > > + .long 0 > > > + .long 1072598016 > > > + .long 0 > > > + .long 1072593920 > > > + .long 0 > > > + .long 1072590848 > > > + .long 0 > > > + .long 1072586752 > > > + .long 0 > > > + .long 1072583680 > > > + .long 0 > > > + .long 1072580608 > > > + .long 0 > > > + .long 1072576512 > > > + .long 0 > > > + .long 1072573440 > > > + .long 0 > > > + .long 1072570368 > > > + .long 0 > > > + .long 1072566272 > > > + .long 0 > > > + .long 1072563200 > > > + .long 0 > > > + .long 1072560128 > > > + .long 0 > > > + .long 1072556032 > > > + .long 0 > > > + .long 1072552960 > > > + .long 0 > > > + .long 1072549888 > > > + .long 0 > > > + .long 1072546816 > > > + .long 0 > > > + .long 1072542720 > > > + .long 0 > > > + .long 1072539648 > > > + .long 0 > > > + .long 1072536576 > > > + .long 0 > > > + .long 1072533504 > > > + .long 0 > > > + .long 1072530432 > > > + .long 0 > > > + .long 1072527360 > > > + .long 0 > > > + .long 1072523264 > > > + .long 0 > > > + .long 1072520192 > > > + .long 0 > > > + .long 1072517120 > > > + .long 0 > > > + .long 1072514048 > > > + .long 0 > > > + .long 1072510976 > > > + .long 0 > > > + .long 1072507904 > > > + .long 0 > > > + .long 1072504832 > > > + .long 0 > > > + .long 1072501760 > > > + .long 0 > > > + .long 1072498688 > > > + .long 0 > > > + .long 1072495616 > > > + .long 0 > > > + .long 1072492544 > > > + .long 0 > > > + .long 1072489472 > > > + .long 0 > > > + .long 1072486400 > > > + .long 0 > > > + .long 1072483328 > > > + .long 0 > > > + .long 1072480256 > > > + .long 0 > > > + .long 1072478208 > > > + .long 0 > > > + .long 1072475136 > > > + .long 0 > > > + .long 1072472064 > > > + .long 0 > > > + .long 1072468992 > > > + .long 0 > > > + .long 1072465920 > > > + .long 0 > > > + .long 1072462848 > > > + .long 0 > > > + .long 1072459776 > > > + .long 0 > > > + .long 1072457728 > > > + .long 0 > > > + .long 1072454656 > > > + .long 0 > > > + .long 1072451584 > > > + .long 0 > > > + .long 1072448512 > > > + .long 0 > > > + .long 1072446464 > > > + .long 0 > > > + .long 1072443392 > > > + .long 0 > > > + .long 1072440320 > > > + .long 0 > > > + .long 1072437248 > > > + .long 0 > > > + .long 1072435200 > > > + .long 0 > > > + .long 1072432128 > > > + .long 0 > > > + .long 1072429056 > > > + .long 0 > > > + .long 1072427008 > > > + .long 0 > > > + .long 1072423936 > > > + .long 0 > > > + .long 1072420864 > > > + .long 0 > > > + .long 1072418816 > > > + .long 0 > > > + .long 1072415744 > > > + .long 0 > > > + .long 1072412672 > > > + .long 0 > > > + .long 1072410624 > > > + .long 0 > > > + .long 1072407552 > > > + .long 0 > > > + .long 1072405504 > > > + .long 0 > > > + .long 1072402432 > > > + .long 0 > > > + .long 1072400384 > > > + .long 0 > > > + .long 1072397312 > > > + .long 0 > > > + .long 1072395264 > > > + .long 0 > > > + .long 1072392192 > > > + .long 0 > > > + .long 1072390144 > > > + .long 0 > > > + .long 1072387072 > > > + .long 0 > > > + .long 1072385024 > > > + .long 0 > > > + .long 1072381952 > > > + .long 0 > > > + .long 1072379904 > > > + .long 0 > > > + .long 1072376832 > > > + .long 0 > > > + .long 1072374784 > > > + .long 0 > > > + .long 1072371712 > > > + .long 0 > > > + .long 1072369664 > > > + .long 0 > > > + .long 1072366592 > > > + .long 0 > > > + .long 1072364544 > > > + .long 0 > > > + .long 1072362496 > > > + .long 0 > > > + .long 1072359424 > > > + .long 0 > > > + .long 1072357376 > > > + .long 0 > > > + .long 1072355328 > > > + .long 0 > > > + .long 1072352256 > > > + .long 0 > > > + .long 1072350208 > > > + .long 0 > > > + .long 1072347136 > > > + .long 0 > > > + .long 1072345088 > > > + .long 0 > > > + .long 1072343040 > > > + .long 0 > > > + .long 1072340992 > > > + .long 0 > > > + .long 1072337920 > > > + .long 0 > > > + .long 1072335872 > > > + .long 0 > > > + .long 1072333824 > > > + .long 0 > > > + .long 1072330752 > > > + .long 0 > > > + .long 1072328704 > > > + .long 0 > > > + .long 1072326656 > > > + .long 0 > > > + .long 1072324608 > > > + .long 0 > > > + .long 1072321536 > > > + .long 0 > > > + .long 1072319488 > > > + .long 0 > > > + .long 1072317440 > > > + .long 0 > > > + .long 1072315392 > > > + .long 0 > > > + .long 1072313344 > > > + .long 0 > > > + .long 1072310272 > > > + .long 0 > > > + .long 1072308224 > > > + .long 0 > > > + .long 1072306176 > > > + .long 0 > > > + .long 1072304128 > > > + .long 0 > > > + .long 1072302080 > > > + .long 0 > > > + .long 1072300032 > > > + .long 0 > > > + .long 1072296960 > > > + .long 0 > > > + .long 1072294912 > > > + .long 0 > > > + .long 1072292864 > > > + .long 0 > > > + .long 1072290816 > > > + .long 0 > > > + .long 1072288768 > > > + .long 0 > > > + .long 1072286720 > > > + .long 0 > > > + .long 1072284672 > > > + .long 0 > > > + .long 1072282624 > > > + .long 0 > > > + .long 1072280576 > > > + .long 0 > > > + .long 1072278528 > > > + .long 0 > > > + .long 1072275456 > > > + .long 0 > > > + .long 1072273408 > > > + .long 0 > > > + .long 1072271360 > > > + .long 0 > > > + .long 1072269312 > > > + .long 0 > > > + .long 1072267264 > > > + .long 0 > > > + .long 1072265216 > > > + .long 0 > > > + .long 1072263168 > > > + .long 0 > > > + .long 1072261120 > > > + .long 0 > > > + .long 1072259072 > > > + .long 0 > > > + .long 1072257024 > > > + .long 0 > > > + .long 1072254976 > > > + .long 0 > > > + .long 1072252928 > > > + .long 0 > > > + .long 1072250880 > > > + .long 0 > > > + .long 1072248832 > > > + .long 0 > > > + .long 1072246784 > > > + .long 0 > > > + .long 1072244736 > > > + .long 0 > > > + .long 1072243712 > > > + .long 0 > > > + .long 1072241664 > > > + .long 0 > > > + .long 1072239616 > > > + .long 0 > > > + .long 1072237568 > > > + .long 0 > > > + .long 1072235520 > > > + .long 0 > > > + .long 1072233472 > > > + .long 0 > > > + .long 1072231424 > > > + .long 0 > > > + .long 1072229376 > > > + .long 0 > > > + .long 1072227328 > > > + .long 0 > > > + .long 1072225280 > > > + .long 0 > > > + .long 1072223232 > > > + .long 0 > > > + .long 1072222208 > > > + .long 0 > > > + .long 1072220160 > > > + .long 0 > > > + .long 1072218112 > > > + .long 0 > > > + .long 1072216064 > > > + .long 0 > > > + .long 1072214016 > > > + .long 0 > > > + .long 1072211968 > > > + .long 0 > > > + .long 1072210944 > > > + .long 0 > > > + .long 1072208896 > > > + .long 0 > > > + .long 1072206848 > > > + .long 0 > > > + .long 1072204800 > > > + .long 0 > > > + .long 1072202752 > > > + .long 0 > > > + .long 1072201728 > > > + .long 0 > > > + .long 1072199680 > > > + .long 0 > > > + .long 1072197632 > > > + .long 0 > > > + .long 1072195584 > > > + .long 0 > > > + .long 1072193536 > > > + .long 0 > > > + .long 1072192512 > > > + .long 0 > > > + .long 1072190464 > > > + .long 0 > > > + .long 1072188416 > > > + .long 0 > > > + .long 1072186368 > > > + .long 0 > > > + .long 1072185344 > > > + .long 0 > > > + .long 1072183296 > > > + .long 0 > > > + .long 1072181248 > > > + .long 0 > > > + .long 1072179200 > > > + .long 0 > > > + .long 1072178176 > > > + .long 0 > > > + .long 1072176128 > > > + .long 0 > > > + .long 1072174080 > > > + .long 0 > > > + .long 1072173056 > > > + .long 0 > > > + .long 1072171008 > > > + .long 0 > > > + .long 1072168960 > > > + .long 0 > > > + .long 1072167936 > > > + .long 0 > > > + .long 1072165888 > > > + .long 0 > > > + .long 1072163840 > > > + .long 0 > > > + .long 1072161792 > > > + .long 0 > > > + .long 1072160768 > > > + .long 0 > > > + .long 1072158720 > > > + .long 0 > > > + .long 1072157696 > > > + .long 0 > > > + .long 1072155648 > > > + .long 0 > > > + .long 1072153600 > > > + .long 0 > > > + .long 1072152576 > > > + .long 0 > > > + .long 1072150528 > > > + .long 0 > > > + .long 1072148480 > > > + .long 0 > > > + .long 1072147456 > > > + .long 0 > > > + .long 1072145408 > > > + .long 0 > > > + .long 1072143360 > > > + .long 0 > > > + .long 1072142336 > > > + .long 0 > > > + .long 1072140288 > > > + .long 0 > > > + .long 1072139264 > > > + .long 0 > > > + .long 1072137216 > > > + .long 0 > > > + .long 1072135168 > > > + .long 0 > > > + .long 1072134144 > > > + .long 0 > > > + .long 1072132096 > > > + .long 0 > > > + .long 1072131072 > > > + .long 0 > > > + .long 1072129024 > > > + .long 0 > > > + .long 1072128000 > > > + .long 0 > > > + .long 1072125952 > > > + .long 0 > > > + .long 1072124928 > > > + .long 0 > > > + .long 1072122880 > > > + .long 0 > > > + .long 1072120832 > > > + .long 0 > > > + .long 1072119808 > > > + .long 0 > > > + .long 1072117760 > > > + .long 0 > > > + .long 1072116736 > > > + .long 0 > > > + .long 1072114688 > > > + .long 0 > > > + .long 1072113664 > > > + .long 0 > > > + .long 1072111616 > > > + .long 0 > > > + .long 1072110592 > > > + .long 0 > > > + .long 1072108544 > > > + .long 0 > > > + .long 1072107520 > > > + .long 0 > > > + .long 1072105472 > > > + .long 0 > > > + .long 1072104448 > > > + .long 0 > > > + .long 1072102400 > > > + .long 0 > > > + .long 1072101376 > > > + .long 0 > > > + .long 1072099328 > > > + .long 0 > > > + .long 1072098304 > > > + .long 0 > > > + .long 1072096256 > > > + .long 0 > > > + .long 1072095232 > > > + .long 0 > > > + .long 1072094208 > > > + .long 0 > > > + .long 1072092160 > > > + .long 0 > > > + .long 1072091136 > > > + .long 0 > > > + .long 1072089088 > > > + .long 0 > > > + .long 1072088064 > > > + .long 0 > > > + .long 1072086016 > > > + .long 0 > > > + .long 1072084992 > > > + .long 0 > > > + .long 1072082944 > > > + .long 0 > > > + .long 1072081920 > > > + .long 0 > > > + .long 1072080896 > > > + .long 0 > > > + .long 1072078848 > > > + .long 0 > > > + .long 1072075776 > > > + .long 0 > > > + .long 1072073728 > > > + .long 0 > > > + .long 1072070656 > > > + .long 0 > > > + .long 1072067584 > > > + .long 0 > > > + .long 1072064512 > > > + .long 0 > > > + .long 1072061440 > > > + .long 0 > > > + .long 1072059392 > > > + .long 0 > > > + .long 1072056320 > > > + .long 0 > > > + .long 1072053248 > > > + .long 0 > > > + .long 1072051200 > > > + .long 0 > > > + .long 1072048128 > > > + .long 0 > > > + .long 1072045056 > > > + .long 0 > > > + .long 1072043008 > > > + .long 0 > > > + .long 1072039936 > > > + .long 0 > > > + .long 1072037888 > > > + .long 0 > > > + .long 1072034816 > > > + .long 0 > > > + .long 1072031744 > > > + .long 0 > > > + .long 1072029696 > > > + .long 0 > > > + .long 1072026624 > > > + .long 0 > > > + .long 1072024576 > > > + .long 0 > > > + .long 1072021504 > > > + .long 0 > > > + .long 1072019456 > > > + .long 0 > > > + .long 1072016384 > > > + .long 0 > > > + .long 1072014336 > > > + .long 0 > > > + .long 1072011264 > > > + .long 0 > > > + .long 1072009216 > > > + .long 0 > > > + .long 1072006144 > > > + .long 0 > > > + .long 1072004096 > > > + .long 0 > > > + .long 1072002048 > > > + .long 0 > > > + .long 1071998976 > > > + .long 0 > > > + .long 1071996928 > > > + .long 0 > > > + .long 1071993856 > > > + .long 0 > > > + .long 1071991808 > > > + .long 0 > > > + .long 1071989760 > > > + .long 0 > > > + .long 1071986688 > > > + .long 0 > > > + .long 1071984640 > > > + .long 0 > > > + .long 1071982592 > > > + .long 0 > > > + .long 1071979520 > > > + .long 0 > > > + .long 1071977472 > > > + .long 0 > > > + .long 1071975424 > > > + .long 0 > > > + .long 1071972352 > > > + .long 0 > > > + .long 1071970304 > > > + .long 0 > > > + .long 1071968256 > > > + .long 0 > > > + .long 1071966208 > > > + .long 0 > > > + .long 1071964160 > > > + .long 0 > > > + .long 1071961088 > > > + .long 0 > > > + .long 1071959040 > > > + .long 0 > > > + .long 1071956992 > > > + .long 0 > > > + .long 1071954944 > > > + .long 0 > > > + .long 1071952896 > > > + .long 0 > > > + .long 1071949824 > > > + .long 0 > > > + .long 1071947776 > > > + .long 0 > > > + .long 1071945728 > > > + .long 0 > > > + .long 1071943680 > > > + .long 0 > > > + .long 1071941632 > > > + .long 0 > > > + .long 1071939584 > > > + .long 0 > > > + .long 1071937536 > > > + .long 0 > > > + .long 1071935488 > > > + .long 0 > > > + .long 1071933440 > > > + .long 0 > > > + .long 1071930368 > > > + .long 0 > > > + .long 1071928320 > > > + .long 0 > > > + .long 1071926272 > > > + .long 0 > > > + .long 1071924224 > > > + .long 0 > > > + .long 1071922176 > > > + .long 0 > > > + .long 1071920128 > > > + .long 0 > > > + .long 1071918080 > > > + .long 0 > > > + .long 1071916032 > > > + .long 0 > > > + .long 1071913984 > > > + .long 0 > > > + .long 1071911936 > > > + .long 0 > > > + .long 1071909888 > > > + .long 0 > > > + .long 1071907840 > > > + .long 0 > > > + .long 1071905792 > > > + .long 0 > > > + .long 1071903744 > > > + .long 0 > > > + .long 1071901696 > > > + .long 0 > > > + .long 1071900672 > > > + .long 0 > > > + .long 1071898624 > > > + .long 0 > > > + .long 1071896576 > > > + .long 0 > > > + .long 1071894528 > > > + .long 0 > > > + .long 1071892480 > > > + .long 0 > > > + .long 1071890432 > > > + .long 0 > > > + .long 1071888384 > > > + .long 0 > > > + .long 1071886336 > > > + .long 0 > > > + .long 1071884288 > > > + .long 0 > > > + .long 1071883264 > > > + .long 0 > > > + .long 1071881216 > > > + .long 0 > > > + .long 1071879168 > > > + .long 0 > > > + .long 1071877120 > > > + .long 0 > > > + .long 1071875072 > > > + .long 0 > > > + .long 1071873024 > > > + .long 0 > > > + .long 1071872000 > > > + .long 0 > > > + .long 1071869952 > > > + .long 0 > > > + .long 1071867904 > > > + .long 0 > > > + .long 1071865856 > > > + .long 0 > > > + .long 1071864832 > > > + .long 0 > > > + .long 1071862784 > > > + .long 0 > > > + .long 1071860736 > > > + .long 0 > > > + .long 1071858688 > > > + .long 0 > > > + .long 1071856640 > > > + .long 0 > > > + .long 1071855616 > > > + .long 0 > > > + .long 1071853568 > > > + .long 0 > > > + .long 1071851520 > > > + .long 0 > > > + .long 1071850496 > > > + .long 0 > > > + .long 1071848448 > > > + .long 0 > > > + .long 1071846400 > > > + .long 0 > > > + .long 1071844352 > > > + .long 0 > > > + .long 1071843328 > > > + .long 0 > > > + .long 1071841280 > > > + .long 0 > > > + .long 1071839232 > > > + .long 0 > > > + .long 1071838208 > > > + .long 0 > > > + .long 1071836160 > > > + .long 0 > > > + .long 1071834112 > > > + .long 0 > > > + .long 1071833088 > > > + .long 0 > > > + .long 1071831040 > > > + .long 0 > > > + .long 1071830016 > > > + .long 0 > > > + .long 1071827968 > > > + .long 0 > > > + .long 1071825920 > > > + .long 0 > > > + .long 1071824896 > > > + .long 0 > > > + .long 1071822848 > > > + .long 0 > > > + .long 1071821824 > > > + .long 0 > > > + .long 1071819776 > > > + .long 0 > > > + .long 1071817728 > > > + .long 0 > > > + .long 1071816704 > > > + .long 0 > > > + .long 1071814656 > > > + .long 0 > > > + .long 1071813632 > > > + .long 0 > > > + .long 1071811584 > > > + .long 0 > > > + .long 1071810560 > > > + .long 0 > > > + .long 1071808512 > > > + .long 0 > > > + .long 1071806464 > > > + .long 0 > > > + .long 1071805440 > > > + .long 0 > > > + .long 1071803392 > > > + .long 0 > > > + .long 1071802368 > > > + .long 0 > > > + .long 1071800320 > > > + .long 0 > > > + .long 1071799296 > > > + .long 0 > > > + .long 1071797248 > > > + .long 0 > > > + .long 1071796224 > > > + .long 0 > > > + .long 1071794176 > > > + .long 0 > > > + .long 1071793152 > > > + .long 0 > > > + .long 1071791104 > > > + .long 0 > > > + .long 1071790080 > > > + .long 0 > > > + .long 1071788032 > > > + .long 0 > > > + .long 1071787008 > > > + .long 0 > > > + .long 1071784960 > > > + .long 0 > > > + .long 1071783936 > > > + .long 0 > > > + .long 1071782912 > > > + .long 0 > > > + .long 1071780864 > > > + .long 0 > > > + .long 1071779840 > > > + .long 0 > > > + .long 1071777792 > > > + .long 0 > > > + .long 1071776768 > > > + .long 0 > > > + .long 1071774720 > > > + .long 0 > > > + .long 1071773696 > > > + .long 0 > > > + .long 1071772672 > > > + .long 0 > > > + .long 1071770624 > > > + .long 0 > > > + .long 1071769600 > > > + .long 0 > > > + .long 1071767552 > > > + .long 0 > > > + .long 1071766528 > > > + .long 0 > > > + .long 1071765504 > > > + .long 0 > > > + .long 1071763456 > > > + .long 0 > > > + .long 1071762432 > > > + .long 0 > > > + .long 1071760384 > > > + .long 0 > > > + .long 1071759360 > > > + .long 0 > > > + .long 1071758336 > > > + .long 0 > > > + .long 1071756288 > > > + .long 0 > > > + .long 1071755264 > > > + .long 0 > > > + .long 1071754240 > > > + .long 0 > > > + .long 1071752192 > > > + .long 0 > > > + .long 1071751168 > > > + .long 0 > > > + .long 1071750144 > > > + .long 0 > > > + .long 1071748096 > > > + .long 0 > > > + .long 1071747072 > > > + .long 0 > > > + .long 1071746048 > > > + .long 0 > > > + .long 1071744000 > > > + .long 0 > > > + .long 1071742976 > > > + .long 0 > > > + .long 1071741952 > > > + .long 0 > > > + .long 1071739904 > > > + .long 0 > > > + .long 1071738880 > > > + .long 0 > > > + .long 1071737856 > > > + .long 0 > > > + .long 1071736832 > > > + .long 0 > > > + .long 1071734784 > > > + .long 0 > > > + .long 1071733760 > > > + .long 0 > > > + .long 1071732736 > > > + .long 0 > > > + .long 1071730688 > > > + .long 0 > > > + .long 1071729664 > > > + .long 0 > > > + .long 1071728640 > > > + .long 0 > > > + .long 1071727616 > > > + .long 0 > > > + .long 1071725568 > > > + .long 0 > > > + .long 1071724544 > > > + .long 0 > > > + .long 1071723520 > > > + .long 0 > > > + .long 1071722496 > > > + .long 0 > > > + .long 1071720448 > > > + .long 0 > > > + .long 1071719424 > > > + .long 0 > > > + .long 1071718400 > > > + .long 0 > > > + .long 1071717376 > > > + .long 0 > > > + .long 1071715328 > > > + .long 0 > > > + .long 1071714304 > > > + .long 0 > > > + .long 1071713280 > > > + .long 0 > > > + .long 1071712256 > > > + .long 0 > > > + .long 1071711232 > > > + .long 0 > > > + .long 1071709184 > > > + .long 0 > > > + .long 1071708160 > > > + .long 0 > > > + .long 1071707136 > > > + .long 0 > > > + .long 1071706112 > > > + .long 0 > > > + .long 1071705088 > > > + .long 0 > > > + .long 1071704064 > > > + .long 0 > > > + .long 1071702016 > > > + .long 0 > > > + .long 1071700992 > > > + .long 0 > > > + .long 1071699968 > > > + .long 0 > > > + .long 1071698944 > > > + .long 0 > > > + .long 1071697920 > > > + .long 0 > > > + .long 1071696896 > > > + .long 0 > > > + .long 1071694848 > > > + .long 0 > > > + .long 1071693824 > > > + .long 0 > > > + .long 1071692800 > > > + .long 0 > > > + .long 1071691776 > > > + .long 0 > > > + .long 1071690752 > > > + .long 0 > > > + .long 1071689728 > > > + .long 0 > > > + .long 1071688704 > > > + .long 0 > > > + .long 1071686656 > > > + .long 0 > > > + .long 1071685632 > > > + .long 0 > > > + .long 1071684608 > > > + .long 0 > > > + .long 1071683584 > > > + .long 0 > > > + .long 1071682560 > > > + .long 0 > > > + .long 1071681536 > > > + .long 0 > > > + .long 1071680512 > > > + .long 0 > > > + .long 1071679488 > > > + .long 0 > > > + .long 1071677440 > > > + .long 0 > > > + .long 1071676416 > > > + .long 0 > > > + .long 1071675392 > > > + .long 0 > > > + .long 1071674368 > > > + .long 0 > > > + .long 1071673344 > > > + .long 0 > > > + .long 1071672320 > > > + .long 0 > > > + .long 1071671296 > > > + .long 0 > > > + .long 1071670272 > > > + .long 0 > > > + .long 1071669248 > > > + .long 0 > > > + .long 1071668224 > > > + .long 0 > > > + .long 1071667200 > > > + .long 0 > > > + .long 1071666176 > > > + .long 0 > > > + .long 1071665152 > > > + .long 0 > > > + .long 1071663104 > > > + .long 0 > > > + .long 1071662080 > > > + .long 0 > > > + .long 1071661056 > > > + .long 0 > > > + .long 1071660032 > > > + .long 0 > > > + .long 1071659008 > > > + .long 0 > > > + .long 1071657984 > > > + .long 0 > > > + .long 1071656960 > > > + .long 0 > > > + .long 1071655936 > > > + .long 0 > > > + .long 1071654912 > > > + .long 0 > > > + .long 1071653888 > > > + .long 0 > > > + .long 1071652864 > > > + .long 0 > > > + .long 1071651840 > > > + .long 0 > > > + .long 1071650816 > > > + .long 0 > > > + .long 1071649792 > > > + .long 0 > > > + .long 1071648768 > > > + .long 0 > > > + .long 1071647744 > > > + .long 0 > > > + .long 1071646720 > > > + .long 0 > > > + .long 1071645696 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1101004800 > > > + .long 1073741824 > > > + .long 1095761920 > > > + .long 256 > > > + .long 1118830592 > > > + .long 0 > > > + .long 1017118720 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 0 > > > + .long 1072693248 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 0 > > > + .long 1476395008 > > > + .long 1069897045 > > > + .long 1768958041 > > > + .long 3189069141 > > > + .long 805306368 > > > + .long 1068708659 > > > + .long 3580333578 > > > + .long 1040816593 > > > + .long 3067382784 > > > + .long 1067899757 > > > + .long 3397590151 > > > + .long 1067392113 > > > + .long 2939529726 > > > + .long 1066854585 > > > + .long 1423429166 > > > + .long 1066517752 > > > + .long 1775218934 > > > + .long 1066178574 > > > + .long 1185392460 > > > + .long 1065859647 > > > + .long 289998670 > > > + .long 1065577550 > > > + .long 3179807072 > > > + .long 1065648121 > > > + .long 3781007284 > > > + .long 1061576176 > > > + .long 2482106687 > > > + .long 1067019199 > > > + .long 763519713 > > > + .long 3214591591 > > > + .long 3695107454 > > > + .long 1067530646 > > > + .long 0 > > > + .long 1073741824 > > > + .long 1124791109 > > > + .long 1006764147 > > > + .long 1476395008 > > > + .long 1069897045 > > > + .long 1953913876 > > > + .long 3189069141 > > > + .long 805306368 > > > + .long 1067660083 > > > + .long 165110192 > > > + .long 1039768033 > > > + .long 3067304082 > > > + .long 1065802605 > > > + .long 3404727379 > > > + .long 1064246385 > > > + .long 2737480376 > > > + .long 1062660281 > > > + .long 933797922 > > > + .long 1061274873 > > > + .long 1475716730 > > > + .long 1059887095 > > > + .long 1511619763 > > > + .long 1058519827 > > > + .long 556024211 > > > + .long 1057187555 > > > + .long 3482101045 > > > + .long 1056217350 > > > + .long 1174622859 > > > + .long 1050762633 > > > + .long 899668651 > > > + .long 1055506366 > > > + .long 1081094694 > > > + .long 3202035365 > > > + .long 2559814773 > > > + .long 1053906576 > > > + .long 0 > > > + .long 3219128320 > > > + .long 0 > > > + .long 1071120384 > > > + .long 0 > > > + .long 3218341888 > > > + .long 0 > > > + .long 1070694400 > > > + .long 0 > > > + .long 3218046976 > > > + .long 0 > > > + .long 1070391296 > > > + .long 0 > > > + .long 3217739776 > > > + .type _vmldACosHATab,@object > > > + .size _vmldACosHATab,4520 > > > + .space 88, 0x00 > > > + .align 16 > > > + > > > +.FLT_199: > > > + .long 0x00000000,0x80000000,0x00000000,0x00000000 > > > + .type .FLT_199,@object > > > + .size .FLT_199,16 > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core-sse2.S b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core-sse2.S > > > new file mode 100644 > > > index 0000000000..f94b3eb01a > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core-sse2.S > > > @@ -0,0 +1,20 @@ > > > +/* SSE2 version of vectorized acosf, vector length is 4. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#define _ZGVbN4v_acosf _ZGVbN4v_acosf_sse2 > > > +#include "../svml_s_acosf4_core.S" > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core.c b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core.c > > > new file mode 100644 > > > index 0000000000..6f9a5c1082 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core.c > > > @@ -0,0 +1,28 @@ > > > +/* Multiple versions of vectorized acosf, vector length is 4. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#define SYMBOL_NAME _ZGVbN4v_acosf > > > +#include "ifunc-mathvec-sse4_1.h" > > > + > > > +libc_ifunc_redirected (REDIRECT_NAME, SYMBOL_NAME, IFUNC_SELECTOR ()); > > > + > > > +#ifdef SHARED > > > +__hidden_ver1 (_ZGVbN4v_acosf, __GI__ZGVbN4v_acosf, > > > + __redirect__ZGVbN4v_acosf) > > > + __attribute__ ((visibility ("hidden"))); > > > +#endif > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core_sse4.S b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core_sse4.S > > > new file mode 100644 > > > index 0000000000..d7e2dd282b > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core_sse4.S > > > @@ -0,0 +1,2812 @@ > > > +/* Function acosf vectorized with SSE4. > > > + Copyright (C) 2021 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 > > > + https://www.gnu.org/licenses/. */ > > > + > > > +/* > > > + * ALGORITHM DESCRIPTION: > > > + * > > > + * SelMask = (|x| >= 0.5) ? 1 : 0; > > > + * R = SelMask ? sqrt(0.5 - 0.5*|x|) : |x| > > > + * acos(|x|) = SelMask ? 2*Poly(R) : (Pi/2 - Poly(R)) > > > + * acos(x) = sign(x) ? (Pi - acos(|x|)) : acos(|x|) > > > + * > > > + * > > > + */ > > > + > > > +#include <sysdep.h> > > > + > > > + .text > > > +ENTRY(_ZGVbN4v_acosf_sse4) > > > + pushq %rbp > > > + cfi_def_cfa_offset(16) > > > + movq %rsp, %rbp > > > + cfi_def_cfa(6, 16) > > > + cfi_offset(6, -16) > > > + andq $-64, %rsp > > > + subq $320, %rsp > > > + movaps %xmm0, %xmm6 > > > + > > > +/* > > > + * 2*sqrt(X) ~ Sh - Sl (to 24+ bits) > > > + * SQ ~ 2*sqrt(X) > > > + */ > > > + movups __svml_sacos_data_internal(%rip), %xmm5 > > > + movups 64+__svml_sacos_data_internal(%rip), %xmm0 > > > + > > > +/* x = -|arg| */ > > > + movaps %xmm5, %xmm7 > > > + orps %xmm6, %xmm7 > > > + > > > +/* Y = 0.5 + 0.5*(-x) */ > > > + movaps %xmm0, %xmm2 > > > + mulps %xmm7, %xmm2 > > > + > > > +/* x^2 */ > > > + movaps %xmm7, %xmm3 > > > + mulps %xmm7, %xmm3 > > > + addps %xmm2, %xmm0 > > > + movups 256+__svml_sacos_data_internal(%rip), %xmm4 > > > + andps %xmm6, %xmm5 > > > + cmpnleps %xmm7, %xmm4 > > > + minps %xmm0, %xmm3 > > > + > > > +/* SQ ~ 2*sqrt(Y) */ > > > + rsqrtps %xmm0, %xmm1 > > > + movmskps %xmm4, %edx > > > + movaps %xmm0, %xmm4 > > > + movaps %xmm3, %xmm2 > > > + movups %xmm8, 144(%rsp) > > > + cmpltps 192+__svml_sacos_data_internal(%rip), %xmm4 > > > + cmpnltps %xmm0, %xmm2 > > > + addps %xmm0, %xmm0 > > > + andnps %xmm1, %xmm4 > > > + .cfi_escape 0x10, 0x19, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 > > > + movaps %xmm4, %xmm8 > > > + mulps %xmm4, %xmm8 > > > + mulps %xmm0, %xmm4 > > > + mulps %xmm8, %xmm0 > > > + movups 512+__svml_sacos_data_internal(%rip), %xmm1 > > > + > > > +/* polynomial */ > > > + movups 576+__svml_sacos_data_internal(%rip), %xmm8 > > > + mulps %xmm3, %xmm8 > > > + subps 448+__svml_sacos_data_internal(%rip), %xmm0 > > > + mulps %xmm0, %xmm1 > > > + addps 592+__svml_sacos_data_internal(%rip), %xmm8 > > > + mulps %xmm4, %xmm0 > > > + addps 528+__svml_sacos_data_internal(%rip), %xmm1 > > > + mulps %xmm0, %xmm1 > > > + movaps %xmm3, %xmm0 > > > + mulps %xmm3, %xmm0 > > > + subps %xmm1, %xmm4 > > > + mulps %xmm0, %xmm8 > > > + movups 608+__svml_sacos_data_internal(%rip), %xmm1 > > > + andps %xmm2, %xmm4 > > > + mulps %xmm3, %xmm1 > > > + movups 832+__svml_sacos_data_internal(%rip), %xmm0 > > > + andps %xmm2, %xmm0 > > > + addps 624+__svml_sacos_data_internal(%rip), %xmm1 > > > + addps %xmm8, %xmm1 > > > + > > > +/* X<X^2 iff X<0 */ > > > + movaps %xmm6, %xmm8 > > > + cmpltps %xmm3, %xmm8 > > > + mulps %xmm3, %xmm1 > > > + andps %xmm8, %xmm0 > > > + movaps %xmm2, %xmm8 > > > + andnps %xmm7, %xmm8 > > > + addps 640+__svml_sacos_data_internal(%rip), %xmm1 > > > + mulps %xmm3, %xmm1 > > > + orps %xmm4, %xmm8 > > > + pxor %xmm5, %xmm8 > > > + movaps %xmm2, %xmm3 > > > + mulps %xmm8, %xmm1 > > > + andnps 704+__svml_sacos_data_internal(%rip), %xmm3 > > > + addps %xmm1, %xmm8 > > > + addps %xmm3, %xmm0 > > > + addps %xmm8, %xmm0 > > > + testl %edx, %edx > > > + jne .LBL_1_3 > > > + > > > +.LBL_1_2: > > > + movups 144(%rsp), %xmm8 > > > + cfi_restore(25) > > > + movq %rbp, %rsp > > > + popq %rbp > > > + cfi_def_cfa(7, 8) > > > + cfi_restore(6) > > > + ret > > > + cfi_def_cfa(6, 16) > > > + cfi_offset(6, -16) > > > + .cfi_escape 0x10, 0x19, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 > > > + > > > +.LBL_1_3: > > > + movups %xmm6, 192(%rsp) > > > + movups %xmm0, 256(%rsp) > > > + xorl %eax, %eax > > > + movups %xmm9, 96(%rsp) > > > + movups %xmm10, 80(%rsp) > > > + movups %xmm11, 64(%rsp) > > > + movups %xmm12, 48(%rsp) > > > + movups %xmm13, 32(%rsp) > > > + movups %xmm14, 16(%rsp) > > > + movups %xmm15, (%rsp) > > > + movq %rsi, 120(%rsp) > > > + movq %rdi, 112(%rsp) > > > + movq %r12, 136(%rsp) > > > + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x38, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1a, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1b, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xf0, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1e, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe0, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1f, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xd0, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x20, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc0, 0xfe, 0xff, 0xff, 0x22 > > > + movl %eax, %r12d > > > + movq %r13, 128(%rsp) > > > + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 > > > + movl %edx, %r13d > > > + > > > +.LBL_1_7: > > > + btl %r12d, %r13d > > > + jc .LBL_1_10 > > > + > > > +.LBL_1_8: > > > + incl %r12d > > > + cmpl $4, %r12d > > > + jl .LBL_1_7 > > > + movups 96(%rsp), %xmm9 > > > + cfi_restore(26) > > > + movups 80(%rsp), %xmm10 > > > + cfi_restore(27) > > > + movups 64(%rsp), %xmm11 > > > + cfi_restore(28) > > > + movups 48(%rsp), %xmm12 > > > + cfi_restore(29) > > > + movups 32(%rsp), %xmm13 > > > + cfi_restore(30) > > > + movups 16(%rsp), %xmm14 > > > + cfi_restore(31) > > > + movups (%rsp), %xmm15 > > > + cfi_restore(32) > > > + movq 120(%rsp), %rsi > > > + cfi_restore(4) > > > + movq 112(%rsp), %rdi > > > + cfi_restore(5) > > > + movq 136(%rsp), %r12 > > > + cfi_restore(12) > > > + movq 128(%rsp), %r13 > > > + cfi_restore(13) > > > + movups 256(%rsp), %xmm0 > > > + jmp .LBL_1_2 > > > + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x38, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1a, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1b, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xf0, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1e, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe0, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x1f, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xd0, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x20, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc0, 0xfe, 0xff, 0xff, 0x22 > > > + > > > +.LBL_1_10: > > > + lea 192(%rsp,%r12,4), %rdi > > > + lea 256(%rsp,%r12,4), %rsi > > > + call __svml_sacos_cout_rare_internal > > > + jmp .LBL_1_8 > > > + > > > +END(_ZGVbN4v_acosf_sse4) > > > + > > > + .align 16,0x90 > > > + > > > +__svml_sacos_cout_rare_internal: > > > + > > > + cfi_startproc > > > + > > > + xorl %eax, %eax > > > + movzwl 2(%rdi), %edx > > > + andl $32640, %edx > > > + movss (%rdi), %xmm1 > > > + cmpl $32640, %edx > > > + je .LBL_2_20 > > > + cvtss2sd %xmm1, %xmm1 > > > + movsd %xmm1, -32(%rsp) > > > + andb $127, -25(%rsp) > > > + movsd -32(%rsp), %xmm12 > > > + movsd 4168+_vmldACosHATab(%rip), %xmm0 > > > + comisd %xmm12, %xmm0 > > > + jbe .LBL_2_14 > > > + movsd 4176+_vmldACosHATab(%rip), %xmm1 > > > + comisd %xmm12, %xmm1 > > > + jbe .LBL_2_10 > > > + comisd 4128+_vmldACosHATab(%rip), %xmm12 > > > + jbe .LBL_2_9 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm6 > > > + movaps %xmm12, %xmm8 > > > + mulsd %xmm12, %xmm6 > > > + movaps %xmm12, %xmm7 > > > + movsd %xmm6, -40(%rsp) > > > + movsd -40(%rsp), %xmm13 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm5 > > > + subsd -32(%rsp), %xmm13 > > > + movsd %xmm13, -48(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + movsd -48(%rsp), %xmm14 > > > + subsd %xmm14, %xmm15 > > > + movaps %xmm12, %xmm14 > > > + movsd %xmm15, -40(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + subsd %xmm6, %xmm8 > > > + movsd %xmm8, -48(%rsp) > > > + movsd -40(%rsp), %xmm9 > > > + movaps %xmm9, %xmm4 > > > + addsd %xmm9, %xmm7 > > > + mulsd %xmm9, %xmm4 > > > + movsd -48(%rsp), %xmm10 > > > + movaps %xmm4, %xmm11 > > > + mulsd %xmm10, %xmm7 > > > + mulsd %xmm4, %xmm5 > > > + addsd %xmm7, %xmm11 > > > + movsd 4312+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm5, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm5 > > > + subsd %xmm4, %xmm1 > > > + addsd 4304+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm1, -48(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + addsd 4296+_vmldACosHATab(%rip), %xmm8 > > > + subsd %xmm2, %xmm0 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + addsd 4288+_vmldACosHATab(%rip), %xmm8 > > > + subsd %xmm3, %xmm4 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm4, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + mulsd %xmm6, %xmm9 > > > + addsd 4280+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm6, %xmm10 > > > + mulsd %xmm11, %xmm8 > > > + mulsd %xmm9, %xmm5 > > > + addsd 4272+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movaps %xmm9, %xmm0 > > > + movsd -48(%rsp), %xmm13 > > > + movaps %xmm6, %xmm4 > > > + movsd %xmm5, -40(%rsp) > > > + addsd %xmm13, %xmm7 > > > + addsd 4264+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm7, %xmm14 > > > + mulsd %xmm11, %xmm8 > > > + addsd %xmm14, %xmm10 > > > + addsd 4256+_vmldACosHATab(%rip), %xmm8 > > > + movsd -40(%rsp), %xmm1 > > > + mulsd %xmm11, %xmm8 > > > + subsd %xmm9, %xmm1 > > > + addsd %xmm10, %xmm9 > > > + addsd 4248+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm9, %xmm7 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm1, -48(%rsp) > > > + movsd -40(%rsp), %xmm2 > > > + movsd -48(%rsp), %xmm15 > > > + subsd %xmm15, %xmm2 > > > + addsd 4240+_vmldACosHATab(%rip), %xmm8 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm5 > > > + mulsd %xmm11, %xmm8 > > > + subsd %xmm5, %xmm0 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movsd -48(%rsp), %xmm5 > > > + movaps %xmm5, %xmm13 > > > + addsd 4232+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm3, %xmm4 > > > + addsd %xmm10, %xmm13 > > > + mulsd %xmm11, %xmm8 > > > + mulsd %xmm13, %xmm6 > > > + addsd 4224+_vmldACosHATab(%rip), %xmm8 > > > + addsd %xmm7, %xmm6 > > > + mulsd %xmm11, %xmm8 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm7 > > > + movaps %xmm4, %xmm13 > > > + mulsd %xmm4, %xmm7 > > > + addsd 4216+_vmldACosHATab(%rip), %xmm8 > > > + movsd %xmm7, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4200+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm4, %xmm1 > > > + mulsd %xmm9, %xmm11 > > > + addsd %xmm6, %xmm4 > > > + movsd %xmm1, -48(%rsp) > > > + movaps %xmm12, %xmm9 > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + movsd 4192+_vmldACosHATab(%rip), %xmm1 > > > + subsd %xmm2, %xmm0 > > > + mulsd %xmm1, %xmm3 > > > + mulsd %xmm1, %xmm10 > > > + mulsd %xmm4, %xmm8 > > > + addsd %xmm3, %xmm9 > > > + mulsd %xmm1, %xmm5 > > > + addsd %xmm10, %xmm11 > > > + movsd %xmm0, -40(%rsp) > > > + pxor %xmm1, %xmm1 > > > + movsd -40(%rsp), %xmm7 > > > + addsd %xmm11, %xmm8 > > > + subsd %xmm7, %xmm13 > > > + addsd %xmm5, %xmm8 > > > + movsd %xmm13, -48(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + movsd %xmm9, -40(%rsp) > > > + addsd %xmm2, %xmm6 > > > + movsd -40(%rsp), %xmm10 > > > + movsd %xmm3, -56(%rsp) > > > + subsd %xmm10, %xmm12 > > > + movsd 4208+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm12, %xmm3 > > > + mulsd %xmm4, %xmm0 > > > + mulsd %xmm4, %xmm6 > > > + movsd %xmm3, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movaps %xmm3, %xmm12 > > > + movsd -48(%rsp), %xmm7 > > > + addsd %xmm0, %xmm12 > > > + addsd %xmm7, %xmm8 > > > + movsd %xmm12, -40(%rsp) > > > + movsd -40(%rsp), %xmm12 > > > + subsd %xmm12, %xmm3 > > > + addsd %xmm3, %xmm0 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movsd -48(%rsp), %xmm0 > > > + cvtss2sd (%rdi), %xmm1 > > > + addsd %xmm8, %xmm0 > > > + comisd 4184+_vmldACosHATab(%rip), %xmm1 > > > + addsd %xmm0, %xmm6 > > > + jbe .LBL_2_7 > > > + movsd 4136+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm2, %xmm0 > > > + subsd %xmm3, %xmm0 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4144+_vmldACosHATab(%rip), %xmm0 > > > + subsd %xmm1, %xmm2 > > > + subsd %xmm6, %xmm0 > > > + subsd %xmm3, %xmm2 > > > + movsd %xmm2, -48(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd -48(%rsp), %xmm3 > > > + addsd %xmm3, %xmm0 > > > + jmp .LBL_2_8 > > > + > > > +.LBL_2_7: > > > + movsd 4136+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm3, %xmm0 > > > + addsd %xmm2, %xmm0 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + subsd %xmm1, %xmm2 > > > + addsd %xmm2, %xmm3 > > > + movsd %xmm3, -48(%rsp) > > > + movsd 4144+_vmldACosHATab(%rip), %xmm3 > > > + movsd -40(%rsp), %xmm1 > > > + addsd %xmm3, %xmm6 > > > + movsd -48(%rsp), %xmm0 > > > + addsd %xmm6, %xmm0 > > > + > > > +.LBL_2_8: > > > + addsd %xmm0, %xmm1 > > > + cvtsd2ss %xmm1, %xmm1 > > > + movss %xmm1, (%rsi) > > > + ret > > > + > > > +.LBL_2_9: > > > + movsd 4144+_vmldACosHATab(%rip), %xmm1 > > > + addsd %xmm0, %xmm12 > > > + movsd %xmm12, -40(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + mulsd -32(%rsp), %xmm0 > > > + movsd %xmm0, -56(%rsp) > > > + movb -49(%rsp), %dl > > > + movb 3(%rdi), %dil > > > + andb $127, %dl > > > + andb $-128, %dil > > > + orb %dil, %dl > > > + movb %dl, -49(%rsp) > > > + subsd -56(%rsp), %xmm1 > > > + addsd 4136+_vmldACosHATab(%rip), %xmm1 > > > + cvtsd2ss %xmm1, %xmm1 > > > + movss %xmm1, (%rsi) > > > + ret > > > + > > > +.LBL_2_10: > > > + movaps %xmm0, %xmm8 > > > + movzwl 4174+_vmldACosHATab(%rip), %r9d > > > + pxor %xmm13, %xmm13 > > > + andl $-32753, %r9d > > > + subsd %xmm12, %xmm8 > > > + subsd %xmm0, %xmm13 > > > + mulsd %xmm8, %xmm1 > > > + movsd %xmm1, -56(%rsp) > > > + movzwl -50(%rsp), %ecx > > > + andl $32752, %ecx > > > + shrl $4, %ecx > > > + addl $-1023, %ecx > > > + movl %ecx, %r8d > > > + movl %ecx, %edx > > > + negl %r8d > > > + addl $1023, %r8d > > > + andl $2047, %r8d > > > + shll $4, %r8d > > > + movsd %xmm0, -32(%rsp) > > > + orl %r8d, %r9d > > > + movw %r9w, -26(%rsp) > > > + andl $1, %edx > > > + movsd -32(%rsp), %xmm4 > > > + lea _vmldACosHATab(%rip), %r8 > > > + mulsd %xmm4, %xmm1 > > > + movl %edx, %r10d > > > + movaps %xmm1, %xmm15 > > > + movsd 4112+_vmldACosHATab(%rip), %xmm6 > > > + addsd %xmm1, %xmm15 > > > + jne .LBL_73 > > > + movaps %xmm1, %xmm15 > > > + > > > +.LBL_73: > > > + mulsd %xmm15, %xmm6 > > > + movaps %xmm15, %xmm7 > > > + movaps %xmm6, %xmm9 > > > + subl %edx, %ecx > > > + movsd 4120+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm15, %xmm9 > > > + addsd %xmm1, %xmm11 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -48(%rsp), %xmm10 > > > + movsd %xmm11, -24(%rsp) > > > + subsd %xmm10, %xmm6 > > > + movl -24(%rsp), %r11d > > > + movaps %xmm6, %xmm14 > > > + shll $8, %r10d > > > + andl $511, %r11d > > > + addl %r10d, %r11d > > > + subsd %xmm6, %xmm7 > > > + movsd (%r8,%r11,8), %xmm5 > > > + addsd %xmm7, %xmm14 > > > + mulsd %xmm5, %xmm6 > > > + movaps %xmm5, %xmm12 > > > + mulsd %xmm5, %xmm12 > > > + mulsd %xmm12, %xmm14 > > > + movsd 4512+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm13, %xmm14 > > > + mulsd %xmm14, %xmm4 > > > + shrl $1, %ecx > > > + addsd 4504+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + addl $1023, %ecx > > > + andl $2047, %ecx > > > + addsd 4496+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movzwl 4174+_vmldACosHATab(%rip), %r9d > > > + shll $4, %ecx > > > + andl $-32753, %r9d > > > + movsd %xmm0, -16(%rsp) > > > + orl %ecx, %r9d > > > + movw %r9w, -10(%rsp) > > > + movsd -16(%rsp), %xmm9 > > > + mulsd %xmm9, %xmm6 > > > + addsd 4488+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm3 > > > + mulsd %xmm6, %xmm3 > > > + addsd 4480+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movsd %xmm3, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4352+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm6, %xmm1 > > > + addsd 4472+_vmldACosHATab(%rip), %xmm4 > > > + addsd 4360+_vmldACosHATab(%rip), %xmm11 > > > + mulsd %xmm14, %xmm4 > > > + mulsd %xmm8, %xmm11 > > > + addsd 4464+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + mulsd %xmm15, %xmm4 > > > + movsd %xmm1, -48(%rsp) > > > + addsd %xmm4, %xmm7 > > > + mulsd %xmm5, %xmm7 > > > + movsd 4456+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm9, %xmm7 > > > + addsd 4448+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm2 > > > + movsd -48(%rsp), %xmm0 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm4 > > > + subsd %xmm0, %xmm2 > > > + mulsd %xmm8, %xmm4 > > > + addsd 4440+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movaps %xmm8, %xmm0 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm14 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm2 > > > + subsd %xmm14, %xmm6 > > > + addsd 4432+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm6, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + movsd -48(%rsp), %xmm10 > > > + movsd %xmm4, -40(%rsp) > > > + addsd %xmm10, %xmm7 > > > + addsd 4424+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm3 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm12 > > > + subsd %xmm8, %xmm3 > > > + addsd 4416+_vmldACosHATab(%rip), %xmm5 > > > + addsd 4344+_vmldACosHATab(%rip), %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + addsd %xmm11, %xmm12 > > > + addsd 4408+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm3, -48(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd -48(%rsp), %xmm15 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm13 > > > + subsd %xmm15, %xmm1 > > > + addsd 4400+_vmldACosHATab(%rip), %xmm5 > > > + addsd 4328+_vmldACosHATab(%rip), %xmm13 > > > + mulsd %xmm8, %xmm5 > > > + addsd %xmm12, %xmm13 > > > + addsd 4392+_vmldACosHATab(%rip), %xmm5 > > > + movsd %xmm1, -40(%rsp) > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm4 > > > + subsd %xmm4, %xmm0 > > > + addsd 4384+_vmldACosHATab(%rip), %xmm5 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm4 > > > + movaps %xmm4, %xmm14 > > > + mulsd %xmm4, %xmm14 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm14, %xmm2 > > > + addsd 4376+_vmldACosHATab(%rip), %xmm5 > > > + movsd -48(%rsp), %xmm3 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm9 > > > + mulsd %xmm8, %xmm5 > > > + subsd %xmm14, %xmm9 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -40(%rsp), %xmm11 > > > + movsd -48(%rsp), %xmm10 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm0 > > > + subsd %xmm10, %xmm11 > > > + mulsd %xmm4, %xmm0 > > > + addsd 4368+_vmldACosHATab(%rip), %xmm5 > > > + addsd %xmm8, %xmm4 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm3, %xmm4 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm11, -40(%rsp) > > > + movaps %xmm0, %xmm1 > > > + movsd -40(%rsp), %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + subsd %xmm12, %xmm14 > > > + movsd %xmm14, -48(%rsp) > > > + addsd %xmm5, %xmm13 > > > + movsd -40(%rsp), %xmm9 > > > + mulsd 4352+_vmldACosHATab(%rip), %xmm9 > > > + mulsd %xmm13, %xmm7 > > > + addsd %xmm9, %xmm1 > > > + movsd -48(%rsp), %xmm2 > > > + movsd %xmm1, -40(%rsp) > > > + addsd %xmm2, %xmm4 > > > + movsd -40(%rsp), %xmm13 > > > + movsd %xmm9, -24(%rsp) > > > + subsd %xmm13, %xmm0 > > > + mulsd 4352+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm0, %xmm9 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -40(%rsp), %xmm12 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm10 > > > + movsd -48(%rsp), %xmm1 > > > + addsd %xmm12, %xmm10 > > > + movsd %xmm10, -40(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm11 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm9 > > > + subsd %xmm15, %xmm11 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm2 > > > + addsd %xmm11, %xmm12 > > > + mulsd %xmm3, %xmm2 > > > + movsd %xmm12, -48(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + mulsd %xmm15, %xmm9 > > > + movsd -48(%rsp), %xmm0 > > > + movsd %xmm9, -40(%rsp) > > > + movsd -40(%rsp), %xmm10 > > > + movsd 4360+_vmldACosHATab(%rip), %xmm3 > > > + subsd %xmm15, %xmm10 > > > + mulsd %xmm8, %xmm3 > > > + movsd %xmm10, -48(%rsp) > > > + movsd -40(%rsp), %xmm11 > > > + movsd -48(%rsp), %xmm13 > > > + subsd %xmm13, %xmm11 > > > + addsd 4344+_vmldACosHATab(%rip), %xmm3 > > > + movsd %xmm11, -40(%rsp) > > > + movsd -40(%rsp), %xmm14 > > > + mulsd %xmm8, %xmm3 > > > + subsd %xmm14, %xmm15 > > > + movsd %xmm15, -48(%rsp) > > > + movsd -40(%rsp), %xmm10 > > > + movsd -48(%rsp), %xmm9 > > > + addsd %xmm9, %xmm4 > > > + addsd 4328+_vmldACosHATab(%rip), %xmm3 > > > + addsd %xmm2, %xmm4 > > > + addsd %xmm5, %xmm3 > > > + addsd %xmm1, %xmm4 > > > + addsd %xmm0, %xmm4 > > > + addsd %xmm3, %xmm4 > > > + mulsd %xmm6, %xmm4 > > > + mulsd %xmm10, %xmm6 > > > + addsd %xmm7, %xmm4 > > > + pxor %xmm7, %xmm7 > > > + cvtss2sd (%rdi), %xmm7 > > > + comisd 4184+_vmldACosHATab(%rip), %xmm7 > > > + ja .LBL_2_13 > > > + movsd 4152+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm2, %xmm0 > > > + movsd 4160+_vmldACosHATab(%rip), %xmm5 > > > + subsd %xmm6, %xmm0 > > > + subsd %xmm4, %xmm5 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd %xmm6, -56(%rsp) > > > + subsd %xmm1, %xmm2 > > > + subsd %xmm6, %xmm2 > > > + movsd %xmm2, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + movsd -48(%rsp), %xmm3 > > > + movaps %xmm3, %xmm4 > > > + addsd %xmm5, %xmm4 > > > + > > > +.LBL_2_13: > > > + addsd %xmm4, %xmm6 > > > + cvtsd2ss %xmm6, %xmm6 > > > + movss %xmm6, (%rsi) > > > + ret > > > + > > > +.LBL_2_14: > > > + ucomisd %xmm0, %xmm1 > > > + jp .LBL_2_15 > > > + je .LBL_2_19 > > > + > > > +.LBL_2_15: > > > + xorps .FLT_199(%rip), %xmm0 > > > + ucomisd %xmm0, %xmm1 > > > + jp .LBL_2_16 > > > + je .LBL_2_18 > > > + > > > +.LBL_2_16: > > > + movl $1, %eax > > > + pxor %xmm1, %xmm1 > > > + pxor %xmm0, %xmm0 > > > + divss %xmm0, %xmm1 > > > + movss %xmm1, (%rsi) > > > + ret > > > + > > > +.LBL_2_18: > > > + movsd 4152+_vmldACosHATab(%rip), %xmm0 > > > + addsd 4160+_vmldACosHATab(%rip), %xmm0 > > > + cvtsd2ss %xmm0, %xmm0 > > > + movss %xmm0, (%rsi) > > > + ret > > > + > > > +.LBL_2_19: > > > + movsd 4184+_vmldACosHATab(%rip), %xmm0 > > > + cvtsd2ss %xmm0, %xmm0 > > > + movss %xmm0, (%rsi) > > > + ret > > > + > > > +.LBL_2_20: > > > + divss %xmm1, %xmm1 > > > + testl $8388607, (%rdi) > > > + movss %xmm1, (%rsi) > > > + sete %al > > > + ret > > > + > > > + cfi_endproc > > > + > > > + .type __svml_sacos_cout_rare_internal,@function > > > + .size __svml_sacos_cout_rare_internal,.-__svml_sacos_cout_rare_internal > > > + > > > + .section .rodata, "a" > > > + .align 64 > > > + > > > +__svml_sacos_data_internal: > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .type __svml_sacos_data_internal,@object > > > + .size __svml_sacos_data_internal,1216 > > > + .align 32 > > > + > > > +_vmldACosHATab: > > > + .long 0 > > > + .long 1072693248 > > > + .long 0 > > > + .long 1072689152 > > > + .long 0 > > > + .long 1072685056 > > > + .long 0 > > > + .long 1072680960 > > > + .long 0 > > > + .long 1072676864 > > > + .long 0 > > > + .long 1072672768 > > > + .long 0 > > > + .long 1072668672 > > > + .long 0 > > > + .long 1072665600 > > > + .long 0 > > > + .long 1072661504 > > > + .long 0 > > > + .long 1072657408 > > > + .long 0 > > > + .long 1072653312 > > > + .long 0 > > > + .long 1072649216 > > > + .long 0 > > > + .long 1072646144 > > > + .long 0 > > > + .long 1072642048 > > > + .long 0 > > > + .long 1072637952 > > > + .long 0 > > > + .long 1072634880 > > > + .long 0 > > > + .long 1072630784 > > > + .long 0 > > > + .long 1072626688 > > > + .long 0 > > > + .long 1072623616 > > > + .long 0 > > > + .long 1072619520 > > > + .long 0 > > > + .long 1072615424 > > > + .long 0 > > > + .long 1072612352 > > > + .long 0 > > > + .long 1072608256 > > > + .long 0 > > > + .long 1072605184 > > > + .long 0 > > > + .long 1072601088 > > > + .long 0 > > > + .long 1072598016 > > > + .long 0 > > > + .long 1072593920 > > > + .long 0 > > > + .long 1072590848 > > > + .long 0 > > > + .long 1072586752 > > > + .long 0 > > > + .long 1072583680 > > > + .long 0 > > > + .long 1072580608 > > > + .long 0 > > > + .long 1072576512 > > > + .long 0 > > > + .long 1072573440 > > > + .long 0 > > > + .long 1072570368 > > > + .long 0 > > > + .long 1072566272 > > > + .long 0 > > > + .long 1072563200 > > > + .long 0 > > > + .long 1072560128 > > > + .long 0 > > > + .long 1072556032 > > > + .long 0 > > > + .long 1072552960 > > > + .long 0 > > > + .long 1072549888 > > > + .long 0 > > > + .long 1072546816 > > > + .long 0 > > > + .long 1072542720 > > > + .long 0 > > > + .long 1072539648 > > > + .long 0 > > > + .long 1072536576 > > > + .long 0 > > > + .long 1072533504 > > > + .long 0 > > > + .long 1072530432 > > > + .long 0 > > > + .long 1072527360 > > > + .long 0 > > > + .long 1072523264 > > > + .long 0 > > > + .long 1072520192 > > > + .long 0 > > > + .long 1072517120 > > > + .long 0 > > > + .long 1072514048 > > > + .long 0 > > > + .long 1072510976 > > > + .long 0 > > > + .long 1072507904 > > > + .long 0 > > > + .long 1072504832 > > > + .long 0 > > > + .long 1072501760 > > > + .long 0 > > > + .long 1072498688 > > > + .long 0 > > > + .long 1072495616 > > > + .long 0 > > > + .long 1072492544 > > > + .long 0 > > > + .long 1072489472 > > > + .long 0 > > > + .long 1072486400 > > > + .long 0 > > > + .long 1072483328 > > > + .long 0 > > > + .long 1072480256 > > > + .long 0 > > > + .long 1072478208 > > > + .long 0 > > > + .long 1072475136 > > > + .long 0 > > > + .long 1072472064 > > > + .long 0 > > > + .long 1072468992 > > > + .long 0 > > > + .long 1072465920 > > > + .long 0 > > > + .long 1072462848 > > > + .long 0 > > > + .long 1072459776 > > > + .long 0 > > > + .long 1072457728 > > > + .long 0 > > > + .long 1072454656 > > > + .long 0 > > > + .long 1072451584 > > > + .long 0 > > > + .long 1072448512 > > > + .long 0 > > > + .long 1072446464 > > > + .long 0 > > > + .long 1072443392 > > > + .long 0 > > > + .long 1072440320 > > > + .long 0 > > > + .long 1072437248 > > > + .long 0 > > > + .long 1072435200 > > > + .long 0 > > > + .long 1072432128 > > > + .long 0 > > > + .long 1072429056 > > > + .long 0 > > > + .long 1072427008 > > > + .long 0 > > > + .long 1072423936 > > > + .long 0 > > > + .long 1072420864 > > > + .long 0 > > > + .long 1072418816 > > > + .long 0 > > > + .long 1072415744 > > > + .long 0 > > > + .long 1072412672 > > > + .long 0 > > > + .long 1072410624 > > > + .long 0 > > > + .long 1072407552 > > > + .long 0 > > > + .long 1072405504 > > > + .long 0 > > > + .long 1072402432 > > > + .long 0 > > > + .long 1072400384 > > > + .long 0 > > > + .long 1072397312 > > > + .long 0 > > > + .long 1072395264 > > > + .long 0 > > > + .long 1072392192 > > > + .long 0 > > > + .long 1072390144 > > > + .long 0 > > > + .long 1072387072 > > > + .long 0 > > > + .long 1072385024 > > > + .long 0 > > > + .long 1072381952 > > > + .long 0 > > > + .long 1072379904 > > > + .long 0 > > > + .long 1072376832 > > > + .long 0 > > > + .long 1072374784 > > > + .long 0 > > > + .long 1072371712 > > > + .long 0 > > > + .long 1072369664 > > > + .long 0 > > > + .long 1072366592 > > > + .long 0 > > > + .long 1072364544 > > > + .long 0 > > > + .long 1072362496 > > > + .long 0 > > > + .long 1072359424 > > > + .long 0 > > > + .long 1072357376 > > > + .long 0 > > > + .long 1072355328 > > > + .long 0 > > > + .long 1072352256 > > > + .long 0 > > > + .long 1072350208 > > > + .long 0 > > > + .long 1072347136 > > > + .long 0 > > > + .long 1072345088 > > > + .long 0 > > > + .long 1072343040 > > > + .long 0 > > > + .long 1072340992 > > > + .long 0 > > > + .long 1072337920 > > > + .long 0 > > > + .long 1072335872 > > > + .long 0 > > > + .long 1072333824 > > > + .long 0 > > > + .long 1072330752 > > > + .long 0 > > > + .long 1072328704 > > > + .long 0 > > > + .long 1072326656 > > > + .long 0 > > > + .long 1072324608 > > > + .long 0 > > > + .long 1072321536 > > > + .long 0 > > > + .long 1072319488 > > > + .long 0 > > > + .long 1072317440 > > > + .long 0 > > > + .long 1072315392 > > > + .long 0 > > > + .long 1072313344 > > > + .long 0 > > > + .long 1072310272 > > > + .long 0 > > > + .long 1072308224 > > > + .long 0 > > > + .long 1072306176 > > > + .long 0 > > > + .long 1072304128 > > > + .long 0 > > > + .long 1072302080 > > > + .long 0 > > > + .long 1072300032 > > > + .long 0 > > > + .long 1072296960 > > > + .long 0 > > > + .long 1072294912 > > > + .long 0 > > > + .long 1072292864 > > > + .long 0 > > > + .long 1072290816 > > > + .long 0 > > > + .long 1072288768 > > > + .long 0 > > > + .long 1072286720 > > > + .long 0 > > > + .long 1072284672 > > > + .long 0 > > > + .long 1072282624 > > > + .long 0 > > > + .long 1072280576 > > > + .long 0 > > > + .long 1072278528 > > > + .long 0 > > > + .long 1072275456 > > > + .long 0 > > > + .long 1072273408 > > > + .long 0 > > > + .long 1072271360 > > > + .long 0 > > > + .long 1072269312 > > > + .long 0 > > > + .long 1072267264 > > > + .long 0 > > > + .long 1072265216 > > > + .long 0 > > > + .long 1072263168 > > > + .long 0 > > > + .long 1072261120 > > > + .long 0 > > > + .long 1072259072 > > > + .long 0 > > > + .long 1072257024 > > > + .long 0 > > > + .long 1072254976 > > > + .long 0 > > > + .long 1072252928 > > > + .long 0 > > > + .long 1072250880 > > > + .long 0 > > > + .long 1072248832 > > > + .long 0 > > > + .long 1072246784 > > > + .long 0 > > > + .long 1072244736 > > > + .long 0 > > > + .long 1072243712 > > > + .long 0 > > > + .long 1072241664 > > > + .long 0 > > > + .long 1072239616 > > > + .long 0 > > > + .long 1072237568 > > > + .long 0 > > > + .long 1072235520 > > > + .long 0 > > > + .long 1072233472 > > > + .long 0 > > > + .long 1072231424 > > > + .long 0 > > > + .long 1072229376 > > > + .long 0 > > > + .long 1072227328 > > > + .long 0 > > > + .long 1072225280 > > > + .long 0 > > > + .long 1072223232 > > > + .long 0 > > > + .long 1072222208 > > > + .long 0 > > > + .long 1072220160 > > > + .long 0 > > > + .long 1072218112 > > > + .long 0 > > > + .long 1072216064 > > > + .long 0 > > > + .long 1072214016 > > > + .long 0 > > > + .long 1072211968 > > > + .long 0 > > > + .long 1072210944 > > > + .long 0 > > > + .long 1072208896 > > > + .long 0 > > > + .long 1072206848 > > > + .long 0 > > > + .long 1072204800 > > > + .long 0 > > > + .long 1072202752 > > > + .long 0 > > > + .long 1072201728 > > > + .long 0 > > > + .long 1072199680 > > > + .long 0 > > > + .long 1072197632 > > > + .long 0 > > > + .long 1072195584 > > > + .long 0 > > > + .long 1072193536 > > > + .long 0 > > > + .long 1072192512 > > > + .long 0 > > > + .long 1072190464 > > > + .long 0 > > > + .long 1072188416 > > > + .long 0 > > > + .long 1072186368 > > > + .long 0 > > > + .long 1072185344 > > > + .long 0 > > > + .long 1072183296 > > > + .long 0 > > > + .long 1072181248 > > > + .long 0 > > > + .long 1072179200 > > > + .long 0 > > > + .long 1072178176 > > > + .long 0 > > > + .long 1072176128 > > > + .long 0 > > > + .long 1072174080 > > > + .long 0 > > > + .long 1072173056 > > > + .long 0 > > > + .long 1072171008 > > > + .long 0 > > > + .long 1072168960 > > > + .long 0 > > > + .long 1072167936 > > > + .long 0 > > > + .long 1072165888 > > > + .long 0 > > > + .long 1072163840 > > > + .long 0 > > > + .long 1072161792 > > > + .long 0 > > > + .long 1072160768 > > > + .long 0 > > > + .long 1072158720 > > > + .long 0 > > > + .long 1072157696 > > > + .long 0 > > > + .long 1072155648 > > > + .long 0 > > > + .long 1072153600 > > > + .long 0 > > > + .long 1072152576 > > > + .long 0 > > > + .long 1072150528 > > > + .long 0 > > > + .long 1072148480 > > > + .long 0 > > > + .long 1072147456 > > > + .long 0 > > > + .long 1072145408 > > > + .long 0 > > > + .long 1072143360 > > > + .long 0 > > > + .long 1072142336 > > > + .long 0 > > > + .long 1072140288 > > > + .long 0 > > > + .long 1072139264 > > > + .long 0 > > > + .long 1072137216 > > > + .long 0 > > > + .long 1072135168 > > > + .long 0 > > > + .long 1072134144 > > > + .long 0 > > > + .long 1072132096 > > > + .long 0 > > > + .long 1072131072 > > > + .long 0 > > > + .long 1072129024 > > > + .long 0 > > > + .long 1072128000 > > > + .long 0 > > > + .long 1072125952 > > > + .long 0 > > > + .long 1072124928 > > > + .long 0 > > > + .long 1072122880 > > > + .long 0 > > > + .long 1072120832 > > > + .long 0 > > > + .long 1072119808 > > > + .long 0 > > > + .long 1072117760 > > > + .long 0 > > > + .long 1072116736 > > > + .long 0 > > > + .long 1072114688 > > > + .long 0 > > > + .long 1072113664 > > > + .long 0 > > > + .long 1072111616 > > > + .long 0 > > > + .long 1072110592 > > > + .long 0 > > > + .long 1072108544 > > > + .long 0 > > > + .long 1072107520 > > > + .long 0 > > > + .long 1072105472 > > > + .long 0 > > > + .long 1072104448 > > > + .long 0 > > > + .long 1072102400 > > > + .long 0 > > > + .long 1072101376 > > > + .long 0 > > > + .long 1072099328 > > > + .long 0 > > > + .long 1072098304 > > > + .long 0 > > > + .long 1072096256 > > > + .long 0 > > > + .long 1072095232 > > > + .long 0 > > > + .long 1072094208 > > > + .long 0 > > > + .long 1072092160 > > > + .long 0 > > > + .long 1072091136 > > > + .long 0 > > > + .long 1072089088 > > > + .long 0 > > > + .long 1072088064 > > > + .long 0 > > > + .long 1072086016 > > > + .long 0 > > > + .long 1072084992 > > > + .long 0 > > > + .long 1072082944 > > > + .long 0 > > > + .long 1072081920 > > > + .long 0 > > > + .long 1072080896 > > > + .long 0 > > > + .long 1072078848 > > > + .long 0 > > > + .long 1072075776 > > > + .long 0 > > > + .long 1072073728 > > > + .long 0 > > > + .long 1072070656 > > > + .long 0 > > > + .long 1072067584 > > > + .long 0 > > > + .long 1072064512 > > > + .long 0 > > > + .long 1072061440 > > > + .long 0 > > > + .long 1072059392 > > > + .long 0 > > > + .long 1072056320 > > > + .long 0 > > > + .long 1072053248 > > > + .long 0 > > > + .long 1072051200 > > > + .long 0 > > > + .long 1072048128 > > > + .long 0 > > > + .long 1072045056 > > > + .long 0 > > > + .long 1072043008 > > > + .long 0 > > > + .long 1072039936 > > > + .long 0 > > > + .long 1072037888 > > > + .long 0 > > > + .long 1072034816 > > > + .long 0 > > > + .long 1072031744 > > > + .long 0 > > > + .long 1072029696 > > > + .long 0 > > > + .long 1072026624 > > > + .long 0 > > > + .long 1072024576 > > > + .long 0 > > > + .long 1072021504 > > > + .long 0 > > > + .long 1072019456 > > > + .long 0 > > > + .long 1072016384 > > > + .long 0 > > > + .long 1072014336 > > > + .long 0 > > > + .long 1072011264 > > > + .long 0 > > > + .long 1072009216 > > > + .long 0 > > > + .long 1072006144 > > > + .long 0 > > > + .long 1072004096 > > > + .long 0 > > > + .long 1072002048 > > > + .long 0 > > > + .long 1071998976 > > > + .long 0 > > > + .long 1071996928 > > > + .long 0 > > > + .long 1071993856 > > > + .long 0 > > > + .long 1071991808 > > > + .long 0 > > > + .long 1071989760 > > > + .long 0 > > > + .long 1071986688 > > > + .long 0 > > > + .long 1071984640 > > > + .long 0 > > > + .long 1071982592 > > > + .long 0 > > > + .long 1071979520 > > > + .long 0 > > > + .long 1071977472 > > > + .long 0 > > > + .long 1071975424 > > > + .long 0 > > > + .long 1071972352 > > > + .long 0 > > > + .long 1071970304 > > > + .long 0 > > > + .long 1071968256 > > > + .long 0 > > > + .long 1071966208 > > > + .long 0 > > > + .long 1071964160 > > > + .long 0 > > > + .long 1071961088 > > > + .long 0 > > > + .long 1071959040 > > > + .long 0 > > > + .long 1071956992 > > > + .long 0 > > > + .long 1071954944 > > > + .long 0 > > > + .long 1071952896 > > > + .long 0 > > > + .long 1071949824 > > > + .long 0 > > > + .long 1071947776 > > > + .long 0 > > > + .long 1071945728 > > > + .long 0 > > > + .long 1071943680 > > > + .long 0 > > > + .long 1071941632 > > > + .long 0 > > > + .long 1071939584 > > > + .long 0 > > > + .long 1071937536 > > > + .long 0 > > > + .long 1071935488 > > > + .long 0 > > > + .long 1071933440 > > > + .long 0 > > > + .long 1071930368 > > > + .long 0 > > > + .long 1071928320 > > > + .long 0 > > > + .long 1071926272 > > > + .long 0 > > > + .long 1071924224 > > > + .long 0 > > > + .long 1071922176 > > > + .long 0 > > > + .long 1071920128 > > > + .long 0 > > > + .long 1071918080 > > > + .long 0 > > > + .long 1071916032 > > > + .long 0 > > > + .long 1071913984 > > > + .long 0 > > > + .long 1071911936 > > > + .long 0 > > > + .long 1071909888 > > > + .long 0 > > > + .long 1071907840 > > > + .long 0 > > > + .long 1071905792 > > > + .long 0 > > > + .long 1071903744 > > > + .long 0 > > > + .long 1071901696 > > > + .long 0 > > > + .long 1071900672 > > > + .long 0 > > > + .long 1071898624 > > > + .long 0 > > > + .long 1071896576 > > > + .long 0 > > > + .long 1071894528 > > > + .long 0 > > > + .long 1071892480 > > > + .long 0 > > > + .long 1071890432 > > > + .long 0 > > > + .long 1071888384 > > > + .long 0 > > > + .long 1071886336 > > > + .long 0 > > > + .long 1071884288 > > > + .long 0 > > > + .long 1071883264 > > > + .long 0 > > > + .long 1071881216 > > > + .long 0 > > > + .long 1071879168 > > > + .long 0 > > > + .long 1071877120 > > > + .long 0 > > > + .long 1071875072 > > > + .long 0 > > > + .long 1071873024 > > > + .long 0 > > > + .long 1071872000 > > > + .long 0 > > > + .long 1071869952 > > > + .long 0 > > > + .long 1071867904 > > > + .long 0 > > > + .long 1071865856 > > > + .long 0 > > > + .long 1071864832 > > > + .long 0 > > > + .long 1071862784 > > > + .long 0 > > > + .long 1071860736 > > > + .long 0 > > > + .long 1071858688 > > > + .long 0 > > > + .long 1071856640 > > > + .long 0 > > > + .long 1071855616 > > > + .long 0 > > > + .long 1071853568 > > > + .long 0 > > > + .long 1071851520 > > > + .long 0 > > > + .long 1071850496 > > > + .long 0 > > > + .long 1071848448 > > > + .long 0 > > > + .long 1071846400 > > > + .long 0 > > > + .long 1071844352 > > > + .long 0 > > > + .long 1071843328 > > > + .long 0 > > > + .long 1071841280 > > > + .long 0 > > > + .long 1071839232 > > > + .long 0 > > > + .long 1071838208 > > > + .long 0 > > > + .long 1071836160 > > > + .long 0 > > > + .long 1071834112 > > > + .long 0 > > > + .long 1071833088 > > > + .long 0 > > > + .long 1071831040 > > > + .long 0 > > > + .long 1071830016 > > > + .long 0 > > > + .long 1071827968 > > > + .long 0 > > > + .long 1071825920 > > > + .long 0 > > > + .long 1071824896 > > > + .long 0 > > > + .long 1071822848 > > > + .long 0 > > > + .long 1071821824 > > > + .long 0 > > > + .long 1071819776 > > > + .long 0 > > > + .long 1071817728 > > > + .long 0 > > > + .long 1071816704 > > > + .long 0 > > > + .long 1071814656 > > > + .long 0 > > > + .long 1071813632 > > > + .long 0 > > > + .long 1071811584 > > > + .long 0 > > > + .long 1071810560 > > > + .long 0 > > > + .long 1071808512 > > > + .long 0 > > > + .long 1071806464 > > > + .long 0 > > > + .long 1071805440 > > > + .long 0 > > > + .long 1071803392 > > > + .long 0 > > > + .long 1071802368 > > > + .long 0 > > > + .long 1071800320 > > > + .long 0 > > > + .long 1071799296 > > > + .long 0 > > > + .long 1071797248 > > > + .long 0 > > > + .long 1071796224 > > > + .long 0 > > > + .long 1071794176 > > > + .long 0 > > > + .long 1071793152 > > > + .long 0 > > > + .long 1071791104 > > > + .long 0 > > > + .long 1071790080 > > > + .long 0 > > > + .long 1071788032 > > > + .long 0 > > > + .long 1071787008 > > > + .long 0 > > > + .long 1071784960 > > > + .long 0 > > > + .long 1071783936 > > > + .long 0 > > > + .long 1071782912 > > > + .long 0 > > > + .long 1071780864 > > > + .long 0 > > > + .long 1071779840 > > > + .long 0 > > > + .long 1071777792 > > > + .long 0 > > > + .long 1071776768 > > > + .long 0 > > > + .long 1071774720 > > > + .long 0 > > > + .long 1071773696 > > > + .long 0 > > > + .long 1071772672 > > > + .long 0 > > > + .long 1071770624 > > > + .long 0 > > > + .long 1071769600 > > > + .long 0 > > > + .long 1071767552 > > > + .long 0 > > > + .long 1071766528 > > > + .long 0 > > > + .long 1071765504 > > > + .long 0 > > > + .long 1071763456 > > > + .long 0 > > > + .long 1071762432 > > > + .long 0 > > > + .long 1071760384 > > > + .long 0 > > > + .long 1071759360 > > > + .long 0 > > > + .long 1071758336 > > > + .long 0 > > > + .long 1071756288 > > > + .long 0 > > > + .long 1071755264 > > > + .long 0 > > > + .long 1071754240 > > > + .long 0 > > > + .long 1071752192 > > > + .long 0 > > > + .long 1071751168 > > > + .long 0 > > > + .long 1071750144 > > > + .long 0 > > > + .long 1071748096 > > > + .long 0 > > > + .long 1071747072 > > > + .long 0 > > > + .long 1071746048 > > > + .long 0 > > > + .long 1071744000 > > > + .long 0 > > > + .long 1071742976 > > > + .long 0 > > > + .long 1071741952 > > > + .long 0 > > > + .long 1071739904 > > > + .long 0 > > > + .long 1071738880 > > > + .long 0 > > > + .long 1071737856 > > > + .long 0 > > > + .long 1071736832 > > > + .long 0 > > > + .long 1071734784 > > > + .long 0 > > > + .long 1071733760 > > > + .long 0 > > > + .long 1071732736 > > > + .long 0 > > > + .long 1071730688 > > > + .long 0 > > > + .long 1071729664 > > > + .long 0 > > > + .long 1071728640 > > > + .long 0 > > > + .long 1071727616 > > > + .long 0 > > > + .long 1071725568 > > > + .long 0 > > > + .long 1071724544 > > > + .long 0 > > > + .long 1071723520 > > > + .long 0 > > > + .long 1071722496 > > > + .long 0 > > > + .long 1071720448 > > > + .long 0 > > > + .long 1071719424 > > > + .long 0 > > > + .long 1071718400 > > > + .long 0 > > > + .long 1071717376 > > > + .long 0 > > > + .long 1071715328 > > > + .long 0 > > > + .long 1071714304 > > > + .long 0 > > > + .long 1071713280 > > > + .long 0 > > > + .long 1071712256 > > > + .long 0 > > > + .long 1071711232 > > > + .long 0 > > > + .long 1071709184 > > > + .long 0 > > > + .long 1071708160 > > > + .long 0 > > > + .long 1071707136 > > > + .long 0 > > > + .long 1071706112 > > > + .long 0 > > > + .long 1071705088 > > > + .long 0 > > > + .long 1071704064 > > > + .long 0 > > > + .long 1071702016 > > > + .long 0 > > > + .long 1071700992 > > > + .long 0 > > > + .long 1071699968 > > > + .long 0 > > > + .long 1071698944 > > > + .long 0 > > > + .long 1071697920 > > > + .long 0 > > > + .long 1071696896 > > > + .long 0 > > > + .long 1071694848 > > > + .long 0 > > > + .long 1071693824 > > > + .long 0 > > > + .long 1071692800 > > > + .long 0 > > > + .long 1071691776 > > > + .long 0 > > > + .long 1071690752 > > > + .long 0 > > > + .long 1071689728 > > > + .long 0 > > > + .long 1071688704 > > > + .long 0 > > > + .long 1071686656 > > > + .long 0 > > > + .long 1071685632 > > > + .long 0 > > > + .long 1071684608 > > > + .long 0 > > > + .long 1071683584 > > > + .long 0 > > > + .long 1071682560 > > > + .long 0 > > > + .long 1071681536 > > > + .long 0 > > > + .long 1071680512 > > > + .long 0 > > > + .long 1071679488 > > > + .long 0 > > > + .long 1071677440 > > > + .long 0 > > > + .long 1071676416 > > > + .long 0 > > > + .long 1071675392 > > > + .long 0 > > > + .long 1071674368 > > > + .long 0 > > > + .long 1071673344 > > > + .long 0 > > > + .long 1071672320 > > > + .long 0 > > > + .long 1071671296 > > > + .long 0 > > > + .long 1071670272 > > > + .long 0 > > > + .long 1071669248 > > > + .long 0 > > > + .long 1071668224 > > > + .long 0 > > > + .long 1071667200 > > > + .long 0 > > > + .long 1071666176 > > > + .long 0 > > > + .long 1071665152 > > > + .long 0 > > > + .long 1071663104 > > > + .long 0 > > > + .long 1071662080 > > > + .long 0 > > > + .long 1071661056 > > > + .long 0 > > > + .long 1071660032 > > > + .long 0 > > > + .long 1071659008 > > > + .long 0 > > > + .long 1071657984 > > > + .long 0 > > > + .long 1071656960 > > > + .long 0 > > > + .long 1071655936 > > > + .long 0 > > > + .long 1071654912 > > > + .long 0 > > > + .long 1071653888 > > > + .long 0 > > > + .long 1071652864 > > > + .long 0 > > > + .long 1071651840 > > > + .long 0 > > > + .long 1071650816 > > > + .long 0 > > > + .long 1071649792 > > > + .long 0 > > > + .long 1071648768 > > > + .long 0 > > > + .long 1071647744 > > > + .long 0 > > > + .long 1071646720 > > > + .long 0 > > > + .long 1071645696 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1101004800 > > > + .long 1073741824 > > > + .long 1095761920 > > > + .long 256 > > > + .long 1118830592 > > > + .long 0 > > > + .long 1017118720 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 0 > > > + .long 1072693248 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 0 > > > + .long 1476395008 > > > + .long 1069897045 > > > + .long 1768958041 > > > + .long 3189069141 > > > + .long 805306368 > > > + .long 1068708659 > > > + .long 3580333578 > > > + .long 1040816593 > > > + .long 3067382784 > > > + .long 1067899757 > > > + .long 3397590151 > > > + .long 1067392113 > > > + .long 2939529726 > > > + .long 1066854585 > > > + .long 1423429166 > > > + .long 1066517752 > > > + .long 1775218934 > > > + .long 1066178574 > > > + .long 1185392460 > > > + .long 1065859647 > > > + .long 289998670 > > > + .long 1065577550 > > > + .long 3179807072 > > > + .long 1065648121 > > > + .long 3781007284 > > > + .long 1061576176 > > > + .long 2482106687 > > > + .long 1067019199 > > > + .long 763519713 > > > + .long 3214591591 > > > + .long 3695107454 > > > + .long 1067530646 > > > + .long 0 > > > + .long 1073741824 > > > + .long 1124791109 > > > + .long 1006764147 > > > + .long 1476395008 > > > + .long 1069897045 > > > + .long 1953913876 > > > + .long 3189069141 > > > + .long 805306368 > > > + .long 1067660083 > > > + .long 165110192 > > > + .long 1039768033 > > > + .long 3067304082 > > > + .long 1065802605 > > > + .long 3404727379 > > > + .long 1064246385 > > > + .long 2737480376 > > > + .long 1062660281 > > > + .long 933797922 > > > + .long 1061274873 > > > + .long 1475716730 > > > + .long 1059887095 > > > + .long 1511619763 > > > + .long 1058519827 > > > + .long 556024211 > > > + .long 1057187555 > > > + .long 3482101045 > > > + .long 1056217350 > > > + .long 1174622859 > > > + .long 1050762633 > > > + .long 899668651 > > > + .long 1055506366 > > > + .long 1081094694 > > > + .long 3202035365 > > > + .long 2559814773 > > > + .long 1053906576 > > > + .long 0 > > > + .long 3219128320 > > > + .long 0 > > > + .long 1071120384 > > > + .long 0 > > > + .long 3218341888 > > > + .long 0 > > > + .long 1070694400 > > > + .long 0 > > > + .long 3218046976 > > > + .long 0 > > > + .long 1070391296 > > > + .long 0 > > > + .long 3217739776 > > > + .type _vmldACosHATab,@object > > > + .size _vmldACosHATab,4520 > > > + .space 88, 0x00 > > > + .align 16 > > > + > > > +.FLT_199: > > > + .long 0x00000000,0x80000000,0x00000000,0x00000000 > > > + .type .FLT_199,@object > > > + .size .FLT_199,16 > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core-sse.S b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core-sse.S > > > new file mode 100644 > > > index 0000000000..583ef54fee > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core-sse.S > > > @@ -0,0 +1,20 @@ > > > +/* SSE version of vectorized acosf, vector length is 8. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#define _ZGVdN8v_acosf _ZGVdN8v_acosf_sse_wrapper > > > +#include "../svml_s_acosf8_core.S" > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core.c b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core.c > > > new file mode 100644 > > > index 0000000000..dd360a9479 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core.c > > > @@ -0,0 +1,28 @@ > > > +/* Multiple versions of vectorized acosf, vector length is 8. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#define SYMBOL_NAME _ZGVdN8v_acosf > > > +#include "ifunc-mathvec-avx2.h" > > > + > > > +libc_ifunc_redirected (REDIRECT_NAME, SYMBOL_NAME, IFUNC_SELECTOR ()); > > > + > > > +#ifdef SHARED > > > +__hidden_ver1 (_ZGVdN8v_acosf, __GI__ZGVdN8v_acosf, > > > + __redirect__ZGVdN8v_acosf) > > > + __attribute__ ((visibility ("hidden"))); > > > +#endif > > > diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core_avx2.S b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core_avx2.S > > > new file mode 100644 > > > index 0000000000..9e2fcfa0c1 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core_avx2.S > > > @@ -0,0 +1,2619 @@ > > > +/* Function acosf vectorized with AVX2. > > > + Copyright (C) 2021 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 > > > + https://www.gnu.org/licenses/. */ > > > + > > > +/* > > > + * ALGORITHM DESCRIPTION: > > > + * > > > + * SelMask = (|x| >= 0.5) ? 1 : 0; > > > + * R = SelMask ? sqrt(0.5 - 0.5*|x|) : |x| > > > + * acos(|x|) = SelMask ? 2*Poly(R) : (Pi/2 - Poly(R)) > > > + * acos(x) = sign(x) ? (Pi - acos(|x|)) : acos(|x|) > > > + * > > > + * > > > + */ > > > + > > > +#include <sysdep.h> > > > + > > > + .text > > > +ENTRY(_ZGVdN8v_acosf_avx2) > > > + pushq %rbp > > > + cfi_def_cfa_offset(16) > > > + movq %rsp, %rbp > > > + cfi_def_cfa(6, 16) > > > + cfi_offset(6, -16) > > > + andq $-64, %rsp > > > + subq $384, %rsp > > > + > > > +/* > > > + * 2*sqrt(X) ~ Sh - Sl (to 24+ bits) > > > + * SQ ~ 2*sqrt(X) > > > + */ > > > + vmovups __svml_sacos_data_internal(%rip), %ymm6 > > > + vmovups 64+__svml_sacos_data_internal(%rip), %ymm7 > > > + vmovups %ymm8, 256(%rsp) > > > + vmovups %ymm15, 320(%rsp) > > > + vmovups %ymm9, 32(%rsp) > > > + .cfi_escape 0x10, 0xdb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xdc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xe2, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x22 > > > + vmovups 640+__svml_sacos_data_internal(%rip), %ymm15 > > > + vmovups %ymm10, 96(%rsp) > > > + vmovups %ymm11, 160(%rsp) > > > + vmovups %ymm14, 288(%rsp) > > > + vmovups %ymm13, 224(%rsp) > > > + vmovups %ymm12, 192(%rsp) > > > + vmovaps %ymm0, %ymm5 > > > + > > > +/* x = -|arg| */ > > > + vorps %ymm5, %ymm6, %ymm4 > > > + > > > +/* Y = 0.5 + 0.5*(-x) */ > > > + vfmadd231ps %ymm4, %ymm7, %ymm7 > > > + > > > +/* x^2 */ > > > + vmulps %ymm4, %ymm4, %ymm1 > > > + vcmpnge_uqps 256+__svml_sacos_data_internal(%rip), %ymm4, %ymm0 > > > + .cfi_escape 0x10, 0xdd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe0, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xde, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xdf, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xe0, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xe1, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xff, 0xff, 0xff, 0x22 > > > + > > > +/* SQ ~ 2*sqrt(Y) */ > > > + vaddps %ymm7, %ymm7, %ymm11 > > > + vminps %ymm7, %ymm1, %ymm2 > > > + vrsqrtps %ymm7, %ymm8 > > > + vfmadd213ps 672+__svml_sacos_data_internal(%rip), %ymm2, %ymm15 > > > + vmulps %ymm2, %ymm2, %ymm14 > > > + vcmpnlt_uqps %ymm7, %ymm2, %ymm1 > > > + vandps %ymm5, %ymm6, %ymm3 > > > + vcmplt_oqps 192+__svml_sacos_data_internal(%rip), %ymm7, %ymm6 > > > + vandnps %ymm8, %ymm6, %ymm9 > > > + > > > +/* polynomial */ > > > + vmovups 576+__svml_sacos_data_internal(%rip), %ymm6 > > > + vmulps %ymm9, %ymm9, %ymm10 > > > + vmulps %ymm11, %ymm9, %ymm13 > > > + vfmadd213ps 608+__svml_sacos_data_internal(%rip), %ymm2, %ymm6 > > > + vfmsub213ps 448+__svml_sacos_data_internal(%rip), %ymm10, %ymm11 > > > + vfmadd213ps %ymm15, %ymm14, %ymm6 > > > + vmulps %ymm11, %ymm13, %ymm12 > > > + vfmadd213ps 704+__svml_sacos_data_internal(%rip), %ymm2, %ymm6 > > > + vmovmskps %ymm0, %edx > > > + vmovups 512+__svml_sacos_data_internal(%rip), %ymm0 > > > + vmulps %ymm6, %ymm2, %ymm9 > > > + > > > +/* X<X^2 iff X<0 */ > > > + vcmplt_oqps %ymm2, %ymm5, %ymm6 > > > + vfmadd213ps 544+__svml_sacos_data_internal(%rip), %ymm11, %ymm0 > > > + vfnmadd213ps %ymm13, %ymm12, %ymm0 > > > + vblendvps %ymm1, %ymm0, %ymm4, %ymm4 > > > + vxorps %ymm3, %ymm4, %ymm3 > > > + vandps 896+__svml_sacos_data_internal(%rip), %ymm1, %ymm2 > > > + vfmadd213ps %ymm3, %ymm3, %ymm9 > > > + vandps %ymm6, %ymm2, %ymm2 > > > + vandnps 768+__svml_sacos_data_internal(%rip), %ymm1, %ymm7 > > > + vaddps %ymm7, %ymm2, %ymm8 > > > + vaddps %ymm9, %ymm8, %ymm0 > > > + testl %edx, %edx > > > + jne .LBL_1_3 > > > + > > > +.LBL_1_2: > > > + vmovups 256(%rsp), %ymm8 > > > + cfi_restore(91) > > > + vmovups 32(%rsp), %ymm9 > > > + cfi_restore(92) > > > + vmovups 96(%rsp), %ymm10 > > > + cfi_restore(93) > > > + vmovups 160(%rsp), %ymm11 > > > + cfi_restore(94) > > > + vmovups 192(%rsp), %ymm12 > > > + cfi_restore(95) > > > + vmovups 224(%rsp), %ymm13 > > > + cfi_restore(96) > > > + vmovups 288(%rsp), %ymm14 > > > + cfi_restore(97) > > > + vmovups 320(%rsp), %ymm15 > > > + cfi_restore(98) > > > + movq %rbp, %rsp > > > + popq %rbp > > > + cfi_def_cfa(7, 8) > > > + cfi_restore(6) > > > + ret > > > + cfi_def_cfa(6, 16) > > > + cfi_offset(6, -16) > > > + .cfi_escape 0x10, 0xdb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xdc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xdd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe0, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xde, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xdf, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xe0, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xe1, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xff, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0xe2, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x22 > > > + > > > +.LBL_1_3: > > > + vmovups %ymm5, 64(%rsp) > > > + vmovups %ymm0, 128(%rsp) > > > + je .LBL_1_2 > > > + xorl %eax, %eax > > > + vzeroupper > > > + movq %rsi, 8(%rsp) > > > + movq %rdi, (%rsp) > > > + movq %r12, 24(%rsp) > > > + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x88, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x98, 0xfe, 0xff, 0xff, 0x22 > > > + movl %eax, %r12d > > > + movq %r13, 16(%rsp) > > > + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x90, 0xfe, 0xff, 0xff, 0x22 > > > + movl %edx, %r13d > > > + > > > +.LBL_1_7: > > > + btl %r12d, %r13d > > > + jc .LBL_1_10 > > > + > > > +.LBL_1_8: > > > + incl %r12d > > > + cmpl $8, %r12d > > > + jl .LBL_1_7 > > > + movq 8(%rsp), %rsi > > > + cfi_restore(4) > > > + movq (%rsp), %rdi > > > + cfi_restore(5) > > > + movq 24(%rsp), %r12 > > > + cfi_restore(12) > > > + movq 16(%rsp), %r13 > > > + cfi_restore(13) > > > + vmovups 128(%rsp), %ymm0 > > > + jmp .LBL_1_2 > > > + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x88, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x98, 0xfe, 0xff, 0xff, 0x22 > > > + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x90, 0xfe, 0xff, 0xff, 0x22 > > > + > > > +.LBL_1_10: > > > + lea 64(%rsp,%r12,4), %rdi > > > + lea 128(%rsp,%r12,4), %rsi > > > + call __svml_sacos_cout_rare_internal > > > + jmp .LBL_1_8 > > > + > > > +END(_ZGVdN8v_acosf_avx2) > > > + > > > + .align 16,0x90 > > > + > > > +__svml_sacos_cout_rare_internal: > > > + > > > + cfi_startproc > > > + > > > + xorl %eax, %eax > > > + movzwl 2(%rdi), %edx > > > + andl $32640, %edx > > > + movss (%rdi), %xmm1 > > > + cmpl $32640, %edx > > > + je .LBL_2_20 > > > + cvtss2sd %xmm1, %xmm1 > > > + movsd %xmm1, -32(%rsp) > > > + andb $127, -25(%rsp) > > > + movsd -32(%rsp), %xmm12 > > > + movsd 4168+_vmldACosHATab(%rip), %xmm0 > > > + comisd %xmm12, %xmm0 > > > + jbe .LBL_2_14 > > > + movsd 4176+_vmldACosHATab(%rip), %xmm1 > > > + comisd %xmm12, %xmm1 > > > + jbe .LBL_2_10 > > > + comisd 4128+_vmldACosHATab(%rip), %xmm12 > > > + jbe .LBL_2_9 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm6 > > > + movaps %xmm12, %xmm8 > > > + mulsd %xmm12, %xmm6 > > > + movaps %xmm12, %xmm7 > > > + movsd %xmm6, -40(%rsp) > > > + movsd -40(%rsp), %xmm13 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm5 > > > + subsd -32(%rsp), %xmm13 > > > + movsd %xmm13, -48(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + movsd -48(%rsp), %xmm14 > > > + subsd %xmm14, %xmm15 > > > + movaps %xmm12, %xmm14 > > > + movsd %xmm15, -40(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + subsd %xmm6, %xmm8 > > > + movsd %xmm8, -48(%rsp) > > > + movsd -40(%rsp), %xmm9 > > > + movaps %xmm9, %xmm4 > > > + addsd %xmm9, %xmm7 > > > + mulsd %xmm9, %xmm4 > > > + movsd -48(%rsp), %xmm10 > > > + movaps %xmm4, %xmm11 > > > + mulsd %xmm10, %xmm7 > > > + mulsd %xmm4, %xmm5 > > > + addsd %xmm7, %xmm11 > > > + movsd 4312+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm5, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm5 > > > + subsd %xmm4, %xmm1 > > > + addsd 4304+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm1, -48(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + addsd 4296+_vmldACosHATab(%rip), %xmm8 > > > + subsd %xmm2, %xmm0 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + addsd 4288+_vmldACosHATab(%rip), %xmm8 > > > + subsd %xmm3, %xmm4 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm4, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + mulsd %xmm6, %xmm9 > > > + addsd 4280+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm6, %xmm10 > > > + mulsd %xmm11, %xmm8 > > > + mulsd %xmm9, %xmm5 > > > + addsd 4272+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm11, %xmm8 > > > + movaps %xmm9, %xmm0 > > > + movsd -48(%rsp), %xmm13 > > > + movaps %xmm6, %xmm4 > > > + movsd %xmm5, -40(%rsp) > > > + addsd %xmm13, %xmm7 > > > + addsd 4264+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm7, %xmm14 > > > + mulsd %xmm11, %xmm8 > > > + addsd %xmm14, %xmm10 > > > + addsd 4256+_vmldACosHATab(%rip), %xmm8 > > > + movsd -40(%rsp), %xmm1 > > > + mulsd %xmm11, %xmm8 > > > + subsd %xmm9, %xmm1 > > > + addsd %xmm10, %xmm9 > > > + addsd 4248+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm9, %xmm7 > > > + mulsd %xmm11, %xmm8 > > > + movsd %xmm1, -48(%rsp) > > > + movsd -40(%rsp), %xmm2 > > > + movsd -48(%rsp), %xmm15 > > > + subsd %xmm15, %xmm2 > > > + addsd 4240+_vmldACosHATab(%rip), %xmm8 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm5 > > > + mulsd %xmm11, %xmm8 > > > + subsd %xmm5, %xmm0 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movsd -48(%rsp), %xmm5 > > > + movaps %xmm5, %xmm13 > > > + addsd 4232+_vmldACosHATab(%rip), %xmm8 > > > + mulsd %xmm3, %xmm4 > > > + addsd %xmm10, %xmm13 > > > + mulsd %xmm11, %xmm8 > > > + mulsd %xmm13, %xmm6 > > > + addsd 4224+_vmldACosHATab(%rip), %xmm8 > > > + addsd %xmm7, %xmm6 > > > + mulsd %xmm11, %xmm8 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm7 > > > + movaps %xmm4, %xmm13 > > > + mulsd %xmm4, %xmm7 > > > + addsd 4216+_vmldACosHATab(%rip), %xmm8 > > > + movsd %xmm7, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4200+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm4, %xmm1 > > > + mulsd %xmm9, %xmm11 > > > + addsd %xmm6, %xmm4 > > > + movsd %xmm1, -48(%rsp) > > > + movaps %xmm12, %xmm9 > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + movsd 4192+_vmldACosHATab(%rip), %xmm1 > > > + subsd %xmm2, %xmm0 > > > + mulsd %xmm1, %xmm3 > > > + mulsd %xmm1, %xmm10 > > > + mulsd %xmm4, %xmm8 > > > + addsd %xmm3, %xmm9 > > > + mulsd %xmm1, %xmm5 > > > + addsd %xmm10, %xmm11 > > > + movsd %xmm0, -40(%rsp) > > > + pxor %xmm1, %xmm1 > > > + movsd -40(%rsp), %xmm7 > > > + addsd %xmm11, %xmm8 > > > + subsd %xmm7, %xmm13 > > > + addsd %xmm5, %xmm8 > > > + movsd %xmm13, -48(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + movsd -48(%rsp), %xmm2 > > > + movsd %xmm9, -40(%rsp) > > > + addsd %xmm2, %xmm6 > > > + movsd -40(%rsp), %xmm10 > > > + movsd %xmm3, -56(%rsp) > > > + subsd %xmm10, %xmm12 > > > + movsd 4208+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm12, %xmm3 > > > + mulsd %xmm4, %xmm0 > > > + mulsd %xmm4, %xmm6 > > > + movsd %xmm3, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movaps %xmm3, %xmm12 > > > + movsd -48(%rsp), %xmm7 > > > + addsd %xmm0, %xmm12 > > > + addsd %xmm7, %xmm8 > > > + movsd %xmm12, -40(%rsp) > > > + movsd -40(%rsp), %xmm12 > > > + subsd %xmm12, %xmm3 > > > + addsd %xmm3, %xmm0 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm3 > > > + movsd -48(%rsp), %xmm0 > > > + cvtss2sd (%rdi), %xmm1 > > > + addsd %xmm8, %xmm0 > > > + comisd 4184+_vmldACosHATab(%rip), %xmm1 > > > + addsd %xmm0, %xmm6 > > > + jbe .LBL_2_7 > > > + movsd 4136+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm2, %xmm0 > > > + subsd %xmm3, %xmm0 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4144+_vmldACosHATab(%rip), %xmm0 > > > + subsd %xmm1, %xmm2 > > > + subsd %xmm6, %xmm0 > > > + subsd %xmm3, %xmm2 > > > + movsd %xmm2, -48(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd -48(%rsp), %xmm3 > > > + addsd %xmm3, %xmm0 > > > + jmp .LBL_2_8 > > > + > > > +.LBL_2_7: > > > + movsd 4136+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm3, %xmm0 > > > + addsd %xmm2, %xmm0 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + subsd %xmm1, %xmm2 > > > + addsd %xmm2, %xmm3 > > > + movsd %xmm3, -48(%rsp) > > > + movsd 4144+_vmldACosHATab(%rip), %xmm3 > > > + movsd -40(%rsp), %xmm1 > > > + addsd %xmm3, %xmm6 > > > + movsd -48(%rsp), %xmm0 > > > + addsd %xmm6, %xmm0 > > > + > > > +.LBL_2_8: > > > + addsd %xmm0, %xmm1 > > > + cvtsd2ss %xmm1, %xmm1 > > > + movss %xmm1, (%rsi) > > > + ret > > > + > > > +.LBL_2_9: > > > + movsd 4144+_vmldACosHATab(%rip), %xmm1 > > > + addsd %xmm0, %xmm12 > > > + movsd %xmm12, -40(%rsp) > > > + movsd -40(%rsp), %xmm0 > > > + mulsd -32(%rsp), %xmm0 > > > + movsd %xmm0, -56(%rsp) > > > + movb -49(%rsp), %dl > > > + movb 3(%rdi), %dil > > > + andb $127, %dl > > > + andb $-128, %dil > > > + orb %dil, %dl > > > + movb %dl, -49(%rsp) > > > + subsd -56(%rsp), %xmm1 > > > + addsd 4136+_vmldACosHATab(%rip), %xmm1 > > > + cvtsd2ss %xmm1, %xmm1 > > > + movss %xmm1, (%rsi) > > > + ret > > > + > > > +.LBL_2_10: > > > + movaps %xmm0, %xmm8 > > > + movzwl 4174+_vmldACosHATab(%rip), %r9d > > > + pxor %xmm13, %xmm13 > > > + andl $-32753, %r9d > > > + subsd %xmm12, %xmm8 > > > + subsd %xmm0, %xmm13 > > > + mulsd %xmm8, %xmm1 > > > + movsd %xmm1, -56(%rsp) > > > + movzwl -50(%rsp), %ecx > > > + andl $32752, %ecx > > > + shrl $4, %ecx > > > + addl $-1023, %ecx > > > + movl %ecx, %r8d > > > + movl %ecx, %edx > > > + negl %r8d > > > + addl $1023, %r8d > > > + andl $2047, %r8d > > > + shll $4, %r8d > > > + movsd %xmm0, -32(%rsp) > > > + orl %r8d, %r9d > > > + movw %r9w, -26(%rsp) > > > + andl $1, %edx > > > + movsd -32(%rsp), %xmm4 > > > + lea _vmldACosHATab(%rip), %r8 > > > + mulsd %xmm4, %xmm1 > > > + movl %edx, %r10d > > > + movaps %xmm1, %xmm15 > > > + movsd 4112+_vmldACosHATab(%rip), %xmm6 > > > + addsd %xmm1, %xmm15 > > > + jne .LBL_73 > > > + movaps %xmm1, %xmm15 > > > + > > > +.LBL_73: > > > + mulsd %xmm15, %xmm6 > > > + movaps %xmm15, %xmm7 > > > + movaps %xmm6, %xmm9 > > > + subl %edx, %ecx > > > + movsd 4120+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm15, %xmm9 > > > + addsd %xmm1, %xmm11 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -48(%rsp), %xmm10 > > > + movsd %xmm11, -24(%rsp) > > > + subsd %xmm10, %xmm6 > > > + movl -24(%rsp), %r11d > > > + movaps %xmm6, %xmm14 > > > + shll $8, %r10d > > > + andl $511, %r11d > > > + addl %r10d, %r11d > > > + subsd %xmm6, %xmm7 > > > + movsd (%r8,%r11,8), %xmm5 > > > + addsd %xmm7, %xmm14 > > > + mulsd %xmm5, %xmm6 > > > + movaps %xmm5, %xmm12 > > > + mulsd %xmm5, %xmm12 > > > + mulsd %xmm12, %xmm14 > > > + movsd 4512+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm13, %xmm14 > > > + mulsd %xmm14, %xmm4 > > > + shrl $1, %ecx > > > + addsd 4504+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + addl $1023, %ecx > > > + andl $2047, %ecx > > > + addsd 4496+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movzwl 4174+_vmldACosHATab(%rip), %r9d > > > + shll $4, %ecx > > > + andl $-32753, %r9d > > > + movsd %xmm0, -16(%rsp) > > > + orl %ecx, %r9d > > > + movw %r9w, -10(%rsp) > > > + movsd -16(%rsp), %xmm9 > > > + mulsd %xmm9, %xmm6 > > > + addsd 4488+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm3 > > > + mulsd %xmm6, %xmm3 > > > + addsd 4480+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + movsd %xmm3, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd 4352+_vmldACosHATab(%rip), %xmm11 > > > + subsd %xmm6, %xmm1 > > > + addsd 4472+_vmldACosHATab(%rip), %xmm4 > > > + addsd 4360+_vmldACosHATab(%rip), %xmm11 > > > + mulsd %xmm14, %xmm4 > > > + mulsd %xmm8, %xmm11 > > > + addsd 4464+_vmldACosHATab(%rip), %xmm4 > > > + mulsd %xmm14, %xmm4 > > > + mulsd %xmm15, %xmm4 > > > + movsd %xmm1, -48(%rsp) > > > + addsd %xmm4, %xmm7 > > > + mulsd %xmm5, %xmm7 > > > + movsd 4456+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm9, %xmm7 > > > + addsd 4448+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm2 > > > + movsd -48(%rsp), %xmm0 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm4 > > > + subsd %xmm0, %xmm2 > > > + mulsd %xmm8, %xmm4 > > > + addsd 4440+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movaps %xmm8, %xmm0 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm14 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm2 > > > + subsd %xmm14, %xmm6 > > > + addsd 4432+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm6, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + movsd -48(%rsp), %xmm10 > > > + movsd %xmm4, -40(%rsp) > > > + addsd %xmm10, %xmm7 > > > + addsd 4424+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm3 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm12 > > > + subsd %xmm8, %xmm3 > > > + addsd 4416+_vmldACosHATab(%rip), %xmm5 > > > + addsd 4344+_vmldACosHATab(%rip), %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + addsd %xmm11, %xmm12 > > > + addsd 4408+_vmldACosHATab(%rip), %xmm5 > > > + mulsd %xmm8, %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm3, -48(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd -48(%rsp), %xmm15 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm13 > > > + subsd %xmm15, %xmm1 > > > + addsd 4400+_vmldACosHATab(%rip), %xmm5 > > > + addsd 4328+_vmldACosHATab(%rip), %xmm13 > > > + mulsd %xmm8, %xmm5 > > > + addsd %xmm12, %xmm13 > > > + addsd 4392+_vmldACosHATab(%rip), %xmm5 > > > + movsd %xmm1, -40(%rsp) > > > + mulsd %xmm8, %xmm5 > > > + movsd -40(%rsp), %xmm4 > > > + subsd %xmm4, %xmm0 > > > + addsd 4384+_vmldACosHATab(%rip), %xmm5 > > > + movsd %xmm0, -48(%rsp) > > > + movsd -40(%rsp), %xmm4 > > > + movaps %xmm4, %xmm14 > > > + mulsd %xmm4, %xmm14 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm14, %xmm2 > > > + addsd 4376+_vmldACosHATab(%rip), %xmm5 > > > + movsd -48(%rsp), %xmm3 > > > + movsd %xmm2, -40(%rsp) > > > + movsd -40(%rsp), %xmm9 > > > + mulsd %xmm8, %xmm5 > > > + subsd %xmm14, %xmm9 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -40(%rsp), %xmm11 > > > + movsd -48(%rsp), %xmm10 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm0 > > > + subsd %xmm10, %xmm11 > > > + mulsd %xmm4, %xmm0 > > > + addsd 4368+_vmldACosHATab(%rip), %xmm5 > > > + addsd %xmm8, %xmm4 > > > + mulsd %xmm8, %xmm5 > > > + mulsd %xmm3, %xmm4 > > > + mulsd %xmm8, %xmm5 > > > + movsd %xmm11, -40(%rsp) > > > + movaps %xmm0, %xmm1 > > > + movsd -40(%rsp), %xmm12 > > > + mulsd %xmm8, %xmm5 > > > + subsd %xmm12, %xmm14 > > > + movsd %xmm14, -48(%rsp) > > > + addsd %xmm5, %xmm13 > > > + movsd -40(%rsp), %xmm9 > > > + mulsd 4352+_vmldACosHATab(%rip), %xmm9 > > > + mulsd %xmm13, %xmm7 > > > + addsd %xmm9, %xmm1 > > > + movsd -48(%rsp), %xmm2 > > > + movsd %xmm1, -40(%rsp) > > > + addsd %xmm2, %xmm4 > > > + movsd -40(%rsp), %xmm13 > > > + movsd %xmm9, -24(%rsp) > > > + subsd %xmm13, %xmm0 > > > + mulsd 4352+_vmldACosHATab(%rip), %xmm4 > > > + addsd %xmm0, %xmm9 > > > + movsd %xmm9, -48(%rsp) > > > + movsd -40(%rsp), %xmm12 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm10 > > > + movsd -48(%rsp), %xmm1 > > > + addsd %xmm12, %xmm10 > > > + movsd %xmm10, -40(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + movsd 4320+_vmldACosHATab(%rip), %xmm11 > > > + movsd 4104+_vmldACosHATab(%rip), %xmm9 > > > + subsd %xmm15, %xmm11 > > > + movsd 4336+_vmldACosHATab(%rip), %xmm2 > > > + addsd %xmm11, %xmm12 > > > + mulsd %xmm3, %xmm2 > > > + movsd %xmm12, -48(%rsp) > > > + movsd -40(%rsp), %xmm15 > > > + mulsd %xmm15, %xmm9 > > > + movsd -48(%rsp), %xmm0 > > > + movsd %xmm9, -40(%rsp) > > > + movsd -40(%rsp), %xmm10 > > > + movsd 4360+_vmldACosHATab(%rip), %xmm3 > > > + subsd %xmm15, %xmm10 > > > + mulsd %xmm8, %xmm3 > > > + movsd %xmm10, -48(%rsp) > > > + movsd -40(%rsp), %xmm11 > > > + movsd -48(%rsp), %xmm13 > > > + subsd %xmm13, %xmm11 > > > + addsd 4344+_vmldACosHATab(%rip), %xmm3 > > > + movsd %xmm11, -40(%rsp) > > > + movsd -40(%rsp), %xmm14 > > > + mulsd %xmm8, %xmm3 > > > + subsd %xmm14, %xmm15 > > > + movsd %xmm15, -48(%rsp) > > > + movsd -40(%rsp), %xmm10 > > > + movsd -48(%rsp), %xmm9 > > > + addsd %xmm9, %xmm4 > > > + addsd 4328+_vmldACosHATab(%rip), %xmm3 > > > + addsd %xmm2, %xmm4 > > > + addsd %xmm5, %xmm3 > > > + addsd %xmm1, %xmm4 > > > + addsd %xmm0, %xmm4 > > > + addsd %xmm3, %xmm4 > > > + mulsd %xmm6, %xmm4 > > > + mulsd %xmm10, %xmm6 > > > + addsd %xmm7, %xmm4 > > > + pxor %xmm7, %xmm7 > > > + cvtss2sd (%rdi), %xmm7 > > > + comisd 4184+_vmldACosHATab(%rip), %xmm7 > > > + ja .LBL_2_13 > > > + movsd 4152+_vmldACosHATab(%rip), %xmm2 > > > + movaps %xmm2, %xmm0 > > > + movsd 4160+_vmldACosHATab(%rip), %xmm5 > > > + subsd %xmm6, %xmm0 > > > + subsd %xmm4, %xmm5 > > > + movsd %xmm0, -40(%rsp) > > > + movsd -40(%rsp), %xmm1 > > > + movsd %xmm6, -56(%rsp) > > > + subsd %xmm1, %xmm2 > > > + subsd %xmm6, %xmm2 > > > + movsd %xmm2, -48(%rsp) > > > + movsd -40(%rsp), %xmm6 > > > + movsd -48(%rsp), %xmm3 > > > + movaps %xmm3, %xmm4 > > > + addsd %xmm5, %xmm4 > > > + > > > +.LBL_2_13: > > > + addsd %xmm4, %xmm6 > > > + cvtsd2ss %xmm6, %xmm6 > > > + movss %xmm6, (%rsi) > > > + ret > > > + > > > +.LBL_2_14: > > > + ucomisd %xmm0, %xmm1 > > > + jp .LBL_2_15 > > > + je .LBL_2_19 > > > + > > > +.LBL_2_15: > > > + xorps .FLT_199(%rip), %xmm0 > > > + ucomisd %xmm0, %xmm1 > > > + jp .LBL_2_16 > > > + je .LBL_2_18 > > > + > > > +.LBL_2_16: > > > + movl $1, %eax > > > + pxor %xmm1, %xmm1 > > > + pxor %xmm0, %xmm0 > > > + divss %xmm0, %xmm1 > > > + movss %xmm1, (%rsi) > > > + ret > > > + > > > +.LBL_2_18: > > > + movsd 4152+_vmldACosHATab(%rip), %xmm0 > > > + addsd 4160+_vmldACosHATab(%rip), %xmm0 > > > + cvtsd2ss %xmm0, %xmm0 > > > + movss %xmm0, (%rsi) > > > + ret > > > + > > > +.LBL_2_19: > > > + movsd 4184+_vmldACosHATab(%rip), %xmm0 > > > + cvtsd2ss %xmm0, %xmm0 > > > + movss %xmm0, (%rsi) > > > + ret > > > + > > > +.LBL_2_20: > > > + divss %xmm1, %xmm1 > > > + testl $8388607, (%rdi) > > > + movss %xmm1, (%rsi) > > > + sete %al > > > + ret > > > + > > > + cfi_endproc > > > + > > > + .type __svml_sacos_cout_rare_internal,@function > > > + .size __svml_sacos_cout_rare_internal,.-__svml_sacos_cout_rare_internal > > > + > > > + .section .rodata, "a" > > > + .align 64 > > > + > > > +__svml_sacos_data_internal: > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .long 1056964608 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .long 4294963200 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .long 796917760 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .long 3212836864 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .long 4294959104 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .long 4294965248 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .long 1073741824 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 3183476740 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1048576001 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1026481159 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1019423339 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1027250868 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1033468946 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .long 1042983679 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .long 1070141403 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .long 3007036718 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .long 1078530011 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .long 3015425326 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .long 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .long 2147483648 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .long 4290772992 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1036306094 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 1042839218 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .long 939876771 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .byte 0 > > > + .type __svml_sacos_data_internal,@object > > > + .size __svml_sacos_data_internal,1344 > > > + .align 32 > > > + > > > +_vmldACosHATab: > > > + .long 0 > > > + .long 1072693248 > > > + .long 0 > > > + .long 1072689152 > > > + .long 0 > > > + .long 1072685056 > > > + .long 0 > > > + .long 1072680960 > > > + .long 0 > > > + .long 1072676864 > > > + .long 0 > > > + .long 1072672768 > > > + .long 0 > > > + .long 1072668672 > > > + .long 0 > > > + .long 1072665600 > > > + .long 0 > > > + .long 1072661504 > > > + .long 0 > > > + .long 1072657408 > > > + .long 0 > > > + .long 1072653312 > > > + .long 0 > > > + .long 1072649216 > > > + .long 0 > > > + .long 1072646144 > > > + .long 0 > > > + .long 1072642048 > > > + .long 0 > > > + .long 1072637952 > > > + .long 0 > > > + .long 1072634880 > > > + .long 0 > > > + .long 1072630784 > > > + .long 0 > > > + .long 1072626688 > > > + .long 0 > > > + .long 1072623616 > > > + .long 0 > > > + .long 1072619520 > > > + .long 0 > > > + .long 1072615424 > > > + .long 0 > > > + .long 1072612352 > > > + .long 0 > > > + .long 1072608256 > > > + .long 0 > > > + .long 1072605184 > > > + .long 0 > > > + .long 1072601088 > > > + .long 0 > > > + .long 1072598016 > > > + .long 0 > > > + .long 1072593920 > > > + .long 0 > > > + .long 1072590848 > > > + .long 0 > > > + .long 1072586752 > > > + .long 0 > > > + .long 1072583680 > > > + .long 0 > > > + .long 1072580608 > > > + .long 0 > > > + .long 1072576512 > > > + .long 0 > > > + .long 1072573440 > > > + .long 0 > > > + .long 1072570368 > > > + .long 0 > > > + .long 1072566272 > > > + .long 0 > > > + .long 1072563200 > > > + .long 0 > > > + .long 1072560128 > > > + .long 0 > > > + .long 1072556032 > > > + .long 0 > > > + .long 1072552960 > > > + .long 0 > > > + .long 1072549888 > > > + .long 0 > > > + .long 1072546816 > > > + .long 0 > > > + .long 1072542720 > > > + .long 0 > > > + .long 1072539648 > > > + .long 0 > > > + .long 1072536576 > > > + .long 0 > > > + .long 1072533504 > > > + .long 0 > > > + .long 1072530432 > > > + .long 0 > > > + .long 1072527360 > > > + .long 0 > > > + .long 1072523264 > > > + .long 0 > > > + .long 1072520192 > > > + .long 0 > > > + .long 1072517120 > > > + .long 0 > > > + .long 1072514048 > > > + .long 0 > > > + .long 1072510976 > > > + .long 0 > > > + .long 1072507904 > > > + .long 0 > > > + .long 1072504832 > > > + .long 0 > > > + .long 1072501760 > > > + .long 0 > > > + .long 1072498688 > > > + .long 0 > > > + .long 1072495616 > > > + .long 0 > > > + .long 1072492544 > > > + .long 0 > > > + .long 1072489472 > > > + .long 0 > > > + .long 1072486400 > > > + .long 0 > > > + .long 1072483328 > > > + .long 0 > > > + .long 1072480256 > > > + .long 0 > > > + .long 1072478208 > > > + .long 0 > > > + .long 1072475136 > > > + .long 0 > > > + .long 1072472064 > > > + .long 0 > > > + .long 1072468992 > > > + .long 0 > > > + .long 1072465920 > > > + .long 0 > > > + .long 1072462848 > > > + .long 0 > > > + .long 1072459776 > > > + .long 0 > > > + .long 1072457728 > > > + .long 0 > > > + .long 1072454656 > > > + .long 0 > > > + .long 1072451584 > > > + .long 0 > > > + .long 1072448512 > > > + .long 0 > > > + .long 1072446464 > > > + .long 0 > > > + .long 1072443392 > > > + .long 0 > > > + .long 1072440320 > > > + .long 0 > > > + .long 1072437248 > > > + .long 0 > > > + .long 1072435200 > > > + .long 0 > > > + .long 1072432128 > > > + .long 0 > > > + .long 1072429056 > > > + .long 0 > > > + .long 1072427008 > > > + .long 0 > > > + .long 1072423936 > > > + .long 0 > > > + .long 1072420864 > > > + .long 0 > > > + .long 1072418816 > > > + .long 0 > > > + .long 1072415744 > > > + .long 0 > > > + .long 1072412672 > > > + .long 0 > > > + .long 1072410624 > > > + .long 0 > > > + .long 1072407552 > > > + .long 0 > > > + .long 1072405504 > > > + .long 0 > > > + .long 1072402432 > > > + .long 0 > > > + .long 1072400384 > > > + .long 0 > > > + .long 1072397312 > > > + .long 0 > > > + .long 1072395264 > > > + .long 0 > > > + .long 1072392192 > > > + .long 0 > > > + .long 1072390144 > > > + .long 0 > > > + .long 1072387072 > > > + .long 0 > > > + .long 1072385024 > > > + .long 0 > > > + .long 1072381952 > > > + .long 0 > > > + .long 1072379904 > > > + .long 0 > > > + .long 1072376832 > > > + .long 0 > > > + .long 1072374784 > > > + .long 0 > > > + .long 1072371712 > > > + .long 0 > > > + .long 1072369664 > > > + .long 0 > > > + .long 1072366592 > > > + .long 0 > > > + .long 1072364544 > > > + .long 0 > > > + .long 1072362496 > > > + .long 0 > > > + .long 1072359424 > > > + .long 0 > > > + .long 1072357376 > > > + .long 0 > > > + .long 1072355328 > > > + .long 0 > > > + .long 1072352256 > > > + .long 0 > > > + .long 1072350208 > > > + .long 0 > > > + .long 1072347136 > > > + .long 0 > > > + .long 1072345088 > > > + .long 0 > > > + .long 1072343040 > > > + .long 0 > > > + .long 1072340992 > > > + .long 0 > > > + .long 1072337920 > > > + .long 0 > > > + .long 1072335872 > > > + .long 0 > > > + .long 1072333824 > > > + .long 0 > > > + .long 1072330752 > > > + .long 0 > > > + .long 1072328704 > > > + .long 0 > > > + .long 1072326656 > > > + .long 0 > > > + .long 1072324608 > > > + .long 0 > > > + .long 1072321536 > > > + .long 0 > > > + .long 1072319488 > > > + .long 0 > > > + .long 1072317440 > > > + .long 0 > > > + .long 1072315392 > > > + .long 0 > > > + .long 1072313344 > > > + .long 0 > > > + .long 1072310272 > > > + .long 0 > > > + .long 1072308224 > > > + .long 0 > > > + .long 1072306176 > > > + .long 0 > > > + .long 1072304128 > > > + .long 0 > > > + .long 1072302080 > > > + .long 0 > > > + .long 1072300032 > > > + .long 0 > > > + .long 1072296960 > > > + .long 0 > > > + .long 1072294912 > > > + .long 0 > > > + .long 1072292864 > > > + .long 0 > > > + .long 1072290816 > > > + .long 0 > > > + .long 1072288768 > > > + .long 0 > > > + .long 1072286720 > > > + .long 0 > > > + .long 1072284672 > > > + .long 0 > > > + .long 1072282624 > > > + .long 0 > > > + .long 1072280576 > > > + .long 0 > > > + .long 1072278528 > > > + .long 0 > > > + .long 1072275456 > > > + .long 0 > > > + .long 1072273408 > > > + .long 0 > > > + .long 1072271360 > > > + .long 0 > > > + .long 1072269312 > > > + .long 0 > > > + .long 1072267264 > > > + .long 0 > > > + .long 1072265216 > > > + .long 0 > > > + .long 1072263168 > > > + .long 0 > > > + .long 1072261120 > > > + .long 0 > > > + .long 1072259072 > > > + .long 0 > > > + .long 1072257024 > > > + .long 0 > > > + .long 1072254976 > > > + .long 0 > > > + .long 1072252928 > > > + .long 0 > > > + .long 1072250880 > > > + .long 0 > > > + .long 1072248832 > > > + .long 0 > > > + .long 1072246784 > > > + .long 0 > > > + .long 1072244736 > > > + .long 0 > > > + .long 1072243712 > > > + .long 0 > > > + .long 1072241664 > > > + .long 0 > > > + .long 1072239616 > > > + .long 0 > > > + .long 1072237568 > > > + .long 0 > > > + .long 1072235520 > > > + .long 0 > > > + .long 1072233472 > > > + .long 0 > > > + .long 1072231424 > > > + .long 0 > > > + .long 1072229376 > > > + .long 0 > > > + .long 1072227328 > > > + .long 0 > > > + .long 1072225280 > > > + .long 0 > > > + .long 1072223232 > > > + .long 0 > > > + .long 1072222208 > > > + .long 0 > > > + .long 1072220160 > > > + .long 0 > > > + .long 1072218112 > > > + .long 0 > > > + .long 1072216064 > > > + .long 0 > > > + .long 1072214016 > > > + .long 0 > > > + .long 1072211968 > > > + .long 0 > > > + .long 1072210944 > > > + .long 0 > > > + .long 1072208896 > > > + .long 0 > > > + .long 1072206848 > > > + .long 0 > > > + .long 1072204800 > > > + .long 0 > > > + .long 1072202752 > > > + .long 0 > > > + .long 1072201728 > > > + .long 0 > > > + .long 1072199680 > > > + .long 0 > > > + .long 1072197632 > > > + .long 0 > > > + .long 1072195584 > > > + .long 0 > > > + .long 1072193536 > > > + .long 0 > > > + .long 1072192512 > > > + .long 0 > > > + .long 1072190464 > > > + .long 0 > > > + .long 1072188416 > > > + .long 0 > > > + .long 1072186368 > > > + .long 0 > > > + .long 1072185344 > > > + .long 0 > > > + .long 1072183296 > > > + .long 0 > > > + .long 1072181248 > > > + .long 0 > > > + .long 1072179200 > > > + .long 0 > > > + .long 1072178176 > > > + .long 0 > > > + .long 1072176128 > > > + .long 0 > > > + .long 1072174080 > > > + .long 0 > > > + .long 1072173056 > > > + .long 0 > > > + .long 1072171008 > > > + .long 0 > > > + .long 1072168960 > > > + .long 0 > > > + .long 1072167936 > > > + .long 0 > > > + .long 1072165888 > > > + .long 0 > > > + .long 1072163840 > > > + .long 0 > > > + .long 1072161792 > > > + .long 0 > > > + .long 1072160768 > > > + .long 0 > > > + .long 1072158720 > > > + .long 0 > > > + .long 1072157696 > > > + .long 0 > > > + .long 1072155648 > > > + .long 0 > > > + .long 1072153600 > > > + .long 0 > > > + .long 1072152576 > > > + .long 0 > > > + .long 1072150528 > > > + .long 0 > > > + .long 1072148480 > > > + .long 0 > > > + .long 1072147456 > > > + .long 0 > > > + .long 1072145408 > > > + .long 0 > > > + .long 1072143360 > > > + .long 0 > > > + .long 1072142336 > > > + .long 0 > > > + .long 1072140288 > > > + .long 0 > > > + .long 1072139264 > > > + .long 0 > > > + .long 1072137216 > > > + .long 0 > > > + .long 1072135168 > > > + .long 0 > > > + .long 1072134144 > > > + .long 0 > > > + .long 1072132096 > > > + .long 0 > > > + .long 1072131072 > > > + .long 0 > > > + .long 1072129024 > > > + .long 0 > > > + .long 1072128000 > > > + .long 0 > > > + .long 1072125952 > > > + .long 0 > > > + .long 1072124928 > > > + .long 0 > > > + .long 1072122880 > > > + .long 0 > > > + .long 1072120832 > > > + .long 0 > > > + .long 1072119808 > > > + .long 0 > > > + .long 1072117760 > > > + .long 0 > > > + .long 1072116736 > > > + .long 0 > > > + .long 1072114688 > > > + .long 0 > > > + .long 1072113664 > > > + .long 0 > > > + .long 1072111616 > > > + .long 0 > > > + .long 1072110592 > > > + .long 0 > > > + .long 1072108544 > > > + .long 0 > > > + .long 1072107520 > > > + .long 0 > > > + .long 1072105472 > > > + .long 0 > > > + .long 1072104448 > > > + .long 0 > > > + .long 1072102400 > > > + .long 0 > > > + .long 1072101376 > > > + .long 0 > > > + .long 1072099328 > > > + .long 0 > > > + .long 1072098304 > > > + .long 0 > > > + .long 1072096256 > > > + .long 0 > > > + .long 1072095232 > > > + .long 0 > > > + .long 1072094208 > > > + .long 0 > > > + .long 1072092160 > > > + .long 0 > > > + .long 1072091136 > > > + .long 0 > > > + .long 1072089088 > > > + .long 0 > > > + .long 1072088064 > > > + .long 0 > > > + .long 1072086016 > > > + .long 0 > > > + .long 1072084992 > > > + .long 0 > > > + .long 1072082944 > > > + .long 0 > > > + .long 1072081920 > > > + .long 0 > > > + .long 1072080896 > > > + .long 0 > > > + .long 1072078848 > > > + .long 0 > > > + .long 1072075776 > > > + .long 0 > > > + .long 1072073728 > > > + .long 0 > > > + .long 1072070656 > > > + .long 0 > > > + .long 1072067584 > > > + .long 0 > > > + .long 1072064512 > > > + .long 0 > > > + .long 1072061440 > > > + .long 0 > > > + .long 1072059392 > > > + .long 0 > > > + .long 1072056320 > > > + .long 0 > > > + .long 1072053248 > > > + .long 0 > > > + .long 1072051200 > > > + .long 0 > > > + .long 1072048128 > > > + .long 0 > > > + .long 1072045056 > > > + .long 0 > > > + .long 1072043008 > > > + .long 0 > > > + .long 1072039936 > > > + .long 0 > > > + .long 1072037888 > > > + .long 0 > > > + .long 1072034816 > > > + .long 0 > > > + .long 1072031744 > > > + .long 0 > > > + .long 1072029696 > > > + .long 0 > > > + .long 1072026624 > > > + .long 0 > > > + .long 1072024576 > > > + .long 0 > > > + .long 1072021504 > > > + .long 0 > > > + .long 1072019456 > > > + .long 0 > > > + .long 1072016384 > > > + .long 0 > > > + .long 1072014336 > > > + .long 0 > > > + .long 1072011264 > > > + .long 0 > > > + .long 1072009216 > > > + .long 0 > > > + .long 1072006144 > > > + .long 0 > > > + .long 1072004096 > > > + .long 0 > > > + .long 1072002048 > > > + .long 0 > > > + .long 1071998976 > > > + .long 0 > > > + .long 1071996928 > > > + .long 0 > > > + .long 1071993856 > > > + .long 0 > > > + .long 1071991808 > > > + .long 0 > > > + .long 1071989760 > > > + .long 0 > > > + .long 1071986688 > > > + .long 0 > > > + .long 1071984640 > > > + .long 0 > > > + .long 1071982592 > > > + .long 0 > > > + .long 1071979520 > > > + .long 0 > > > + .long 1071977472 > > > + .long 0 > > > + .long 1071975424 > > > + .long 0 > > > + .long 1071972352 > > > + .long 0 > > > + .long 1071970304 > > > + .long 0 > > > + .long 1071968256 > > > + .long 0 > > > + .long 1071966208 > > > + .long 0 > > > + .long 1071964160 > > > + .long 0 > > > + .long 1071961088 > > > + .long 0 > > > + .long 1071959040 > > > + .long 0 > > > + .long 1071956992 > > > + .long 0 > > > + .long 1071954944 > > > + .long 0 > > > + .long 1071952896 > > > + .long 0 > > > + .long 1071949824 > > > + .long 0 > > > + .long 1071947776 > > > + .long 0 > > > + .long 1071945728 > > > + .long 0 > > > + .long 1071943680 > > > + .long 0 > > > + .long 1071941632 > > > + .long 0 > > > + .long 1071939584 > > > + .long 0 > > > + .long 1071937536 > > > + .long 0 > > > + .long 1071935488 > > > + .long 0 > > > + .long 1071933440 > > > + .long 0 > > > + .long 1071930368 > > > + .long 0 > > > + .long 1071928320 > > > + .long 0 > > > + .long 1071926272 > > > + .long 0 > > > + .long 1071924224 > > > + .long 0 > > > + .long 1071922176 > > > + .long 0 > > > + .long 1071920128 > > > + .long 0 > > > + .long 1071918080 > > > + .long 0 > > > + .long 1071916032 > > > + .long 0 > > > + .long 1071913984 > > > + .long 0 > > > + .long 1071911936 > > > + .long 0 > > > + .long 1071909888 > > > + .long 0 > > > + .long 1071907840 > > > + .long 0 > > > + .long 1071905792 > > > + .long 0 > > > + .long 1071903744 > > > + .long 0 > > > + .long 1071901696 > > > + .long 0 > > > + .long 1071900672 > > > + .long 0 > > > + .long 1071898624 > > > + .long 0 > > > + .long 1071896576 > > > + .long 0 > > > + .long 1071894528 > > > + .long 0 > > > + .long 1071892480 > > > + .long 0 > > > + .long 1071890432 > > > + .long 0 > > > + .long 1071888384 > > > + .long 0 > > > + .long 1071886336 > > > + .long 0 > > > + .long 1071884288 > > > + .long 0 > > > + .long 1071883264 > > > + .long 0 > > > + .long 1071881216 > > > + .long 0 > > > + .long 1071879168 > > > + .long 0 > > > + .long 1071877120 > > > + .long 0 > > > + .long 1071875072 > > > + .long 0 > > > + .long 1071873024 > > > + .long 0 > > > + .long 1071872000 > > > + .long 0 > > > + .long 1071869952 > > > + .long 0 > > > + .long 1071867904 > > > + .long 0 > > > + .long 1071865856 > > > + .long 0 > > > + .long 1071864832 > > > + .long 0 > > > + .long 1071862784 > > > + .long 0 > > > + .long 1071860736 > > > + .long 0 > > > + .long 1071858688 > > > + .long 0 > > > + .long 1071856640 > > > + .long 0 > > > + .long 1071855616 > > > + .long 0 > > > + .long 1071853568 > > > + .long 0 > > > + .long 1071851520 > > > + .long 0 > > > + .long 1071850496 > > > + .long 0 > > > + .long 1071848448 > > > + .long 0 > > > + .long 1071846400 > > > + .long 0 > > > + .long 1071844352 > > > + .long 0 > > > + .long 1071843328 > > > + .long 0 > > > + .long 1071841280 > > > + .long 0 > > > + .long 1071839232 > > > + .long 0 > > > + .long 1071838208 > > > + .long 0 > > > + .long 1071836160 > > > + .long 0 > > > + .long 1071834112 > > > + .long 0 > > > + .long 1071833088 > > > + .long 0 > > > + .long 1071831040 > > > + .long 0 > > > + .long 1071830016 > > > + .long 0 > > > + .long 1071827968 > > > + .long 0 > > > + .long 1071825920 > > > + .long 0 > > > + .long 1071824896 > > > + .long 0 > > > + .long 1071822848 > > > + .long 0 > > > + .long 1071821824 > > > + .long 0 > > > + .long 1071819776 > > > + .long 0 > > > + .long 1071817728 > > > + .long 0 > > > + .long 1071816704 > > > + .long 0 > > > + .long 1071814656 > > > + .long 0 > > > + .long 1071813632 > > > + .long 0 > > > + .long 1071811584 > > > + .long 0 > > > + .long 1071810560 > > > + .long 0 > > > + .long 1071808512 > > > + .long 0 > > > + .long 1071806464 > > > + .long 0 > > > + .long 1071805440 > > > + .long 0 > > > + .long 1071803392 > > > + .long 0 > > > + .long 1071802368 > > > + .long 0 > > > + .long 1071800320 > > > + .long 0 > > > + .long 1071799296 > > > + .long 0 > > > + .long 1071797248 > > > + .long 0 > > > + .long 1071796224 > > > + .long 0 > > > + .long 1071794176 > > > + .long 0 > > > + .long 1071793152 > > > + .long 0 > > > + .long 1071791104 > > > + .long 0 > > > + .long 1071790080 > > > + .long 0 > > > + .long 1071788032 > > > + .long 0 > > > + .long 1071787008 > > > + .long 0 > > > + .long 1071784960 > > > + .long 0 > > > + .long 1071783936 > > > + .long 0 > > > + .long 1071782912 > > > + .long 0 > > > + .long 1071780864 > > > + .long 0 > > > + .long 1071779840 > > > + .long 0 > > > + .long 1071777792 > > > + .long 0 > > > + .long 1071776768 > > > + .long 0 > > > + .long 1071774720 > > > + .long 0 > > > + .long 1071773696 > > > + .long 0 > > > + .long 1071772672 > > > + .long 0 > > > + .long 1071770624 > > > + .long 0 > > > + .long 1071769600 > > > + .long 0 > > > + .long 1071767552 > > > + .long 0 > > > + .long 1071766528 > > > + .long 0 > > > + .long 1071765504 > > > + .long 0 > > > + .long 1071763456 > > > + .long 0 > > > + .long 1071762432 > > > + .long 0 > > > + .long 1071760384 > > > + .long 0 > > > + .long 1071759360 > > > + .long 0 > > > + .long 1071758336 > > > + .long 0 > > > + .long 1071756288 > > > + .long 0 > > > + .long 1071755264 > > > + .long 0 > > > + .long 1071754240 > > > + .long 0 > > > + .long 1071752192 > > > + .long 0 > > > + .long 1071751168 > > > + .long 0 > > > + .long 1071750144 > > > + .long 0 > > > + .long 1071748096 > > > + .long 0 > > > + .long 1071747072 > > > + .long 0 > > > + .long 1071746048 > > > + .long 0 > > > + .long 1071744000 > > > + .long 0 > > > + .long 1071742976 > > > + .long 0 > > > + .long 1071741952 > > > + .long 0 > > > + .long 1071739904 > > > + .long 0 > > > + .long 1071738880 > > > + .long 0 > > > + .long 1071737856 > > > + .long 0 > > > + .long 1071736832 > > > + .long 0 > > > + .long 1071734784 > > > + .long 0 > > > + .long 1071733760 > > > + .long 0 > > > + .long 1071732736 > > > + .long 0 > > > + .long 1071730688 > > > + .long 0 > > > + .long 1071729664 > > > + .long 0 > > > + .long 1071728640 > > > + .long 0 > > > + .long 1071727616 > > > + .long 0 > > > + .long 1071725568 > > > + .long 0 > > > + .long 1071724544 > > > + .long 0 > > > + .long 1071723520 > > > + .long 0 > > > + .long 1071722496 > > > + .long 0 > > > + .long 1071720448 > > > + .long 0 > > > + .long 1071719424 > > > + .long 0 > > > + .long 1071718400 > > > + .long 0 > > > + .long 1071717376 > > > + .long 0 > > > + .long 1071715328 > > > + .long 0 > > > + .long 1071714304 > > > + .long 0 > > > + .long 1071713280 > > > + .long 0 > > > + .long 1071712256 > > > + .long 0 > > > + .long 1071711232 > > > + .long 0 > > > + .long 1071709184 > > > + .long 0 > > > + .long 1071708160 > > > + .long 0 > > > + .long 1071707136 > > > + .long 0 > > > + .long 1071706112 > > > + .long 0 > > > + .long 1071705088 > > > + .long 0 > > > + .long 1071704064 > > > + .long 0 > > > + .long 1071702016 > > > + .long 0 > > > + .long 1071700992 > > > + .long 0 > > > + .long 1071699968 > > > + .long 0 > > > + .long 1071698944 > > > + .long 0 > > > + .long 1071697920 > > > + .long 0 > > > + .long 1071696896 > > > + .long 0 > > > + .long 1071694848 > > > + .long 0 > > > + .long 1071693824 > > > + .long 0 > > > + .long 1071692800 > > > + .long 0 > > > + .long 1071691776 > > > + .long 0 > > > + .long 1071690752 > > > + .long 0 > > > + .long 1071689728 > > > + .long 0 > > > + .long 1071688704 > > > + .long 0 > > > + .long 1071686656 > > > + .long 0 > > > + .long 1071685632 > > > + .long 0 > > > + .long 1071684608 > > > + .long 0 > > > + .long 1071683584 > > > + .long 0 > > > + .long 1071682560 > > > + .long 0 > > > + .long 1071681536 > > > + .long 0 > > > + .long 1071680512 > > > + .long 0 > > > + .long 1071679488 > > > + .long 0 > > > + .long 1071677440 > > > + .long 0 > > > + .long 1071676416 > > > + .long 0 > > > + .long 1071675392 > > > + .long 0 > > > + .long 1071674368 > > > + .long 0 > > > + .long 1071673344 > > > + .long 0 > > > + .long 1071672320 > > > + .long 0 > > > + .long 1071671296 > > > + .long 0 > > > + .long 1071670272 > > > + .long 0 > > > + .long 1071669248 > > > + .long 0 > > > + .long 1071668224 > > > + .long 0 > > > + .long 1071667200 > > > + .long 0 > > > + .long 1071666176 > > > + .long 0 > > > + .long 1071665152 > > > + .long 0 > > > + .long 1071663104 > > > + .long 0 > > > + .long 1071662080 > > > + .long 0 > > > + .long 1071661056 > > > + .long 0 > > > + .long 1071660032 > > > + .long 0 > > > + .long 1071659008 > > > + .long 0 > > > + .long 1071657984 > > > + .long 0 > > > + .long 1071656960 > > > + .long 0 > > > + .long 1071655936 > > > + .long 0 > > > + .long 1071654912 > > > + .long 0 > > > + .long 1071653888 > > > + .long 0 > > > + .long 1071652864 > > > + .long 0 > > > + .long 1071651840 > > > + .long 0 > > > + .long 1071650816 > > > + .long 0 > > > + .long 1071649792 > > > + .long 0 > > > + .long 1071648768 > > > + .long 0 > > > + .long 1071647744 > > > + .long 0 > > > + .long 1071646720 > > > + .long 0 > > > + .long 1071645696 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 1101004800 > > > + .long 1073741824 > > > + .long 1095761920 > > > + .long 256 > > > + .long 1118830592 > > > + .long 0 > > > + .long 1017118720 > > > + .long 1413754136 > > > + .long 1073291771 > > > + .long 856972295 > > > + .long 1016178214 > > > + .long 1413754136 > > > + .long 1074340347 > > > + .long 856972295 > > > + .long 1017226790 > > > + .long 0 > > > + .long 1072693248 > > > + .long 0 > > > + .long 1071644672 > > > + .long 0 > > > + .long 0 > > > + .long 1476395008 > > > + .long 1069897045 > > > + .long 1768958041 > > > + .long 3189069141 > > > + .long 805306368 > > > + .long 1068708659 > > > + .long 3580333578 > > > + .long 1040816593 > > > + .long 3067382784 > > > + .long 1067899757 > > > + .long 3397590151 > > > + .long 1067392113 > > > + .long 2939529726 > > > + .long 1066854585 > > > + .long 1423429166 > > > + .long 1066517752 > > > + .long 1775218934 > > > + .long 1066178574 > > > + .long 1185392460 > > > + .long 1065859647 > > > + .long 289998670 > > > + .long 1065577550 > > > + .long 3179807072 > > > + .long 1065648121 > > > + .long 3781007284 > > > + .long 1061576176 > > > + .long 2482106687 > > > + .long 1067019199 > > > + .long 763519713 > > > + .long 3214591591 > > > + .long 3695107454 > > > + .long 1067530646 > > > + .long 0 > > > + .long 1073741824 > > > + .long 1124791109 > > > + .long 1006764147 > > > + .long 1476395008 > > > + .long 1069897045 > > > + .long 1953913876 > > > + .long 3189069141 > > > + .long 805306368 > > > + .long 1067660083 > > > + .long 165110192 > > > + .long 1039768033 > > > + .long 3067304082 > > > + .long 1065802605 > > > + .long 3404727379 > > > + .long 1064246385 > > > + .long 2737480376 > > > + .long 1062660281 > > > + .long 933797922 > > > + .long 1061274873 > > > + .long 1475716730 > > > + .long 1059887095 > > > + .long 1511619763 > > > + .long 1058519827 > > > + .long 556024211 > > > + .long 1057187555 > > > + .long 3482101045 > > > + .long 1056217350 > > > + .long 1174622859 > > > + .long 1050762633 > > > + .long 899668651 > > > + .long 1055506366 > > > + .long 1081094694 > > > + .long 3202035365 > > > + .long 2559814773 > > > + .long 1053906576 > > > + .long 0 > > > + .long 3219128320 > > > + .long 0 > > > + .long 1071120384 > > > + .long 0 > > > + .long 3218341888 > > > + .long 0 > > > + .long 1070694400 > > > + .long 0 > > > + .long 3218046976 > > > + .long 0 > > > + .long 1070391296 > > > + .long 0 > > > + .long 3217739776 > > > + .type _vmldACosHATab,@object > > > + .size _vmldACosHATab,4520 > > > + .space 88, 0x00 > > > + .align 16 > > > + > > > +.FLT_199: > > > + .long 0x00000000,0x80000000,0x00000000,0x00000000 > > > + .type .FLT_199,@object > > > + .size .FLT_199,16 > > > diff --git a/sysdeps/x86_64/fpu/svml_d_acos2_core.S b/sysdeps/x86_64/fpu/svml_d_acos2_core.S > > > new file mode 100644 > > > index 0000000000..9656478b2d > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/svml_d_acos2_core.S > > > @@ -0,0 +1,29 @@ > > > +/* Function acos vectorized with SSE2. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#include <sysdep.h> > > > +#include "svml_d_wrapper_impl.h" > > > + > > > + .text > > > +ENTRY (_ZGVbN2v_acos) > > > +WRAPPER_IMPL_SSE2 acos > > > +END (_ZGVbN2v_acos) > > > + > > > +#ifndef USE_MULTIARCH > > > + libmvec_hidden_def (_ZGVbN2v_acos) > > > +#endif > > > diff --git a/sysdeps/x86_64/fpu/svml_d_acos4_core.S b/sysdeps/x86_64/fpu/svml_d_acos4_core.S > > > new file mode 100644 > > > index 0000000000..e99cb4ae78 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/svml_d_acos4_core.S > > > @@ -0,0 +1,29 @@ > > > +/* Function acos vectorized with AVX2, wrapper version. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#include <sysdep.h> > > > +#include "svml_d_wrapper_impl.h" > > > + > > > + .text > > > +ENTRY (_ZGVdN4v_acos) > > > +WRAPPER_IMPL_AVX _ZGVbN2v_acos > > > +END (_ZGVdN4v_acos) > > > + > > > +#ifndef USE_MULTIARCH > > > + libmvec_hidden_def (_ZGVdN4v_acos) > > > +#endif > > > diff --git a/sysdeps/x86_64/fpu/svml_d_acos4_core_avx.S b/sysdeps/x86_64/fpu/svml_d_acos4_core_avx.S > > > new file mode 100644 > > > index 0000000000..7cbcbc965c > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/svml_d_acos4_core_avx.S > > > @@ -0,0 +1,25 @@ > > > +/* Function acos vectorized in AVX ISA as wrapper to SSE4 ISA version. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#include <sysdep.h> > > > +#include "svml_d_wrapper_impl.h" > > > + > > > + .text > > > +ENTRY (_ZGVcN4v_acos) > > > +WRAPPER_IMPL_AVX _ZGVbN2v_acos > > > +END (_ZGVcN4v_acos) > > > diff --git a/sysdeps/x86_64/fpu/svml_d_acos8_core.S b/sysdeps/x86_64/fpu/svml_d_acos8_core.S > > > new file mode 100644 > > > index 0000000000..e26b30d81a > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/svml_d_acos8_core.S > > > @@ -0,0 +1,25 @@ > > > +/* Function acos vectorized with AVX-512, wrapper to AVX2. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#include <sysdep.h> > > > +#include "svml_d_wrapper_impl.h" > > > + > > > + .text > > > +ENTRY (_ZGVeN8v_acos) > > > +WRAPPER_IMPL_AVX512 _ZGVdN4v_acos > > > +END (_ZGVeN8v_acos) > > > diff --git a/sysdeps/x86_64/fpu/svml_s_acosf16_core.S b/sysdeps/x86_64/fpu/svml_s_acosf16_core.S > > > new file mode 100644 > > > index 0000000000..70e046d492 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/svml_s_acosf16_core.S > > > @@ -0,0 +1,25 @@ > > > +/* Function acosf vectorized with AVX-512. Wrapper to AVX2 version. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#include <sysdep.h> > > > +#include "svml_s_wrapper_impl.h" > > > + > > > + .text > > > +ENTRY (_ZGVeN16v_acosf) > > > +WRAPPER_IMPL_AVX512 _ZGVdN8v_acosf > > > +END (_ZGVeN16v_acosf) > > > diff --git a/sysdeps/x86_64/fpu/svml_s_acosf4_core.S b/sysdeps/x86_64/fpu/svml_s_acosf4_core.S > > > new file mode 100644 > > > index 0000000000..36354b32b5 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/svml_s_acosf4_core.S > > > @@ -0,0 +1,29 @@ > > > +/* Function acosf vectorized with SSE2, wrapper version. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#include <sysdep.h> > > > +#include "svml_s_wrapper_impl.h" > > > + > > > + .text > > > +ENTRY (_ZGVbN4v_acosf) > > > +WRAPPER_IMPL_SSE2 acosf > > > +END (_ZGVbN4v_acosf) > > > + > > > +#ifndef USE_MULTIARCH > > > + libmvec_hidden_def (_ZGVbN4v_acosf) > > > +#endif > > > diff --git a/sysdeps/x86_64/fpu/svml_s_acosf8_core.S b/sysdeps/x86_64/fpu/svml_s_acosf8_core.S > > > new file mode 100644 > > > index 0000000000..f08864a511 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/svml_s_acosf8_core.S > > > @@ -0,0 +1,29 @@ > > > +/* Function acosf vectorized with AVX2, wrapper version. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#include <sysdep.h> > > > +#include "svml_s_wrapper_impl.h" > > > + > > > + .text > > > +ENTRY (_ZGVdN8v_acosf) > > > +WRAPPER_IMPL_AVX _ZGVbN4v_acosf > > > +END (_ZGVdN8v_acosf) > > > + > > > +#ifndef USE_MULTIARCH > > > + libmvec_hidden_def (_ZGVdN8v_acosf) > > > +#endif > > > diff --git a/sysdeps/x86_64/fpu/svml_s_acosf8_core_avx.S b/sysdeps/x86_64/fpu/svml_s_acosf8_core_avx.S > > > new file mode 100644 > > > index 0000000000..f3ed4d8e78 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/svml_s_acosf8_core_avx.S > > > @@ -0,0 +1,25 @@ > > > +/* Function acosf vectorized in AVX ISA as wrapper to SSE4 ISA version. > > > + Copyright (C) 2021 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 > > > + <https://www.gnu.org/licenses/>. */ > > > + > > > +#include <sysdep.h> > > > +#include "svml_s_wrapper_impl.h" > > > + > > > + .text > > > +ENTRY (_ZGVcN8v_acosf) > > > +WRAPPER_IMPL_AVX _ZGVbN4v_acosf > > > +END (_ZGVcN8v_acosf) > > > diff --git a/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx.c b/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx.c > > > new file mode 100644 > > > index 0000000000..4f74b4260a > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx.c > > > @@ -0,0 +1 @@ > > > +#include "test-double-libmvec-acos.c" > > > diff --git a/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx2.c b/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx2.c > > > new file mode 100644 > > > index 0000000000..4f74b4260a > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx2.c > > > @@ -0,0 +1 @@ > > > +#include "test-double-libmvec-acos.c" > > > diff --git a/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx512f.c b/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx512f.c > > > new file mode 100644 > > > index 0000000000..4f74b4260a > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx512f.c > > > @@ -0,0 +1 @@ > > > +#include "test-double-libmvec-acos.c" > > > diff --git a/sysdeps/x86_64/fpu/test-double-libmvec-acos.c b/sysdeps/x86_64/fpu/test-double-libmvec-acos.c > > > new file mode 100644 > > > index 0000000000..e38b8ce821 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/test-double-libmvec-acos.c > > > @@ -0,0 +1,3 @@ > > > +#define LIBMVEC_TYPE double > > > +#define LIBMVEC_FUNC acos > > > +#include "test-vector-abi-arg1.h" > > > diff --git a/sysdeps/x86_64/fpu/test-double-vlen2-wrappers.c b/sysdeps/x86_64/fpu/test-double-vlen2-wrappers.c > > > index ed932fc98d..0abc7d2021 100644 > > > --- a/sysdeps/x86_64/fpu/test-double-vlen2-wrappers.c > > > +++ b/sysdeps/x86_64/fpu/test-double-vlen2-wrappers.c > > > @@ -27,6 +27,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sin), _ZGVbN2v_sin) > > > VECTOR_WRAPPER (WRAPPER_NAME (log), _ZGVbN2v_log) > > > VECTOR_WRAPPER (WRAPPER_NAME (exp), _ZGVbN2v_exp) > > > VECTOR_WRAPPER_ff (WRAPPER_NAME (pow), _ZGVbN2vv_pow) > > > +VECTOR_WRAPPER (WRAPPER_NAME (acos), _ZGVbN2v_acos) > > > > > > #define VEC_INT_TYPE __m128i > > > > > > diff --git a/sysdeps/x86_64/fpu/test-double-vlen4-avx2-wrappers.c b/sysdeps/x86_64/fpu/test-double-vlen4-avx2-wrappers.c > > > index 3a6e37044f..dda093b914 100644 > > > --- a/sysdeps/x86_64/fpu/test-double-vlen4-avx2-wrappers.c > > > +++ b/sysdeps/x86_64/fpu/test-double-vlen4-avx2-wrappers.c > > > @@ -30,6 +30,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sin), _ZGVdN4v_sin) > > > VECTOR_WRAPPER (WRAPPER_NAME (log), _ZGVdN4v_log) > > > VECTOR_WRAPPER (WRAPPER_NAME (exp), _ZGVdN4v_exp) > > > VECTOR_WRAPPER_ff (WRAPPER_NAME (pow), _ZGVdN4vv_pow) > > > +VECTOR_WRAPPER (WRAPPER_NAME (acos), _ZGVdN4v_acos) > > > > > > #ifndef __ILP32__ > > > # define VEC_INT_TYPE __m256i > > > diff --git a/sysdeps/x86_64/fpu/test-double-vlen4-wrappers.c b/sysdeps/x86_64/fpu/test-double-vlen4-wrappers.c > > > index 99db4e7616..f3230463bb 100644 > > > --- a/sysdeps/x86_64/fpu/test-double-vlen4-wrappers.c > > > +++ b/sysdeps/x86_64/fpu/test-double-vlen4-wrappers.c > > > @@ -27,6 +27,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sin), _ZGVcN4v_sin) > > > VECTOR_WRAPPER (WRAPPER_NAME (log), _ZGVcN4v_log) > > > VECTOR_WRAPPER (WRAPPER_NAME (exp), _ZGVcN4v_exp) > > > VECTOR_WRAPPER_ff (WRAPPER_NAME (pow), _ZGVcN4vv_pow) > > > +VECTOR_WRAPPER (WRAPPER_NAME (acos), _ZGVcN4v_acos) > > > > > > #define VEC_INT_TYPE __m128i > > > > > > diff --git a/sysdeps/x86_64/fpu/test-double-vlen8-wrappers.c b/sysdeps/x86_64/fpu/test-double-vlen8-wrappers.c > > > index 251d429ac0..cf9f52faf0 100644 > > > --- a/sysdeps/x86_64/fpu/test-double-vlen8-wrappers.c > > > +++ b/sysdeps/x86_64/fpu/test-double-vlen8-wrappers.c > > > @@ -27,6 +27,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sin), _ZGVeN8v_sin) > > > VECTOR_WRAPPER (WRAPPER_NAME (log), _ZGVeN8v_log) > > > VECTOR_WRAPPER (WRAPPER_NAME (exp), _ZGVeN8v_exp) > > > VECTOR_WRAPPER_ff (WRAPPER_NAME (pow), _ZGVeN8vv_pow) > > > +VECTOR_WRAPPER (WRAPPER_NAME (acos), _ZGVeN8v_acos) > > > > > > #ifndef __ILP32__ > > > # define VEC_INT_TYPE __m512i > > > diff --git a/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx.c b/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx.c > > > new file mode 100644 > > > index 0000000000..1e6474dfa2 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx.c > > > @@ -0,0 +1 @@ > > > +#include "test-float-libmvec-acosf.c" > > > diff --git a/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx2.c b/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx2.c > > > new file mode 100644 > > > index 0000000000..1e6474dfa2 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx2.c > > > @@ -0,0 +1 @@ > > > +#include "test-float-libmvec-acosf.c" > > > diff --git a/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx512f.c b/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx512f.c > > > new file mode 100644 > > > index 0000000000..1e6474dfa2 > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx512f.c > > > @@ -0,0 +1 @@ > > > +#include "test-float-libmvec-acosf.c" > > > diff --git a/sysdeps/x86_64/fpu/test-float-libmvec-acosf.c b/sysdeps/x86_64/fpu/test-float-libmvec-acosf.c > > > new file mode 100644 > > > index 0000000000..fb47f974fd > > > --- /dev/null > > > +++ b/sysdeps/x86_64/fpu/test-float-libmvec-acosf.c > > > @@ -0,0 +1,3 @@ > > > +#define LIBMVEC_TYPE float > > > +#define LIBMVEC_FUNC acosf > > > +#include "test-vector-abi-arg1.h" > > > diff --git a/sysdeps/x86_64/fpu/test-float-vlen16-wrappers.c b/sysdeps/x86_64/fpu/test-float-vlen16-wrappers.c > > > index c1d14cd79e..abbd3ed870 100644 > > > --- a/sysdeps/x86_64/fpu/test-float-vlen16-wrappers.c > > > +++ b/sysdeps/x86_64/fpu/test-float-vlen16-wrappers.c > > > @@ -27,6 +27,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sinf), _ZGVeN16v_sinf) > > > VECTOR_WRAPPER (WRAPPER_NAME (logf), _ZGVeN16v_logf) > > > VECTOR_WRAPPER (WRAPPER_NAME (expf), _ZGVeN16v_expf) > > > VECTOR_WRAPPER_ff (WRAPPER_NAME (powf), _ZGVeN16vv_powf) > > > +VECTOR_WRAPPER (WRAPPER_NAME (acosf), _ZGVeN16v_acosf) > > > > > > #define VEC_INT_TYPE __m512i > > > > > > diff --git a/sysdeps/x86_64/fpu/test-float-vlen4-wrappers.c b/sysdeps/x86_64/fpu/test-float-vlen4-wrappers.c > > > index d23c372060..8a24027952 100644 > > > --- a/sysdeps/x86_64/fpu/test-float-vlen4-wrappers.c > > > +++ b/sysdeps/x86_64/fpu/test-float-vlen4-wrappers.c > > > @@ -27,6 +27,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sinf), _ZGVbN4v_sinf) > > > VECTOR_WRAPPER (WRAPPER_NAME (logf), _ZGVbN4v_logf) > > > VECTOR_WRAPPER (WRAPPER_NAME (expf), _ZGVbN4v_expf) > > > VECTOR_WRAPPER_ff (WRAPPER_NAME (powf), _ZGVbN4vv_powf) > > > +VECTOR_WRAPPER (WRAPPER_NAME (acosf), _ZGVbN4v_acosf) > > > > > > #define VEC_INT_TYPE __m128i > > > > > > diff --git a/sysdeps/x86_64/fpu/test-float-vlen8-avx2-wrappers.c b/sysdeps/x86_64/fpu/test-float-vlen8-avx2-wrappers.c > > > index 3152cffb0c..aff0442606 100644 > > > --- a/sysdeps/x86_64/fpu/test-float-vlen8-avx2-wrappers.c > > > +++ b/sysdeps/x86_64/fpu/test-float-vlen8-avx2-wrappers.c > > > @@ -30,6 +30,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sinf), _ZGVdN8v_sinf) > > > VECTOR_WRAPPER (WRAPPER_NAME (logf), _ZGVdN8v_logf) > > > VECTOR_WRAPPER (WRAPPER_NAME (expf), _ZGVdN8v_expf) > > > VECTOR_WRAPPER_ff (WRAPPER_NAME (powf), _ZGVdN8vv_powf) > > > +VECTOR_WRAPPER (WRAPPER_NAME (acosf), _ZGVdN8v_acosf) > > > > > > /* Redefinition of wrapper to be compatible with _ZGVdN8vvv_sincosf. */ > > > #undef VECTOR_WRAPPER_fFF > > > diff --git a/sysdeps/x86_64/fpu/test-float-vlen8-wrappers.c b/sysdeps/x86_64/fpu/test-float-vlen8-wrappers.c > > > index a8492abfef..913584d111 100644 > > > --- a/sysdeps/x86_64/fpu/test-float-vlen8-wrappers.c > > > +++ b/sysdeps/x86_64/fpu/test-float-vlen8-wrappers.c > > > @@ -27,6 +27,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sinf), _ZGVcN8v_sinf) > > > VECTOR_WRAPPER (WRAPPER_NAME (logf), _ZGVcN8v_logf) > > > VECTOR_WRAPPER (WRAPPER_NAME (expf), _ZGVcN8v_expf) > > > VECTOR_WRAPPER_ff (WRAPPER_NAME (powf), _ZGVcN8vv_powf) > > > +VECTOR_WRAPPER (WRAPPER_NAME (acosf), _ZGVcN8v_acosf) > > > > > > #define VEC_INT_TYPE __m128i > > > > > > -- > > > 2.31.1 > > >
On Wed, 8 Dec 2021, Sunil Pandey via Libc-alpha wrote: > > > Where this functions implemented by hand or is this compiled output? > > These functions are compiler generated. Functions in glibc must be in source code form, where, as defined in LGPLv2.1, '"Source code" for a work means the preferred form of the work for making modifications to it.'. This is a fundamental requirement for being free software. If assembly code is compiler-generated, one of the following must apply for it to be included in glibc: (a) The generated code is, nevertheless, the preferred form for modification - for example, the compiler was only used to generate an initial rough version of code that has subsequently been cleaned up and maintained manually, and maintaining that version manually is more appropriate than regenerating from the compiler input. This might apply in a few cases of e.g. low-level functions doing things that can't be expressed in C and where a compiler won't necessarily generate code meeting some requirements that cannot be expressed in C, but still provides a convenient starting point to edit into something that does meet those requirements. In such a case, the assembly code would generally be short and include a comment with the C source that was used to illustrate the intended semantics. The larger the code, the more justification needed for assembly code being the preferred form for modification. Note that we have a strong preference in recent years for moving away from architecture-specific .S optimized files and having architecture-independent C sources instead, which are optimized by the compiler used to build glibc. (b) The input to the compiler is included in glibc, the compiler itself is available to the public as free software, and the details of the compiler version and configuration used are included, sufficient to enable anyone to reproduce the output. (But typically it would be better to have normal C source compiled with GCC as part of building glibc, so a strong justification for having compiler output included would still be needed.) This can be relaxed a bit for the tables of numerical values with properly documented semantics, because if the semantics are properly defined then any code implementing those semantics suffices for reproduction. (If something has a comment giving its semantics as 10000 bits of pi, those semantics are at least as meaningfully the source code as any one particular program for calculating pi that someone might have used to generate that bit of code.)
diff --git a/bits/libm-simd-decl-stubs.h b/bits/libm-simd-decl-stubs.h index b80ff332a0..2ccdd1fc53 100644 --- a/bits/libm-simd-decl-stubs.h +++ b/bits/libm-simd-decl-stubs.h @@ -98,4 +98,15 @@ #define __DECL_SIMD_powf32x #define __DECL_SIMD_powf64x #define __DECL_SIMD_powf128x + +#define __DECL_SIMD_acos +#define __DECL_SIMD_acosf +#define __DECL_SIMD_acosl +#define __DECL_SIMD_acosf16 +#define __DECL_SIMD_acosf32 +#define __DECL_SIMD_acosf64 +#define __DECL_SIMD_acosf128 +#define __DECL_SIMD_acosf32x +#define __DECL_SIMD_acosf64x +#define __DECL_SIMD_acosf128x #endif diff --git a/math/bits/mathcalls.h b/math/bits/mathcalls.h index da4cf4e10c..2cc6654208 100644 --- a/math/bits/mathcalls.h +++ b/math/bits/mathcalls.h @@ -50,7 +50,7 @@ /* Trigonometric functions. */ /* Arc cosine of X. */ -__MATHCALL (acos,, (_Mdouble_ __x)); +__MATHCALL_VEC (acos,, (_Mdouble_ __x)); /* Arc sine of X. */ __MATHCALL (asin,, (_Mdouble_ __x)); /* Arc tangent of X. */ diff --git a/sysdeps/unix/sysv/linux/x86_64/libmvec.abilist b/sysdeps/unix/sysv/linux/x86_64/libmvec.abilist index 363d4ace1e..b37b55777e 100644 --- a/sysdeps/unix/sysv/linux/x86_64/libmvec.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/libmvec.abilist @@ -46,3 +46,11 @@ GLIBC_2.22 _ZGVeN8v_log F GLIBC_2.22 _ZGVeN8v_sin F GLIBC_2.22 _ZGVeN8vv_pow F GLIBC_2.22 _ZGVeN8vvv_sincos F +GLIBC_2.35 _ZGVbN2v_acos F +GLIBC_2.35 _ZGVbN4v_acosf F +GLIBC_2.35 _ZGVcN4v_acos F +GLIBC_2.35 _ZGVcN8v_acosf F +GLIBC_2.35 _ZGVdN4v_acos F +GLIBC_2.35 _ZGVdN8v_acosf F +GLIBC_2.35 _ZGVeN16v_acosf F +GLIBC_2.35 _ZGVeN8v_acos F diff --git a/sysdeps/x86/fpu/bits/math-vector.h b/sysdeps/x86/fpu/bits/math-vector.h index dc0bfb3705..dabb74cbb9 100644 --- a/sysdeps/x86/fpu/bits/math-vector.h +++ b/sysdeps/x86/fpu/bits/math-vector.h @@ -58,6 +58,10 @@ # define __DECL_SIMD_pow __DECL_SIMD_x86_64 # undef __DECL_SIMD_powf # define __DECL_SIMD_powf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_acos +# define __DECL_SIMD_acos __DECL_SIMD_x86_64 +# undef __DECL_SIMD_acosf +# define __DECL_SIMD_acosf __DECL_SIMD_x86_64 # endif #endif diff --git a/sysdeps/x86_64/fpu/Makeconfig b/sysdeps/x86_64/fpu/Makeconfig index 503e9b5ffa..2d6f13246e 100644 --- a/sysdeps/x86_64/fpu/Makeconfig +++ b/sysdeps/x86_64/fpu/Makeconfig @@ -22,6 +22,7 @@ postclean-generated += libmvec.mk # Define for both math and mathvec directories. libmvec-funcs = \ + acos \ cos \ exp \ log \ diff --git a/sysdeps/x86_64/fpu/Versions b/sysdeps/x86_64/fpu/Versions index 08132045d6..8d337bf716 100644 --- a/sysdeps/x86_64/fpu/Versions +++ b/sysdeps/x86_64/fpu/Versions @@ -12,5 +12,9 @@ libmvec { _ZGVbN4v_expf; _ZGVcN8v_expf; _ZGVdN8v_expf; _ZGVeN16v_expf; _ZGVbN4vv_powf; _ZGVcN8vv_powf; _ZGVdN8vv_powf; _ZGVeN16vv_powf; _ZGVbN4vvv_sincosf; _ZGVcN8vvv_sincosf; _ZGVdN8vvv_sincosf; _ZGVeN16vvv_sincosf; +}, + GLIBC_2.35 { + _ZGVbN2v_acos; _ZGVcN4v_acos; _ZGVdN4v_acos; _ZGVeN8v_acos; + _ZGVbN4v_acosf; _ZGVcN8v_acosf; _ZGVdN8v_acosf; _ZGVeN16v_acosf; } } diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps index 312575f933..85a568ed29 100644 --- a/sysdeps/x86_64/fpu/libm-test-ulps +++ b/sysdeps/x86_64/fpu/libm-test-ulps @@ -25,6 +25,26 @@ float: 1 float128: 1 ldouble: 2 +Function: "acos_vlen16": +float: 1 + +Function: "acos_vlen2": +double: 1 + +Function: "acos_vlen4": +double: 1 +float: 2 + +Function: "acos_vlen4_avx2": +double: 1 + +Function: "acos_vlen8": +double: 1 +float: 2 + +Function: "acos_vlen8_avx2": +float: 1 + Function: "acosh": double: 2 float: 2 diff --git a/sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx512-skx.h b/sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx512-skx.h new file mode 100644 index 0000000000..3aed563dde --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx512-skx.h @@ -0,0 +1,39 @@ +/* Common definition for libmathvec ifunc selections optimized with + AVX512. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#include <init-arch.h> + +#undef PASTER2 +#define PASTER2(x,y) x##_##y + +extern void REDIRECT_NAME (void); +extern __typeof (REDIRECT_NAME) OPTIMIZE (avx2_wrapper) attribute_hidden; +extern __typeof (REDIRECT_NAME) OPTIMIZE (skx) attribute_hidden; + +static inline void * +IFUNC_SELECTOR (void) +{ + const struct cpu_features* cpu_features = __get_cpu_features (); + + if (!CPU_FEATURES_ARCH_P (cpu_features, MathVec_Prefer_No_AVX512) + && CPU_FEATURE_USABLE_P (cpu_features, AVX512DQ)) + return OPTIMIZE (skx); + + return OPTIMIZE (avx2_wrapper); +} diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core-sse2.S b/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core-sse2.S new file mode 100644 index 0000000000..25fb8d0cac --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core-sse2.S @@ -0,0 +1,20 @@ +/* SSE2 version of vectorized acos, vector length is 2. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#define _ZGVbN2v_acos _ZGVbN2v_acos_sse2 +#include "../svml_d_acos2_core.S" diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core.c b/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core.c new file mode 100644 index 0000000000..5ba5d6fac2 --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core.c @@ -0,0 +1,27 @@ +/* Multiple versions of vectorized acos, vector length is 2. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#define SYMBOL_NAME _ZGVbN2v_acos +#include "ifunc-mathvec-sse4_1.h" + +libc_ifunc_redirected (REDIRECT_NAME, SYMBOL_NAME, IFUNC_SELECTOR ()); + +#ifdef SHARED +__hidden_ver1 (_ZGVbN2v_acos, __GI__ZGVbN2v_acos, __redirect__ZGVbN2v_acos) + __attribute__ ((visibility ("hidden"))); +#endif diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core_sse4.S b/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core_sse4.S new file mode 100644 index 0000000000..900ddb92ed --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos2_core_sse4.S @@ -0,0 +1,2922 @@ +/* Function acos vectorized with SSE4. + Copyright (C) 2021 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 + https://www.gnu.org/licenses/. */ + +/* + * ALGORITHM DESCRIPTION: + * + * SelMask = (|x| >= 0.5) ? 1 : 0; + * R = SelMask ? sqrt(0.5 - 0.5*|x|) : |x| + * acos(|x|) = SelMask ? 2*Poly(R) : (Pi/2 - Poly(R)) + * acos(x) = sign(x) ? (Pi - acos(|x|)) : acos(|x|) + * + */ + +#include <sysdep.h> + + .text +ENTRY(_ZGVbN2v_acos_sse4) + pushq %rbp + cfi_def_cfa_offset(16) + movq %rsp, %rbp + cfi_def_cfa(6, 16) + cfi_offset(6, -16) + andq $-64, %rsp + subq $256, %rsp + movups __svml_dacos_data_internal(%rip), %xmm3 + movups 64+__svml_dacos_data_internal(%rip), %xmm6 + +/* x = -|arg| */ + movaps %xmm3, %xmm2 + orps %xmm0, %xmm2 + +/* Y = 0.5 + 0.5*(-x) */ + movaps %xmm6, %xmm4 + mulpd %xmm2, %xmm4 + addpd %xmm4, %xmm6 + +/* S ~ 2*sqrt(Y) */ + cvtpd2ps %xmm6, %xmm7 + +/* NaN processed in special branch (so wind test passed) */ + movups 256+__svml_dacos_data_internal(%rip), %xmm1 + +/* x^2 */ + movaps %xmm2, %xmm5 + cmpnlepd %xmm2, %xmm1 + mulpd %xmm2, %xmm5 + movmskpd %xmm1, %edx + movlhps %xmm7, %xmm7 + andps %xmm0, %xmm3 + movups %xmm8, 112(%rsp) + rsqrtps %xmm7, %xmm1 + minpd %xmm6, %xmm5 + .cfi_escape 0x10, 0x19, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22 + cvtps2pd %xmm1, %xmm8 + movaps %xmm6, %xmm1 + movaps %xmm5, %xmm4 + cmpltpd 128+__svml_dacos_data_internal(%rip), %xmm1 + cmpnltpd %xmm6, %xmm4 + addpd %xmm6, %xmm6 + andnps %xmm8, %xmm1 + movups %xmm14, 160(%rsp) + .cfi_escape 0x10, 0x1f, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xff, 0xff, 0xff, 0x22 + movaps %xmm1, %xmm14 + mulpd %xmm1, %xmm14 + mulpd %xmm6, %xmm1 + mulpd %xmm14, %xmm6 + subpd 384+__svml_dacos_data_internal(%rip), %xmm6 + movups %xmm15, 144(%rsp) + .cfi_escape 0x10, 0x20, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x90, 0xff, 0xff, 0xff, 0x22 + movaps %xmm6, %xmm8 + movups 448+__svml_dacos_data_internal(%rip), %xmm15 + mulpd %xmm6, %xmm15 + mulpd %xmm1, %xmm8 + addpd 464+__svml_dacos_data_internal(%rip), %xmm15 + mulpd %xmm6, %xmm15 + addpd 480+__svml_dacos_data_internal(%rip), %xmm15 + mulpd %xmm15, %xmm6 + addpd 496+__svml_dacos_data_internal(%rip), %xmm6 + mulpd %xmm6, %xmm8 + +/* polynomial */ + movups 512+__svml_dacos_data_internal(%rip), %xmm6 + movaps %xmm5, %xmm15 + mulpd %xmm5, %xmm6 + mulpd %xmm5, %xmm15 + addpd 528+__svml_dacos_data_internal(%rip), %xmm6 + subpd %xmm8, %xmm1 + mulpd %xmm15, %xmm6 + movups 544+__svml_dacos_data_internal(%rip), %xmm14 + andps %xmm4, %xmm1 + mulpd %xmm5, %xmm14 + movups 576+__svml_dacos_data_internal(%rip), %xmm7 + mulpd %xmm5, %xmm7 + addpd 560+__svml_dacos_data_internal(%rip), %xmm14 + addpd 592+__svml_dacos_data_internal(%rip), %xmm7 + addpd %xmm6, %xmm14 + mulpd %xmm15, %xmm7 + movups 608+__svml_dacos_data_internal(%rip), %xmm8 + movaps %xmm15, %xmm6 + mulpd %xmm5, %xmm8 + mulpd %xmm15, %xmm6 + addpd 624+__svml_dacos_data_internal(%rip), %xmm8 + mulpd %xmm6, %xmm14 + addpd %xmm7, %xmm8 + movups 640+__svml_dacos_data_internal(%rip), %xmm7 + mulpd %xmm5, %xmm7 + addpd %xmm14, %xmm8 + addpd 656+__svml_dacos_data_internal(%rip), %xmm7 + mulpd %xmm15, %xmm8 + movups 672+__svml_dacos_data_internal(%rip), %xmm6 + +/* X<X^2 iff X<0 */ + movaps %xmm0, %xmm14 + addpd %xmm8, %xmm7 + cmpltpd %xmm5, %xmm14 + mulpd %xmm5, %xmm6 + mulpd %xmm7, %xmm15 + addpd 688+__svml_dacos_data_internal(%rip), %xmm6 + addpd %xmm15, %xmm6 + mulpd %xmm5, %xmm6 + movaps %xmm4, %xmm7 + movaps %xmm4, %xmm5 + andnps %xmm2, %xmm7 + orps %xmm1, %xmm7 + pxor %xmm3, %xmm7 + mulpd %xmm7, %xmm6 + movups 768+__svml_dacos_data_internal(%rip), %xmm8 + andps %xmm4, %xmm8 + andnps 896+__svml_dacos_data_internal(%rip), %xmm5 + andps %xmm14, %xmm8 + addpd %xmm5, %xmm8 + addpd %xmm6, %xmm7 + addpd %xmm7, %xmm8 + testl %edx, %edx + jne .LBL_1_3 + +.LBL_1_2: + movups 160(%rsp), %xmm14 + cfi_restore(31) + movaps %xmm8, %xmm0 + movups 112(%rsp), %xmm8 + cfi_restore(25) + movups 144(%rsp), %xmm15 + cfi_restore(32) + movq %rbp, %rsp + popq %rbp + cfi_def_cfa(7, 8) + cfi_restore(6) + ret + cfi_def_cfa(6, 16) + cfi_offset(6, -16) + .cfi_escape 0x10, 0x19, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1f, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x20, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x90, 0xff, 0xff, 0xff, 0x22 + +.LBL_1_3: + movups %xmm0, 128(%rsp) + movups %xmm8, 192(%rsp) + xorl %eax, %eax + movups %xmm9, 64(%rsp) + movups %xmm10, 48(%rsp) + movups %xmm11, 32(%rsp) + movups %xmm12, 16(%rsp) + movups %xmm13, (%rsp) + movq %rsi, 88(%rsp) + movq %rdi, 80(%rsp) + movq %r12, 104(%rsp) + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1a, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1b, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1e, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22 + movl %eax, %r12d + movq %r13, 96(%rsp) + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 + movl %edx, %r13d + +.LBL_1_7: + btl %r12d, %r13d + jc .LBL_1_10 + +.LBL_1_8: + incl %r12d + cmpl $2, %r12d + jl .LBL_1_7 + movups 64(%rsp), %xmm9 + cfi_restore(26) + movups 48(%rsp), %xmm10 + cfi_restore(27) + movups 32(%rsp), %xmm11 + cfi_restore(28) + movups 16(%rsp), %xmm12 + cfi_restore(29) + movups (%rsp), %xmm13 + cfi_restore(30) + movq 88(%rsp), %rsi + cfi_restore(4) + movq 80(%rsp), %rdi + cfi_restore(5) + movq 104(%rsp), %r12 + cfi_restore(12) + movq 96(%rsp), %r13 + cfi_restore(13) + movups 192(%rsp), %xmm8 + jmp .LBL_1_2 + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1a, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1b, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1e, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22 + +.LBL_1_10: + lea 128(%rsp,%r12,8), %rdi + lea 192(%rsp,%r12,8), %rsi + call __svml_dacos_cout_rare_internal + jmp .LBL_1_8 + +END(_ZGVbN2v_acos_sse4) + + .align 16,0x90 + +__svml_dacos_cout_rare_internal: + + cfi_startproc + + xorl %eax, %eax + movzwl 6(%rdi), %edx + andl $32752, %edx + movb 7(%rdi), %cl + movsd (%rdi), %xmm1 + cmpl $32752, %edx + je .LBL_2_20 + movsd %xmm1, -32(%rsp) + andb $127, %cl + movb %cl, -25(%rsp) + movsd -32(%rsp), %xmm12 + movsd 4168+_vmldACosHATab(%rip), %xmm0 + comisd %xmm12, %xmm0 + jbe .LBL_2_14 + movsd 4176+_vmldACosHATab(%rip), %xmm1 + comisd %xmm12, %xmm1 + jbe .LBL_2_10 + comisd 4128+_vmldACosHATab(%rip), %xmm12 + jbe .LBL_2_9 + movsd 4104+_vmldACosHATab(%rip), %xmm6 + movaps %xmm12, %xmm8 + mulsd %xmm12, %xmm6 + movaps %xmm12, %xmm7 + movsd %xmm6, -40(%rsp) + movsd -40(%rsp), %xmm13 + movsd 4104+_vmldACosHATab(%rip), %xmm5 + subsd -32(%rsp), %xmm13 + movsd %xmm13, -48(%rsp) + movsd -40(%rsp), %xmm15 + movsd -48(%rsp), %xmm14 + subsd %xmm14, %xmm15 + movaps %xmm12, %xmm14 + movsd %xmm15, -40(%rsp) + movsd -40(%rsp), %xmm6 + subsd %xmm6, %xmm8 + movsd %xmm8, -48(%rsp) + movsd -40(%rsp), %xmm9 + movaps %xmm9, %xmm4 + addsd %xmm9, %xmm7 + mulsd %xmm9, %xmm4 + movsd -48(%rsp), %xmm10 + movaps %xmm4, %xmm11 + mulsd %xmm10, %xmm7 + mulsd %xmm4, %xmm5 + addsd %xmm7, %xmm11 + movsd 4312+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movsd %xmm5, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4104+_vmldACosHATab(%rip), %xmm5 + subsd %xmm4, %xmm1 + addsd 4304+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movsd %xmm1, -48(%rsp) + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + addsd 4296+_vmldACosHATab(%rip), %xmm8 + subsd %xmm2, %xmm0 + mulsd %xmm11, %xmm8 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm3 + addsd 4288+_vmldACosHATab(%rip), %xmm8 + subsd %xmm3, %xmm4 + mulsd %xmm11, %xmm8 + movsd %xmm4, -48(%rsp) + movsd -40(%rsp), %xmm6 + mulsd %xmm6, %xmm9 + addsd 4280+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm6, %xmm10 + mulsd %xmm11, %xmm8 + mulsd %xmm9, %xmm5 + addsd 4272+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movaps %xmm9, %xmm0 + movsd -48(%rsp), %xmm13 + movaps %xmm6, %xmm4 + movsd %xmm5, -40(%rsp) + addsd %xmm13, %xmm7 + addsd 4264+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm7, %xmm14 + mulsd %xmm11, %xmm8 + addsd %xmm14, %xmm10 + addsd 4256+_vmldACosHATab(%rip), %xmm8 + movsd -40(%rsp), %xmm1 + mulsd %xmm11, %xmm8 + subsd %xmm9, %xmm1 + addsd %xmm10, %xmm9 + addsd 4248+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm9, %xmm7 + mulsd %xmm11, %xmm8 + movsd %xmm1, -48(%rsp) + movsd -40(%rsp), %xmm2 + movsd -48(%rsp), %xmm15 + subsd %xmm15, %xmm2 + addsd 4240+_vmldACosHATab(%rip), %xmm8 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm5 + mulsd %xmm11, %xmm8 + subsd %xmm5, %xmm0 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm3 + movsd -48(%rsp), %xmm5 + movaps %xmm5, %xmm13 + addsd 4232+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm3, %xmm4 + addsd %xmm10, %xmm13 + mulsd %xmm11, %xmm8 + mulsd %xmm13, %xmm6 + addsd 4224+_vmldACosHATab(%rip), %xmm8 + addsd %xmm7, %xmm6 + mulsd %xmm11, %xmm8 + movsd 4104+_vmldACosHATab(%rip), %xmm7 + movaps %xmm4, %xmm13 + mulsd %xmm4, %xmm7 + addsd 4216+_vmldACosHATab(%rip), %xmm8 + movsd %xmm7, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4200+_vmldACosHATab(%rip), %xmm11 + subsd %xmm4, %xmm1 + mulsd %xmm9, %xmm11 + addsd %xmm6, %xmm4 + movsd %xmm1, -48(%rsp) + movaps %xmm12, %xmm9 + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + movsd 4192+_vmldACosHATab(%rip), %xmm1 + subsd %xmm2, %xmm0 + mulsd %xmm1, %xmm3 + mulsd %xmm1, %xmm10 + mulsd %xmm4, %xmm8 + addsd %xmm3, %xmm9 + mulsd %xmm1, %xmm5 + addsd %xmm10, %xmm11 + movsd %xmm0, -40(%rsp) + addsd %xmm11, %xmm8 + movsd -40(%rsp), %xmm7 + addsd %xmm5, %xmm8 + subsd %xmm7, %xmm13 + movsd %xmm13, -48(%rsp) + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + movsd %xmm9, -40(%rsp) + addsd %xmm2, %xmm6 + movsd -40(%rsp), %xmm10 + movsd %xmm3, -56(%rsp) + subsd %xmm10, %xmm12 + movsd 4208+_vmldACosHATab(%rip), %xmm4 + addsd %xmm12, %xmm3 + mulsd %xmm4, %xmm0 + mulsd %xmm4, %xmm6 + movsd %xmm3, -48(%rsp) + movsd -40(%rsp), %xmm3 + movaps %xmm3, %xmm12 + movsd -48(%rsp), %xmm7 + addsd %xmm0, %xmm12 + addsd %xmm7, %xmm8 + movsd %xmm12, -40(%rsp) + movsd -40(%rsp), %xmm12 + subsd %xmm12, %xmm3 + addsd %xmm3, %xmm0 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm3 + movsd -48(%rsp), %xmm0 + movsd (%rdi), %xmm1 + addsd %xmm8, %xmm0 + comisd 4184+_vmldACosHATab(%rip), %xmm1 + addsd %xmm0, %xmm6 + jbe .LBL_2_7 + movsd 4136+_vmldACosHATab(%rip), %xmm2 + movaps %xmm2, %xmm0 + subsd %xmm3, %xmm0 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4144+_vmldACosHATab(%rip), %xmm0 + subsd %xmm1, %xmm2 + subsd %xmm6, %xmm0 + subsd %xmm3, %xmm2 + movsd %xmm2, -48(%rsp) + movsd -40(%rsp), %xmm1 + movsd -48(%rsp), %xmm3 + addsd %xmm3, %xmm0 + jmp .LBL_2_8 + +.LBL_2_7: + movsd 4136+_vmldACosHATab(%rip), %xmm2 + movaps %xmm3, %xmm0 + addsd %xmm2, %xmm0 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + subsd %xmm1, %xmm2 + addsd %xmm2, %xmm3 + movsd %xmm3, -48(%rsp) + movsd 4144+_vmldACosHATab(%rip), %xmm3 + movsd -40(%rsp), %xmm1 + addsd %xmm3, %xmm6 + movsd -48(%rsp), %xmm0 + addsd %xmm6, %xmm0 + +.LBL_2_8: + addsd %xmm0, %xmm1 + movsd %xmm1, (%rsi) + ret + +.LBL_2_9: + movsd 4144+_vmldACosHATab(%rip), %xmm1 + addsd %xmm0, %xmm12 + movsd %xmm12, -40(%rsp) + movsd -40(%rsp), %xmm0 + mulsd -32(%rsp), %xmm0 + movsd %xmm0, -56(%rsp) + movb -49(%rsp), %dl + movb 7(%rdi), %dil + andb $127, %dl + andb $-128, %dil + orb %dil, %dl + movb %dl, -49(%rsp) + subsd -56(%rsp), %xmm1 + addsd 4136+_vmldACosHATab(%rip), %xmm1 + movsd %xmm1, (%rsi) + ret + +.LBL_2_10: + movaps %xmm0, %xmm8 + movzwl 4174+_vmldACosHATab(%rip), %r9d + pxor %xmm13, %xmm13 + andl $-32753, %r9d + subsd %xmm12, %xmm8 + subsd %xmm0, %xmm13 + mulsd %xmm8, %xmm1 + movsd %xmm1, -56(%rsp) + movzwl -50(%rsp), %ecx + andl $32752, %ecx + shrl $4, %ecx + addl $-1023, %ecx + movl %ecx, %r8d + movl %ecx, %edx + negl %r8d + addl $1023, %r8d + andl $2047, %r8d + shll $4, %r8d + movsd %xmm0, -32(%rsp) + orl %r8d, %r9d + movw %r9w, -26(%rsp) + andl $1, %edx + movsd -32(%rsp), %xmm4 + lea _vmldACosHATab(%rip), %r8 + mulsd %xmm4, %xmm1 + movl %edx, %r10d + movaps %xmm1, %xmm15 + movsd 4112+_vmldACosHATab(%rip), %xmm6 + addsd %xmm1, %xmm15 + jne .LBL_73 + movaps %xmm1, %xmm15 + +.LBL_73: + mulsd %xmm15, %xmm6 + movaps %xmm15, %xmm7 + movaps %xmm6, %xmm9 + subl %edx, %ecx + movsd 4120+_vmldACosHATab(%rip), %xmm11 + subsd %xmm15, %xmm9 + addsd %xmm1, %xmm11 + movsd %xmm9, -48(%rsp) + movsd -48(%rsp), %xmm10 + movsd %xmm11, -24(%rsp) + subsd %xmm10, %xmm6 + movl -24(%rsp), %r11d + movaps %xmm6, %xmm14 + shll $8, %r10d + andl $511, %r11d + addl %r10d, %r11d + subsd %xmm6, %xmm7 + movsd (%r8,%r11,8), %xmm5 + addsd %xmm7, %xmm14 + mulsd %xmm5, %xmm6 + movaps %xmm5, %xmm12 + mulsd %xmm5, %xmm12 + mulsd %xmm12, %xmm14 + movsd 4512+_vmldACosHATab(%rip), %xmm4 + addsd %xmm13, %xmm14 + mulsd %xmm14, %xmm4 + shrl $1, %ecx + addsd 4504+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + addl $1023, %ecx + andl $2047, %ecx + addsd 4496+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movzwl 4174+_vmldACosHATab(%rip), %r9d + shll $4, %ecx + andl $-32753, %r9d + movsd %xmm0, -16(%rsp) + orl %ecx, %r9d + movw %r9w, -10(%rsp) + movsd -16(%rsp), %xmm9 + mulsd %xmm9, %xmm6 + addsd 4488+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movsd 4104+_vmldACosHATab(%rip), %xmm3 + mulsd %xmm6, %xmm3 + addsd 4480+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movsd %xmm3, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4352+_vmldACosHATab(%rip), %xmm11 + subsd %xmm6, %xmm1 + addsd 4472+_vmldACosHATab(%rip), %xmm4 + addsd 4360+_vmldACosHATab(%rip), %xmm11 + mulsd %xmm14, %xmm4 + mulsd %xmm8, %xmm11 + addsd 4464+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + mulsd %xmm15, %xmm4 + movsd %xmm1, -48(%rsp) + addsd %xmm4, %xmm7 + mulsd %xmm5, %xmm7 + movsd 4456+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + mulsd %xmm9, %xmm7 + addsd 4448+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm2 + movsd -48(%rsp), %xmm0 + movsd 4104+_vmldACosHATab(%rip), %xmm4 + subsd %xmm0, %xmm2 + mulsd %xmm8, %xmm4 + addsd 4440+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movaps %xmm8, %xmm0 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm14 + movsd 4104+_vmldACosHATab(%rip), %xmm2 + subsd %xmm14, %xmm6 + addsd 4432+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd %xmm6, -48(%rsp) + movsd -40(%rsp), %xmm6 + movsd -48(%rsp), %xmm10 + movsd %xmm4, -40(%rsp) + addsd %xmm10, %xmm7 + addsd 4424+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm3 + movsd 4336+_vmldACosHATab(%rip), %xmm12 + subsd %xmm8, %xmm3 + addsd 4416+_vmldACosHATab(%rip), %xmm5 + addsd 4344+_vmldACosHATab(%rip), %xmm12 + mulsd %xmm8, %xmm5 + addsd %xmm11, %xmm12 + addsd 4408+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm12 + mulsd %xmm8, %xmm5 + movsd %xmm3, -48(%rsp) + movsd -40(%rsp), %xmm1 + movsd -48(%rsp), %xmm15 + movsd 4320+_vmldACosHATab(%rip), %xmm13 + subsd %xmm15, %xmm1 + addsd 4400+_vmldACosHATab(%rip), %xmm5 + addsd 4328+_vmldACosHATab(%rip), %xmm13 + mulsd %xmm8, %xmm5 + addsd %xmm12, %xmm13 + addsd 4392+_vmldACosHATab(%rip), %xmm5 + movsd %xmm1, -40(%rsp) + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm4 + subsd %xmm4, %xmm0 + addsd 4384+_vmldACosHATab(%rip), %xmm5 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm4 + movaps %xmm4, %xmm14 + mulsd %xmm4, %xmm14 + mulsd %xmm8, %xmm5 + mulsd %xmm14, %xmm2 + addsd 4376+_vmldACosHATab(%rip), %xmm5 + movsd -48(%rsp), %xmm3 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm9 + mulsd %xmm8, %xmm5 + subsd %xmm14, %xmm9 + movsd %xmm9, -48(%rsp) + movsd -40(%rsp), %xmm11 + movsd -48(%rsp), %xmm10 + movsd 4336+_vmldACosHATab(%rip), %xmm0 + subsd %xmm10, %xmm11 + mulsd %xmm4, %xmm0 + addsd 4368+_vmldACosHATab(%rip), %xmm5 + addsd %xmm8, %xmm4 + mulsd %xmm8, %xmm5 + mulsd %xmm3, %xmm4 + mulsd %xmm8, %xmm5 + movsd %xmm11, -40(%rsp) + movaps %xmm0, %xmm1 + movsd -40(%rsp), %xmm12 + mulsd %xmm8, %xmm5 + subsd %xmm12, %xmm14 + movsd %xmm14, -48(%rsp) + addsd %xmm5, %xmm13 + movsd -40(%rsp), %xmm9 + mulsd 4352+_vmldACosHATab(%rip), %xmm9 + mulsd %xmm13, %xmm7 + addsd %xmm9, %xmm1 + movsd -48(%rsp), %xmm2 + movsd %xmm1, -40(%rsp) + addsd %xmm2, %xmm4 + movsd -40(%rsp), %xmm13 + movsd %xmm9, -24(%rsp) + subsd %xmm13, %xmm0 + mulsd 4352+_vmldACosHATab(%rip), %xmm4 + addsd %xmm0, %xmm9 + movsd %xmm9, -48(%rsp) + movsd -40(%rsp), %xmm12 + movsd 4320+_vmldACosHATab(%rip), %xmm10 + movsd -48(%rsp), %xmm1 + addsd %xmm12, %xmm10 + movsd %xmm10, -40(%rsp) + movsd -40(%rsp), %xmm15 + movsd 4320+_vmldACosHATab(%rip), %xmm11 + movsd 4104+_vmldACosHATab(%rip), %xmm9 + subsd %xmm15, %xmm11 + movsd 4336+_vmldACosHATab(%rip), %xmm2 + addsd %xmm11, %xmm12 + mulsd %xmm3, %xmm2 + movsd %xmm12, -48(%rsp) + movsd -40(%rsp), %xmm15 + mulsd %xmm15, %xmm9 + movsd -48(%rsp), %xmm0 + movsd %xmm9, -40(%rsp) + movsd -40(%rsp), %xmm10 + movsd 4360+_vmldACosHATab(%rip), %xmm3 + subsd %xmm15, %xmm10 + mulsd %xmm8, %xmm3 + movsd %xmm10, -48(%rsp) + movsd -40(%rsp), %xmm11 + movsd -48(%rsp), %xmm13 + subsd %xmm13, %xmm11 + addsd 4344+_vmldACosHATab(%rip), %xmm3 + movsd %xmm11, -40(%rsp) + movsd -40(%rsp), %xmm14 + mulsd %xmm8, %xmm3 + subsd %xmm14, %xmm15 + movsd %xmm15, -48(%rsp) + movsd -40(%rsp), %xmm10 + movsd -48(%rsp), %xmm9 + addsd %xmm9, %xmm4 + addsd 4328+_vmldACosHATab(%rip), %xmm3 + addsd %xmm2, %xmm4 + addsd %xmm5, %xmm3 + addsd %xmm1, %xmm4 + addsd %xmm0, %xmm4 + addsd %xmm3, %xmm4 + mulsd %xmm6, %xmm4 + mulsd %xmm10, %xmm6 + addsd %xmm7, %xmm4 + movsd (%rdi), %xmm7 + comisd 4184+_vmldACosHATab(%rip), %xmm7 + ja .LBL_2_13 + movsd 4152+_vmldACosHATab(%rip), %xmm2 + movaps %xmm2, %xmm0 + movsd 4160+_vmldACosHATab(%rip), %xmm5 + subsd %xmm6, %xmm0 + subsd %xmm4, %xmm5 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd %xmm6, -56(%rsp) + subsd %xmm1, %xmm2 + subsd %xmm6, %xmm2 + movsd %xmm2, -48(%rsp) + movsd -40(%rsp), %xmm6 + movsd -48(%rsp), %xmm3 + movaps %xmm3, %xmm4 + addsd %xmm5, %xmm4 + +.LBL_2_13: + addsd %xmm4, %xmm6 + movsd %xmm6, (%rsi) + ret + +.LBL_2_14: + ucomisd %xmm0, %xmm1 + jp .LBL_2_15 + je .LBL_2_19 + +.LBL_2_15: + xorps .FLT_197(%rip), %xmm0 + ucomisd %xmm0, %xmm1 + jp .LBL_2_16 + je .LBL_2_18 + +.LBL_2_16: + movl $1, %eax + pxor %xmm1, %xmm1 + pxor %xmm0, %xmm0 + divsd %xmm0, %xmm1 + movsd %xmm1, (%rsi) + +.LBL_2_17: + ret + +.LBL_2_18: + movsd 4152+_vmldACosHATab(%rip), %xmm0 + addsd 4160+_vmldACosHATab(%rip), %xmm0 + movsd %xmm0, (%rsi) + ret + +.LBL_2_19: + movq 4184+_vmldACosHATab(%rip), %rdx + movq %rdx, (%rsi) + ret + +.LBL_2_20: + divsd %xmm1, %xmm1 + movsd %xmm1, (%rsi) + testl $1048575, 4(%rdi) + jne .LBL_2_17 + cmpl $0, (%rdi) + sete %al + ret + + cfi_endproc + + .type __svml_dacos_cout_rare_internal,@function + .size __svml_dacos_cout_rare_internal,.-__svml_dacos_cout_rare_internal + + .section .rodata, "a" + .align 64 + +__svml_dacos_data_internal: + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 1071644672 + .long 0 + .long 1071644672 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 805306368 + .long 0 + .long 805306368 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 4294967040 + .long 0 + .long 4294967040 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 3220176896 + .long 0 + .long 3220176896 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 4227858432 + .long 4294967295 + .long 4227858432 + .long 4294967295 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 1073741824 + .long 0 + .long 1073741824 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 2570790083 + .long 3213983744 + .long 2570790083 + .long 3213983744 + .long 1869665325 + .long 1067712512 + .long 1869665325 + .long 1067712512 + .long 4294966935 + .long 3216506879 + .long 4294966935 + .long 3216506879 + .long 4294967197 + .long 1070596095 + .long 4294967197 + .long 1070596095 + .long 3339630857 + .long 1067480352 + .long 3339630857 + .long 1067480352 + .long 4158370029 + .long 3213949719 + .long 4158370029 + .long 3213949719 + .long 3216784302 + .long 1066680132 + .long 3216784302 + .long 1066680132 + .long 2513723093 + .long 1064982579 + .long 2513723093 + .long 1064982579 + .long 721210070 + .long 1065941212 + .long 721210070 + .long 1065941212 + .long 3414736215 + .long 1066167739 + .long 3414736215 + .long 1066167739 + .long 4114132270 + .long 1066518236 + .long 4114132270 + .long 1066518236 + .long 3957258973 + .long 1066854556 + .long 3957258973 + .long 1066854556 + .long 3778730174 + .long 1067392114 + .long 3778730174 + .long 1067392114 + .long 3014936056 + .long 1067899757 + .long 3014936056 + .long 1067899757 + .long 859300062 + .long 1068708659 + .long 859300062 + .long 1068708659 + .long 1431655068 + .long 1069897045 + .long 1431655068 + .long 1069897045 + .long 856972295 + .long 1017226790 + .long 856972295 + .long 1017226790 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 1413754136 + .long 1074340347 + .long 1413754136 + .long 1074340347 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 856972295 + .long 1016178214 + .long 856972295 + .long 1016178214 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 1413754136 + .long 1073291771 + .long 1413754136 + .long 1073291771 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 0 + .long 0 + .long 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 4294705152 + .long 0 + .long 4294705152 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 4131758366 + .long 1067674714 + .long 4131758366 + .long 1067674714 + .long 3936260738 + .long 1066197319 + .long 3936260738 + .long 1066197319 + .long 354394453 + .long 1067472564 + .long 354394453 + .long 1067472564 + .long 709676628 + .long 1067895021 + .long 709676628 + .long 1067895021 + .long 3958922090 + .long 1068708761 + .long 3958922090 + .long 1068708761 + .long 2160605765 + .long 1069897044 + .long 2160605765 + .long 1069897044 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 2146435072 + .long 0 + .long 4293918720 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 1072693248 + .long 0 + .long 3220176896 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 0 + .long 0 + .long 2147483648 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .type __svml_dacos_data_internal,@object + .size __svml_dacos_data_internal,1472 + .align 32 + +_vmldACosHATab: + .long 0 + .long 1072693248 + .long 0 + .long 1072689152 + .long 0 + .long 1072685056 + .long 0 + .long 1072680960 + .long 0 + .long 1072676864 + .long 0 + .long 1072672768 + .long 0 + .long 1072668672 + .long 0 + .long 1072665600 + .long 0 + .long 1072661504 + .long 0 + .long 1072657408 + .long 0 + .long 1072653312 + .long 0 + .long 1072649216 + .long 0 + .long 1072646144 + .long 0 + .long 1072642048 + .long 0 + .long 1072637952 + .long 0 + .long 1072634880 + .long 0 + .long 1072630784 + .long 0 + .long 1072626688 + .long 0 + .long 1072623616 + .long 0 + .long 1072619520 + .long 0 + .long 1072615424 + .long 0 + .long 1072612352 + .long 0 + .long 1072608256 + .long 0 + .long 1072605184 + .long 0 + .long 1072601088 + .long 0 + .long 1072598016 + .long 0 + .long 1072593920 + .long 0 + .long 1072590848 + .long 0 + .long 1072586752 + .long 0 + .long 1072583680 + .long 0 + .long 1072580608 + .long 0 + .long 1072576512 + .long 0 + .long 1072573440 + .long 0 + .long 1072570368 + .long 0 + .long 1072566272 + .long 0 + .long 1072563200 + .long 0 + .long 1072560128 + .long 0 + .long 1072556032 + .long 0 + .long 1072552960 + .long 0 + .long 1072549888 + .long 0 + .long 1072546816 + .long 0 + .long 1072542720 + .long 0 + .long 1072539648 + .long 0 + .long 1072536576 + .long 0 + .long 1072533504 + .long 0 + .long 1072530432 + .long 0 + .long 1072527360 + .long 0 + .long 1072523264 + .long 0 + .long 1072520192 + .long 0 + .long 1072517120 + .long 0 + .long 1072514048 + .long 0 + .long 1072510976 + .long 0 + .long 1072507904 + .long 0 + .long 1072504832 + .long 0 + .long 1072501760 + .long 0 + .long 1072498688 + .long 0 + .long 1072495616 + .long 0 + .long 1072492544 + .long 0 + .long 1072489472 + .long 0 + .long 1072486400 + .long 0 + .long 1072483328 + .long 0 + .long 1072480256 + .long 0 + .long 1072478208 + .long 0 + .long 1072475136 + .long 0 + .long 1072472064 + .long 0 + .long 1072468992 + .long 0 + .long 1072465920 + .long 0 + .long 1072462848 + .long 0 + .long 1072459776 + .long 0 + .long 1072457728 + .long 0 + .long 1072454656 + .long 0 + .long 1072451584 + .long 0 + .long 1072448512 + .long 0 + .long 1072446464 + .long 0 + .long 1072443392 + .long 0 + .long 1072440320 + .long 0 + .long 1072437248 + .long 0 + .long 1072435200 + .long 0 + .long 1072432128 + .long 0 + .long 1072429056 + .long 0 + .long 1072427008 + .long 0 + .long 1072423936 + .long 0 + .long 1072420864 + .long 0 + .long 1072418816 + .long 0 + .long 1072415744 + .long 0 + .long 1072412672 + .long 0 + .long 1072410624 + .long 0 + .long 1072407552 + .long 0 + .long 1072405504 + .long 0 + .long 1072402432 + .long 0 + .long 1072400384 + .long 0 + .long 1072397312 + .long 0 + .long 1072395264 + .long 0 + .long 1072392192 + .long 0 + .long 1072390144 + .long 0 + .long 1072387072 + .long 0 + .long 1072385024 + .long 0 + .long 1072381952 + .long 0 + .long 1072379904 + .long 0 + .long 1072376832 + .long 0 + .long 1072374784 + .long 0 + .long 1072371712 + .long 0 + .long 1072369664 + .long 0 + .long 1072366592 + .long 0 + .long 1072364544 + .long 0 + .long 1072362496 + .long 0 + .long 1072359424 + .long 0 + .long 1072357376 + .long 0 + .long 1072355328 + .long 0 + .long 1072352256 + .long 0 + .long 1072350208 + .long 0 + .long 1072347136 + .long 0 + .long 1072345088 + .long 0 + .long 1072343040 + .long 0 + .long 1072340992 + .long 0 + .long 1072337920 + .long 0 + .long 1072335872 + .long 0 + .long 1072333824 + .long 0 + .long 1072330752 + .long 0 + .long 1072328704 + .long 0 + .long 1072326656 + .long 0 + .long 1072324608 + .long 0 + .long 1072321536 + .long 0 + .long 1072319488 + .long 0 + .long 1072317440 + .long 0 + .long 1072315392 + .long 0 + .long 1072313344 + .long 0 + .long 1072310272 + .long 0 + .long 1072308224 + .long 0 + .long 1072306176 + .long 0 + .long 1072304128 + .long 0 + .long 1072302080 + .long 0 + .long 1072300032 + .long 0 + .long 1072296960 + .long 0 + .long 1072294912 + .long 0 + .long 1072292864 + .long 0 + .long 1072290816 + .long 0 + .long 1072288768 + .long 0 + .long 1072286720 + .long 0 + .long 1072284672 + .long 0 + .long 1072282624 + .long 0 + .long 1072280576 + .long 0 + .long 1072278528 + .long 0 + .long 1072275456 + .long 0 + .long 1072273408 + .long 0 + .long 1072271360 + .long 0 + .long 1072269312 + .long 0 + .long 1072267264 + .long 0 + .long 1072265216 + .long 0 + .long 1072263168 + .long 0 + .long 1072261120 + .long 0 + .long 1072259072 + .long 0 + .long 1072257024 + .long 0 + .long 1072254976 + .long 0 + .long 1072252928 + .long 0 + .long 1072250880 + .long 0 + .long 1072248832 + .long 0 + .long 1072246784 + .long 0 + .long 1072244736 + .long 0 + .long 1072243712 + .long 0 + .long 1072241664 + .long 0 + .long 1072239616 + .long 0 + .long 1072237568 + .long 0 + .long 1072235520 + .long 0 + .long 1072233472 + .long 0 + .long 1072231424 + .long 0 + .long 1072229376 + .long 0 + .long 1072227328 + .long 0 + .long 1072225280 + .long 0 + .long 1072223232 + .long 0 + .long 1072222208 + .long 0 + .long 1072220160 + .long 0 + .long 1072218112 + .long 0 + .long 1072216064 + .long 0 + .long 1072214016 + .long 0 + .long 1072211968 + .long 0 + .long 1072210944 + .long 0 + .long 1072208896 + .long 0 + .long 1072206848 + .long 0 + .long 1072204800 + .long 0 + .long 1072202752 + .long 0 + .long 1072201728 + .long 0 + .long 1072199680 + .long 0 + .long 1072197632 + .long 0 + .long 1072195584 + .long 0 + .long 1072193536 + .long 0 + .long 1072192512 + .long 0 + .long 1072190464 + .long 0 + .long 1072188416 + .long 0 + .long 1072186368 + .long 0 + .long 1072185344 + .long 0 + .long 1072183296 + .long 0 + .long 1072181248 + .long 0 + .long 1072179200 + .long 0 + .long 1072178176 + .long 0 + .long 1072176128 + .long 0 + .long 1072174080 + .long 0 + .long 1072173056 + .long 0 + .long 1072171008 + .long 0 + .long 1072168960 + .long 0 + .long 1072167936 + .long 0 + .long 1072165888 + .long 0 + .long 1072163840 + .long 0 + .long 1072161792 + .long 0 + .long 1072160768 + .long 0 + .long 1072158720 + .long 0 + .long 1072157696 + .long 0 + .long 1072155648 + .long 0 + .long 1072153600 + .long 0 + .long 1072152576 + .long 0 + .long 1072150528 + .long 0 + .long 1072148480 + .long 0 + .long 1072147456 + .long 0 + .long 1072145408 + .long 0 + .long 1072143360 + .long 0 + .long 1072142336 + .long 0 + .long 1072140288 + .long 0 + .long 1072139264 + .long 0 + .long 1072137216 + .long 0 + .long 1072135168 + .long 0 + .long 1072134144 + .long 0 + .long 1072132096 + .long 0 + .long 1072131072 + .long 0 + .long 1072129024 + .long 0 + .long 1072128000 + .long 0 + .long 1072125952 + .long 0 + .long 1072124928 + .long 0 + .long 1072122880 + .long 0 + .long 1072120832 + .long 0 + .long 1072119808 + .long 0 + .long 1072117760 + .long 0 + .long 1072116736 + .long 0 + .long 1072114688 + .long 0 + .long 1072113664 + .long 0 + .long 1072111616 + .long 0 + .long 1072110592 + .long 0 + .long 1072108544 + .long 0 + .long 1072107520 + .long 0 + .long 1072105472 + .long 0 + .long 1072104448 + .long 0 + .long 1072102400 + .long 0 + .long 1072101376 + .long 0 + .long 1072099328 + .long 0 + .long 1072098304 + .long 0 + .long 1072096256 + .long 0 + .long 1072095232 + .long 0 + .long 1072094208 + .long 0 + .long 1072092160 + .long 0 + .long 1072091136 + .long 0 + .long 1072089088 + .long 0 + .long 1072088064 + .long 0 + .long 1072086016 + .long 0 + .long 1072084992 + .long 0 + .long 1072082944 + .long 0 + .long 1072081920 + .long 0 + .long 1072080896 + .long 0 + .long 1072078848 + .long 0 + .long 1072075776 + .long 0 + .long 1072073728 + .long 0 + .long 1072070656 + .long 0 + .long 1072067584 + .long 0 + .long 1072064512 + .long 0 + .long 1072061440 + .long 0 + .long 1072059392 + .long 0 + .long 1072056320 + .long 0 + .long 1072053248 + .long 0 + .long 1072051200 + .long 0 + .long 1072048128 + .long 0 + .long 1072045056 + .long 0 + .long 1072043008 + .long 0 + .long 1072039936 + .long 0 + .long 1072037888 + .long 0 + .long 1072034816 + .long 0 + .long 1072031744 + .long 0 + .long 1072029696 + .long 0 + .long 1072026624 + .long 0 + .long 1072024576 + .long 0 + .long 1072021504 + .long 0 + .long 1072019456 + .long 0 + .long 1072016384 + .long 0 + .long 1072014336 + .long 0 + .long 1072011264 + .long 0 + .long 1072009216 + .long 0 + .long 1072006144 + .long 0 + .long 1072004096 + .long 0 + .long 1072002048 + .long 0 + .long 1071998976 + .long 0 + .long 1071996928 + .long 0 + .long 1071993856 + .long 0 + .long 1071991808 + .long 0 + .long 1071989760 + .long 0 + .long 1071986688 + .long 0 + .long 1071984640 + .long 0 + .long 1071982592 + .long 0 + .long 1071979520 + .long 0 + .long 1071977472 + .long 0 + .long 1071975424 + .long 0 + .long 1071972352 + .long 0 + .long 1071970304 + .long 0 + .long 1071968256 + .long 0 + .long 1071966208 + .long 0 + .long 1071964160 + .long 0 + .long 1071961088 + .long 0 + .long 1071959040 + .long 0 + .long 1071956992 + .long 0 + .long 1071954944 + .long 0 + .long 1071952896 + .long 0 + .long 1071949824 + .long 0 + .long 1071947776 + .long 0 + .long 1071945728 + .long 0 + .long 1071943680 + .long 0 + .long 1071941632 + .long 0 + .long 1071939584 + .long 0 + .long 1071937536 + .long 0 + .long 1071935488 + .long 0 + .long 1071933440 + .long 0 + .long 1071930368 + .long 0 + .long 1071928320 + .long 0 + .long 1071926272 + .long 0 + .long 1071924224 + .long 0 + .long 1071922176 + .long 0 + .long 1071920128 + .long 0 + .long 1071918080 + .long 0 + .long 1071916032 + .long 0 + .long 1071913984 + .long 0 + .long 1071911936 + .long 0 + .long 1071909888 + .long 0 + .long 1071907840 + .long 0 + .long 1071905792 + .long 0 + .long 1071903744 + .long 0 + .long 1071901696 + .long 0 + .long 1071900672 + .long 0 + .long 1071898624 + .long 0 + .long 1071896576 + .long 0 + .long 1071894528 + .long 0 + .long 1071892480 + .long 0 + .long 1071890432 + .long 0 + .long 1071888384 + .long 0 + .long 1071886336 + .long 0 + .long 1071884288 + .long 0 + .long 1071883264 + .long 0 + .long 1071881216 + .long 0 + .long 1071879168 + .long 0 + .long 1071877120 + .long 0 + .long 1071875072 + .long 0 + .long 1071873024 + .long 0 + .long 1071872000 + .long 0 + .long 1071869952 + .long 0 + .long 1071867904 + .long 0 + .long 1071865856 + .long 0 + .long 1071864832 + .long 0 + .long 1071862784 + .long 0 + .long 1071860736 + .long 0 + .long 1071858688 + .long 0 + .long 1071856640 + .long 0 + .long 1071855616 + .long 0 + .long 1071853568 + .long 0 + .long 1071851520 + .long 0 + .long 1071850496 + .long 0 + .long 1071848448 + .long 0 + .long 1071846400 + .long 0 + .long 1071844352 + .long 0 + .long 1071843328 + .long 0 + .long 1071841280 + .long 0 + .long 1071839232 + .long 0 + .long 1071838208 + .long 0 + .long 1071836160 + .long 0 + .long 1071834112 + .long 0 + .long 1071833088 + .long 0 + .long 1071831040 + .long 0 + .long 1071830016 + .long 0 + .long 1071827968 + .long 0 + .long 1071825920 + .long 0 + .long 1071824896 + .long 0 + .long 1071822848 + .long 0 + .long 1071821824 + .long 0 + .long 1071819776 + .long 0 + .long 1071817728 + .long 0 + .long 1071816704 + .long 0 + .long 1071814656 + .long 0 + .long 1071813632 + .long 0 + .long 1071811584 + .long 0 + .long 1071810560 + .long 0 + .long 1071808512 + .long 0 + .long 1071806464 + .long 0 + .long 1071805440 + .long 0 + .long 1071803392 + .long 0 + .long 1071802368 + .long 0 + .long 1071800320 + .long 0 + .long 1071799296 + .long 0 + .long 1071797248 + .long 0 + .long 1071796224 + .long 0 + .long 1071794176 + .long 0 + .long 1071793152 + .long 0 + .long 1071791104 + .long 0 + .long 1071790080 + .long 0 + .long 1071788032 + .long 0 + .long 1071787008 + .long 0 + .long 1071784960 + .long 0 + .long 1071783936 + .long 0 + .long 1071782912 + .long 0 + .long 1071780864 + .long 0 + .long 1071779840 + .long 0 + .long 1071777792 + .long 0 + .long 1071776768 + .long 0 + .long 1071774720 + .long 0 + .long 1071773696 + .long 0 + .long 1071772672 + .long 0 + .long 1071770624 + .long 0 + .long 1071769600 + .long 0 + .long 1071767552 + .long 0 + .long 1071766528 + .long 0 + .long 1071765504 + .long 0 + .long 1071763456 + .long 0 + .long 1071762432 + .long 0 + .long 1071760384 + .long 0 + .long 1071759360 + .long 0 + .long 1071758336 + .long 0 + .long 1071756288 + .long 0 + .long 1071755264 + .long 0 + .long 1071754240 + .long 0 + .long 1071752192 + .long 0 + .long 1071751168 + .long 0 + .long 1071750144 + .long 0 + .long 1071748096 + .long 0 + .long 1071747072 + .long 0 + .long 1071746048 + .long 0 + .long 1071744000 + .long 0 + .long 1071742976 + .long 0 + .long 1071741952 + .long 0 + .long 1071739904 + .long 0 + .long 1071738880 + .long 0 + .long 1071737856 + .long 0 + .long 1071736832 + .long 0 + .long 1071734784 + .long 0 + .long 1071733760 + .long 0 + .long 1071732736 + .long 0 + .long 1071730688 + .long 0 + .long 1071729664 + .long 0 + .long 1071728640 + .long 0 + .long 1071727616 + .long 0 + .long 1071725568 + .long 0 + .long 1071724544 + .long 0 + .long 1071723520 + .long 0 + .long 1071722496 + .long 0 + .long 1071720448 + .long 0 + .long 1071719424 + .long 0 + .long 1071718400 + .long 0 + .long 1071717376 + .long 0 + .long 1071715328 + .long 0 + .long 1071714304 + .long 0 + .long 1071713280 + .long 0 + .long 1071712256 + .long 0 + .long 1071711232 + .long 0 + .long 1071709184 + .long 0 + .long 1071708160 + .long 0 + .long 1071707136 + .long 0 + .long 1071706112 + .long 0 + .long 1071705088 + .long 0 + .long 1071704064 + .long 0 + .long 1071702016 + .long 0 + .long 1071700992 + .long 0 + .long 1071699968 + .long 0 + .long 1071698944 + .long 0 + .long 1071697920 + .long 0 + .long 1071696896 + .long 0 + .long 1071694848 + .long 0 + .long 1071693824 + .long 0 + .long 1071692800 + .long 0 + .long 1071691776 + .long 0 + .long 1071690752 + .long 0 + .long 1071689728 + .long 0 + .long 1071688704 + .long 0 + .long 1071686656 + .long 0 + .long 1071685632 + .long 0 + .long 1071684608 + .long 0 + .long 1071683584 + .long 0 + .long 1071682560 + .long 0 + .long 1071681536 + .long 0 + .long 1071680512 + .long 0 + .long 1071679488 + .long 0 + .long 1071677440 + .long 0 + .long 1071676416 + .long 0 + .long 1071675392 + .long 0 + .long 1071674368 + .long 0 + .long 1071673344 + .long 0 + .long 1071672320 + .long 0 + .long 1071671296 + .long 0 + .long 1071670272 + .long 0 + .long 1071669248 + .long 0 + .long 1071668224 + .long 0 + .long 1071667200 + .long 0 + .long 1071666176 + .long 0 + .long 1071665152 + .long 0 + .long 1071663104 + .long 0 + .long 1071662080 + .long 0 + .long 1071661056 + .long 0 + .long 1071660032 + .long 0 + .long 1071659008 + .long 0 + .long 1071657984 + .long 0 + .long 1071656960 + .long 0 + .long 1071655936 + .long 0 + .long 1071654912 + .long 0 + .long 1071653888 + .long 0 + .long 1071652864 + .long 0 + .long 1071651840 + .long 0 + .long 1071650816 + .long 0 + .long 1071649792 + .long 0 + .long 1071648768 + .long 0 + .long 1071647744 + .long 0 + .long 1071646720 + .long 0 + .long 1071645696 + .long 0 + .long 1071644672 + .long 0 + .long 1101004800 + .long 1073741824 + .long 1095761920 + .long 256 + .long 1118830592 + .long 0 + .long 1017118720 + .long 1413754136 + .long 1073291771 + .long 856972295 + .long 1016178214 + .long 1413754136 + .long 1074340347 + .long 856972295 + .long 1017226790 + .long 0 + .long 1072693248 + .long 0 + .long 1071644672 + .long 0 + .long 0 + .long 1476395008 + .long 1069897045 + .long 1768958041 + .long 3189069141 + .long 805306368 + .long 1068708659 + .long 3580333578 + .long 1040816593 + .long 3067382784 + .long 1067899757 + .long 3397590151 + .long 1067392113 + .long 2939529726 + .long 1066854585 + .long 1423429166 + .long 1066517752 + .long 1775218934 + .long 1066178574 + .long 1185392460 + .long 1065859647 + .long 289998670 + .long 1065577550 + .long 3179807072 + .long 1065648121 + .long 3781007284 + .long 1061576176 + .long 2482106687 + .long 1067019199 + .long 763519713 + .long 3214591591 + .long 3695107454 + .long 1067530646 + .long 0 + .long 1073741824 + .long 1124791109 + .long 1006764147 + .long 1476395008 + .long 1069897045 + .long 1953913876 + .long 3189069141 + .long 805306368 + .long 1067660083 + .long 165110192 + .long 1039768033 + .long 3067304082 + .long 1065802605 + .long 3404727379 + .long 1064246385 + .long 2737480376 + .long 1062660281 + .long 933797922 + .long 1061274873 + .long 1475716730 + .long 1059887095 + .long 1511619763 + .long 1058519827 + .long 556024211 + .long 1057187555 + .long 3482101045 + .long 1056217350 + .long 1174622859 + .long 1050762633 + .long 899668651 + .long 1055506366 + .long 1081094694 + .long 3202035365 + .long 2559814773 + .long 1053906576 + .long 0 + .long 3219128320 + .long 0 + .long 1071120384 + .long 0 + .long 3218341888 + .long 0 + .long 1070694400 + .long 0 + .long 3218046976 + .long 0 + .long 1070391296 + .long 0 + .long 3217739776 + .type _vmldACosHATab,@object + .size _vmldACosHATab,4520 + .space 88, 0x00 + .align 16 + +.FLT_197: + .long 0x00000000,0x80000000,0x00000000,0x00000000 + .type .FLT_197,@object + .size .FLT_197,16 diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core-sse.S b/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core-sse.S new file mode 100644 index 0000000000..750f71c81c --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core-sse.S @@ -0,0 +1,20 @@ +/* SSE version of vectorized acos, vector length is 4. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#define _ZGVdN4v_acos _ZGVdN4v_acos_sse_wrapper +#include "../svml_d_acos4_core.S" diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core.c b/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core.c new file mode 100644 index 0000000000..6453e7ebe2 --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core.c @@ -0,0 +1,27 @@ +/* Multiple versions of vectorized acos, vector length is 4. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#define SYMBOL_NAME _ZGVdN4v_acos +#include "ifunc-mathvec-avx2.h" + +libc_ifunc_redirected (REDIRECT_NAME, SYMBOL_NAME, IFUNC_SELECTOR ()); + +#ifdef SHARED +__hidden_ver1 (_ZGVdN4v_acos, __GI__ZGVdN4v_acos, __redirect__ZGVdN4v_acos) + __attribute__ ((visibility ("hidden"))); +#endif diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core_avx2.S b/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core_avx2.S new file mode 100644 index 0000000000..db716b690e --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos4_core_avx2.S @@ -0,0 +1,2777 @@ +/* Function acos vectorized with AVX2. + Copyright (C) 2021 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 + https://www.gnu.org/licenses/. */ + +/* + * ALGORITHM DESCRIPTION: + * + * SelMask = (|x| >= 0.5) ? 1 : 0; + * R = SelMask ? sqrt(0.5 - 0.5*|x|) : |x| + * acos(|x|) = SelMask ? 2*Poly(R) : (Pi/2 - Poly(R)) + * acos(x) = sign(x) ? (Pi - acos(|x|)) : acos(|x|) + * + */ + +#include <sysdep.h> + + .text +ENTRY(_ZGVdN4v_acos_avx2) + pushq %rbp + cfi_def_cfa_offset(16) + movq %rsp, %rbp + cfi_def_cfa(6, 16) + cfi_offset(6, -16) + andq $-64, %rsp + subq $384, %rsp + vmovupd __svml_dacos_data_internal(%rip), %ymm6 + vmovupd 64+__svml_dacos_data_internal(%rip), %ymm7 + vmovups %ymm8, 32(%rsp) + vmovups %ymm10, 160(%rsp) + vmovups %ymm9, 96(%rsp) + vmovups %ymm11, 192(%rsp) + vmovups %ymm12, 224(%rsp) + vmovups %ymm13, 256(%rsp) + vmovups %ymm15, 320(%rsp) + vmovups %ymm14, 288(%rsp) + vmovapd %ymm0, %ymm5 + +/* x = -|arg| */ + vorpd %ymm5, %ymm6, %ymm4 + +/* Y = 0.5 + 0.5*(-x) */ + vfmadd231pd %ymm4, %ymm7, %ymm7 + +/* x^2 */ + vmulpd %ymm4, %ymm4, %ymm1 + +/* NaN processed in special branch (so wind test passed) */ + vcmpnge_uqpd 256+__svml_dacos_data_internal(%rip), %ymm4, %ymm0 + .cfi_escape 0x10, 0xdb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xdc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe0, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xdd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xde, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xdf, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xe0, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xe1, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xe2, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x22 + +/* S ~ 2*sqrt(Y) */ + vcmplt_oqpd 128+__svml_dacos_data_internal(%rip), %ymm7, %ymm9 + vaddpd %ymm7, %ymm7, %ymm13 + vminpd %ymm7, %ymm1, %ymm2 + vandpd %ymm5, %ymm6, %ymm3 + vcvtpd2ps %ymm7, %xmm6 + vcmpnlt_uqpd %ymm7, %ymm2, %ymm1 + vmovupd 768+__svml_dacos_data_internal(%rip), %ymm7 + vrsqrtps %xmm6, %xmm8 + vmovupd 640+__svml_dacos_data_internal(%rip), %ymm6 + vfmadd213pd 800+__svml_dacos_data_internal(%rip), %ymm2, %ymm7 + vcvtps2pd %xmm8, %ymm10 + vfmadd213pd 672+__svml_dacos_data_internal(%rip), %ymm2, %ymm6 + vandnpd %ymm10, %ymm9, %ymm11 + vmulpd %ymm11, %ymm11, %ymm12 + vmulpd %ymm13, %ymm11, %ymm15 + vmovupd 704+__svml_dacos_data_internal(%rip), %ymm9 + vmulpd %ymm2, %ymm2, %ymm11 + vmovupd 832+__svml_dacos_data_internal(%rip), %ymm10 + vfmsub213pd 384+__svml_dacos_data_internal(%rip), %ymm12, %ymm13 + vmovupd 896+__svml_dacos_data_internal(%rip), %ymm12 + vfmadd213pd 736+__svml_dacos_data_internal(%rip), %ymm2, %ymm9 + vmulpd %ymm11, %ymm11, %ymm8 + vfmadd213pd 864+__svml_dacos_data_internal(%rip), %ymm2, %ymm10 + vmulpd %ymm13, %ymm15, %ymm14 + vfmadd213pd 928+__svml_dacos_data_internal(%rip), %ymm2, %ymm12 + vfmadd213pd %ymm7, %ymm11, %ymm9 + vmovmskpd %ymm0, %edx + vmovupd 448+__svml_dacos_data_internal(%rip), %ymm0 + vfmadd213pd 480+__svml_dacos_data_internal(%rip), %ymm13, %ymm0 + vfmadd213pd 512+__svml_dacos_data_internal(%rip), %ymm13, %ymm0 + vfmadd213pd 544+__svml_dacos_data_internal(%rip), %ymm13, %ymm0 + +/* polynomial */ + vmovupd 576+__svml_dacos_data_internal(%rip), %ymm13 + vfnmadd213pd %ymm15, %ymm14, %ymm0 + vfmadd213pd 608+__svml_dacos_data_internal(%rip), %ymm2, %ymm13 + vblendvpd %ymm1, %ymm0, %ymm4, %ymm4 + vfmadd213pd %ymm6, %ymm11, %ymm13 + +/* X<X^2 iff X<0 */ + vcmplt_oqpd %ymm2, %ymm5, %ymm6 + vfmadd213pd %ymm9, %ymm8, %ymm13 + vfmadd213pd %ymm10, %ymm11, %ymm13 + vfmadd213pd %ymm12, %ymm11, %ymm13 + vmulpd %ymm13, %ymm2, %ymm14 + vxorpd %ymm3, %ymm4, %ymm3 + vandpd 1024+__svml_dacos_data_internal(%rip), %ymm1, %ymm2 + vfmadd213pd %ymm3, %ymm3, %ymm14 + vandpd %ymm6, %ymm2, %ymm2 + vandnpd 1152+__svml_dacos_data_internal(%rip), %ymm1, %ymm7 + vaddpd %ymm7, %ymm2, %ymm8 + vaddpd %ymm14, %ymm8, %ymm0 + testl %edx, %edx + jne .LBL_1_3 + +.LBL_1_2: + vmovups 32(%rsp), %ymm8 + cfi_restore(91) + vmovups 96(%rsp), %ymm9 + cfi_restore(92) + vmovups 160(%rsp), %ymm10 + cfi_restore(93) + vmovups 192(%rsp), %ymm11 + cfi_restore(94) + vmovups 224(%rsp), %ymm12 + cfi_restore(95) + vmovups 256(%rsp), %ymm13 + cfi_restore(96) + vmovups 288(%rsp), %ymm14 + cfi_restore(97) + vmovups 320(%rsp), %ymm15 + cfi_restore(98) + movq %rbp, %rsp + popq %rbp + cfi_def_cfa(7, 8) + cfi_restore(6) + ret + cfi_def_cfa(6, 16) + cfi_offset(6, -16) + .cfi_escape 0x10, 0xdb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xdc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe0, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xdd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xde, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xdf, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xe0, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xe1, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xe2, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x22 + +.LBL_1_3: + vmovupd %ymm5, 64(%rsp) + vmovupd %ymm0, 128(%rsp) + je .LBL_1_2 + xorl %eax, %eax + vzeroupper + movq %rsi, 8(%rsp) + movq %rdi, (%rsp) + movq %r12, 24(%rsp) + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x88, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x98, 0xfe, 0xff, 0xff, 0x22 + movl %eax, %r12d + movq %r13, 16(%rsp) + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x90, 0xfe, 0xff, 0xff, 0x22 + movl %edx, %r13d + +.LBL_1_7: + btl %r12d, %r13d + jc .LBL_1_10 + +.LBL_1_8: + incl %r12d + cmpl $4, %r12d + jl .LBL_1_7 + movq 8(%rsp), %rsi + cfi_restore(4) + movq (%rsp), %rdi + cfi_restore(5) + movq 24(%rsp), %r12 + cfi_restore(12) + movq 16(%rsp), %r13 + cfi_restore(13) + vmovupd 128(%rsp), %ymm0 + jmp .LBL_1_2 + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x88, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x98, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x90, 0xfe, 0xff, 0xff, 0x22 + +.LBL_1_10: + lea 64(%rsp,%r12,8), %rdi + lea 128(%rsp,%r12,8), %rsi + call __svml_dacos_cout_rare_internal + jmp .LBL_1_8 + +END(_ZGVdN4v_acos_avx2) + + .align 16,0x90 + +__svml_dacos_cout_rare_internal: + + cfi_startproc + + xorl %eax, %eax + movzwl 6(%rdi), %edx + andl $32752, %edx + movb 7(%rdi), %cl + movsd (%rdi), %xmm1 + cmpl $32752, %edx + je .LBL_2_20 + movsd %xmm1, -32(%rsp) + andb $127, %cl + movb %cl, -25(%rsp) + movsd -32(%rsp), %xmm12 + movsd 4168+_vmldACosHATab(%rip), %xmm0 + comisd %xmm12, %xmm0 + jbe .LBL_2_14 + movsd 4176+_vmldACosHATab(%rip), %xmm1 + comisd %xmm12, %xmm1 + jbe .LBL_2_10 + comisd 4128+_vmldACosHATab(%rip), %xmm12 + jbe .LBL_2_9 + movsd 4104+_vmldACosHATab(%rip), %xmm6 + movaps %xmm12, %xmm8 + mulsd %xmm12, %xmm6 + movaps %xmm12, %xmm7 + movsd %xmm6, -40(%rsp) + movsd -40(%rsp), %xmm13 + movsd 4104+_vmldACosHATab(%rip), %xmm5 + subsd -32(%rsp), %xmm13 + movsd %xmm13, -48(%rsp) + movsd -40(%rsp), %xmm15 + movsd -48(%rsp), %xmm14 + subsd %xmm14, %xmm15 + movaps %xmm12, %xmm14 + movsd %xmm15, -40(%rsp) + movsd -40(%rsp), %xmm6 + subsd %xmm6, %xmm8 + movsd %xmm8, -48(%rsp) + movsd -40(%rsp), %xmm9 + movaps %xmm9, %xmm4 + addsd %xmm9, %xmm7 + mulsd %xmm9, %xmm4 + movsd -48(%rsp), %xmm10 + movaps %xmm4, %xmm11 + mulsd %xmm10, %xmm7 + mulsd %xmm4, %xmm5 + addsd %xmm7, %xmm11 + movsd 4312+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movsd %xmm5, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4104+_vmldACosHATab(%rip), %xmm5 + subsd %xmm4, %xmm1 + addsd 4304+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movsd %xmm1, -48(%rsp) + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + addsd 4296+_vmldACosHATab(%rip), %xmm8 + subsd %xmm2, %xmm0 + mulsd %xmm11, %xmm8 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm3 + addsd 4288+_vmldACosHATab(%rip), %xmm8 + subsd %xmm3, %xmm4 + mulsd %xmm11, %xmm8 + movsd %xmm4, -48(%rsp) + movsd -40(%rsp), %xmm6 + mulsd %xmm6, %xmm9 + addsd 4280+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm6, %xmm10 + mulsd %xmm11, %xmm8 + mulsd %xmm9, %xmm5 + addsd 4272+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movaps %xmm9, %xmm0 + movsd -48(%rsp), %xmm13 + movaps %xmm6, %xmm4 + movsd %xmm5, -40(%rsp) + addsd %xmm13, %xmm7 + addsd 4264+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm7, %xmm14 + mulsd %xmm11, %xmm8 + addsd %xmm14, %xmm10 + addsd 4256+_vmldACosHATab(%rip), %xmm8 + movsd -40(%rsp), %xmm1 + mulsd %xmm11, %xmm8 + subsd %xmm9, %xmm1 + addsd %xmm10, %xmm9 + addsd 4248+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm9, %xmm7 + mulsd %xmm11, %xmm8 + movsd %xmm1, -48(%rsp) + movsd -40(%rsp), %xmm2 + movsd -48(%rsp), %xmm15 + subsd %xmm15, %xmm2 + addsd 4240+_vmldACosHATab(%rip), %xmm8 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm5 + mulsd %xmm11, %xmm8 + subsd %xmm5, %xmm0 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm3 + movsd -48(%rsp), %xmm5 + movaps %xmm5, %xmm13 + addsd 4232+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm3, %xmm4 + addsd %xmm10, %xmm13 + mulsd %xmm11, %xmm8 + mulsd %xmm13, %xmm6 + addsd 4224+_vmldACosHATab(%rip), %xmm8 + addsd %xmm7, %xmm6 + mulsd %xmm11, %xmm8 + movsd 4104+_vmldACosHATab(%rip), %xmm7 + movaps %xmm4, %xmm13 + mulsd %xmm4, %xmm7 + addsd 4216+_vmldACosHATab(%rip), %xmm8 + movsd %xmm7, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4200+_vmldACosHATab(%rip), %xmm11 + subsd %xmm4, %xmm1 + mulsd %xmm9, %xmm11 + addsd %xmm6, %xmm4 + movsd %xmm1, -48(%rsp) + movaps %xmm12, %xmm9 + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + movsd 4192+_vmldACosHATab(%rip), %xmm1 + subsd %xmm2, %xmm0 + mulsd %xmm1, %xmm3 + mulsd %xmm1, %xmm10 + mulsd %xmm4, %xmm8 + addsd %xmm3, %xmm9 + mulsd %xmm1, %xmm5 + addsd %xmm10, %xmm11 + movsd %xmm0, -40(%rsp) + addsd %xmm11, %xmm8 + movsd -40(%rsp), %xmm7 + addsd %xmm5, %xmm8 + subsd %xmm7, %xmm13 + movsd %xmm13, -48(%rsp) + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + movsd %xmm9, -40(%rsp) + addsd %xmm2, %xmm6 + movsd -40(%rsp), %xmm10 + movsd %xmm3, -56(%rsp) + subsd %xmm10, %xmm12 + movsd 4208+_vmldACosHATab(%rip), %xmm4 + addsd %xmm12, %xmm3 + mulsd %xmm4, %xmm0 + mulsd %xmm4, %xmm6 + movsd %xmm3, -48(%rsp) + movsd -40(%rsp), %xmm3 + movaps %xmm3, %xmm12 + movsd -48(%rsp), %xmm7 + addsd %xmm0, %xmm12 + addsd %xmm7, %xmm8 + movsd %xmm12, -40(%rsp) + movsd -40(%rsp), %xmm12 + subsd %xmm12, %xmm3 + addsd %xmm3, %xmm0 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm3 + movsd -48(%rsp), %xmm0 + movsd (%rdi), %xmm1 + addsd %xmm8, %xmm0 + comisd 4184+_vmldACosHATab(%rip), %xmm1 + addsd %xmm0, %xmm6 + jbe .LBL_2_7 + movsd 4136+_vmldACosHATab(%rip), %xmm2 + movaps %xmm2, %xmm0 + subsd %xmm3, %xmm0 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4144+_vmldACosHATab(%rip), %xmm0 + subsd %xmm1, %xmm2 + subsd %xmm6, %xmm0 + subsd %xmm3, %xmm2 + movsd %xmm2, -48(%rsp) + movsd -40(%rsp), %xmm1 + movsd -48(%rsp), %xmm3 + addsd %xmm3, %xmm0 + jmp .LBL_2_8 + +.LBL_2_7: + movsd 4136+_vmldACosHATab(%rip), %xmm2 + movaps %xmm3, %xmm0 + addsd %xmm2, %xmm0 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + subsd %xmm1, %xmm2 + addsd %xmm2, %xmm3 + movsd %xmm3, -48(%rsp) + movsd 4144+_vmldACosHATab(%rip), %xmm3 + movsd -40(%rsp), %xmm1 + addsd %xmm3, %xmm6 + movsd -48(%rsp), %xmm0 + addsd %xmm6, %xmm0 + +.LBL_2_8: + addsd %xmm0, %xmm1 + movsd %xmm1, (%rsi) + ret + +.LBL_2_9: + movsd 4144+_vmldACosHATab(%rip), %xmm1 + addsd %xmm0, %xmm12 + movsd %xmm12, -40(%rsp) + movsd -40(%rsp), %xmm0 + mulsd -32(%rsp), %xmm0 + movsd %xmm0, -56(%rsp) + movb -49(%rsp), %dl + movb 7(%rdi), %dil + andb $127, %dl + andb $-128, %dil + orb %dil, %dl + movb %dl, -49(%rsp) + subsd -56(%rsp), %xmm1 + addsd 4136+_vmldACosHATab(%rip), %xmm1 + movsd %xmm1, (%rsi) + ret + +.LBL_2_10: + movaps %xmm0, %xmm8 + movzwl 4174+_vmldACosHATab(%rip), %r9d + pxor %xmm13, %xmm13 + andl $-32753, %r9d + subsd %xmm12, %xmm8 + subsd %xmm0, %xmm13 + mulsd %xmm8, %xmm1 + movsd %xmm1, -56(%rsp) + movzwl -50(%rsp), %ecx + andl $32752, %ecx + shrl $4, %ecx + addl $-1023, %ecx + movl %ecx, %r8d + movl %ecx, %edx + negl %r8d + addl $1023, %r8d + andl $2047, %r8d + shll $4, %r8d + movsd %xmm0, -32(%rsp) + orl %r8d, %r9d + movw %r9w, -26(%rsp) + andl $1, %edx + movsd -32(%rsp), %xmm4 + lea _vmldACosHATab(%rip), %r8 + mulsd %xmm4, %xmm1 + movl %edx, %r10d + movaps %xmm1, %xmm15 + movsd 4112+_vmldACosHATab(%rip), %xmm6 + addsd %xmm1, %xmm15 + jne .LBL_73 + movaps %xmm1, %xmm15 + +.LBL_73: + mulsd %xmm15, %xmm6 + movaps %xmm15, %xmm7 + movaps %xmm6, %xmm9 + subl %edx, %ecx + movsd 4120+_vmldACosHATab(%rip), %xmm11 + subsd %xmm15, %xmm9 + addsd %xmm1, %xmm11 + movsd %xmm9, -48(%rsp) + movsd -48(%rsp), %xmm10 + movsd %xmm11, -24(%rsp) + subsd %xmm10, %xmm6 + movl -24(%rsp), %r11d + movaps %xmm6, %xmm14 + shll $8, %r10d + andl $511, %r11d + addl %r10d, %r11d + subsd %xmm6, %xmm7 + movsd (%r8,%r11,8), %xmm5 + addsd %xmm7, %xmm14 + mulsd %xmm5, %xmm6 + movaps %xmm5, %xmm12 + mulsd %xmm5, %xmm12 + mulsd %xmm12, %xmm14 + movsd 4512+_vmldACosHATab(%rip), %xmm4 + addsd %xmm13, %xmm14 + mulsd %xmm14, %xmm4 + shrl $1, %ecx + addsd 4504+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + addl $1023, %ecx + andl $2047, %ecx + addsd 4496+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movzwl 4174+_vmldACosHATab(%rip), %r9d + shll $4, %ecx + andl $-32753, %r9d + movsd %xmm0, -16(%rsp) + orl %ecx, %r9d + movw %r9w, -10(%rsp) + movsd -16(%rsp), %xmm9 + mulsd %xmm9, %xmm6 + addsd 4488+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movsd 4104+_vmldACosHATab(%rip), %xmm3 + mulsd %xmm6, %xmm3 + addsd 4480+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movsd %xmm3, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4352+_vmldACosHATab(%rip), %xmm11 + subsd %xmm6, %xmm1 + addsd 4472+_vmldACosHATab(%rip), %xmm4 + addsd 4360+_vmldACosHATab(%rip), %xmm11 + mulsd %xmm14, %xmm4 + mulsd %xmm8, %xmm11 + addsd 4464+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + mulsd %xmm15, %xmm4 + movsd %xmm1, -48(%rsp) + addsd %xmm4, %xmm7 + mulsd %xmm5, %xmm7 + movsd 4456+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + mulsd %xmm9, %xmm7 + addsd 4448+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm2 + movsd -48(%rsp), %xmm0 + movsd 4104+_vmldACosHATab(%rip), %xmm4 + subsd %xmm0, %xmm2 + mulsd %xmm8, %xmm4 + addsd 4440+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movaps %xmm8, %xmm0 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm14 + movsd 4104+_vmldACosHATab(%rip), %xmm2 + subsd %xmm14, %xmm6 + addsd 4432+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd %xmm6, -48(%rsp) + movsd -40(%rsp), %xmm6 + movsd -48(%rsp), %xmm10 + movsd %xmm4, -40(%rsp) + addsd %xmm10, %xmm7 + addsd 4424+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm3 + movsd 4336+_vmldACosHATab(%rip), %xmm12 + subsd %xmm8, %xmm3 + addsd 4416+_vmldACosHATab(%rip), %xmm5 + addsd 4344+_vmldACosHATab(%rip), %xmm12 + mulsd %xmm8, %xmm5 + addsd %xmm11, %xmm12 + addsd 4408+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm12 + mulsd %xmm8, %xmm5 + movsd %xmm3, -48(%rsp) + movsd -40(%rsp), %xmm1 + movsd -48(%rsp), %xmm15 + movsd 4320+_vmldACosHATab(%rip), %xmm13 + subsd %xmm15, %xmm1 + addsd 4400+_vmldACosHATab(%rip), %xmm5 + addsd 4328+_vmldACosHATab(%rip), %xmm13 + mulsd %xmm8, %xmm5 + addsd %xmm12, %xmm13 + addsd 4392+_vmldACosHATab(%rip), %xmm5 + movsd %xmm1, -40(%rsp) + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm4 + subsd %xmm4, %xmm0 + addsd 4384+_vmldACosHATab(%rip), %xmm5 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm4 + movaps %xmm4, %xmm14 + mulsd %xmm4, %xmm14 + mulsd %xmm8, %xmm5 + mulsd %xmm14, %xmm2 + addsd 4376+_vmldACosHATab(%rip), %xmm5 + movsd -48(%rsp), %xmm3 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm9 + mulsd %xmm8, %xmm5 + subsd %xmm14, %xmm9 + movsd %xmm9, -48(%rsp) + movsd -40(%rsp), %xmm11 + movsd -48(%rsp), %xmm10 + movsd 4336+_vmldACosHATab(%rip), %xmm0 + subsd %xmm10, %xmm11 + mulsd %xmm4, %xmm0 + addsd 4368+_vmldACosHATab(%rip), %xmm5 + addsd %xmm8, %xmm4 + mulsd %xmm8, %xmm5 + mulsd %xmm3, %xmm4 + mulsd %xmm8, %xmm5 + movsd %xmm11, -40(%rsp) + movaps %xmm0, %xmm1 + movsd -40(%rsp), %xmm12 + mulsd %xmm8, %xmm5 + subsd %xmm12, %xmm14 + movsd %xmm14, -48(%rsp) + addsd %xmm5, %xmm13 + movsd -40(%rsp), %xmm9 + mulsd 4352+_vmldACosHATab(%rip), %xmm9 + mulsd %xmm13, %xmm7 + addsd %xmm9, %xmm1 + movsd -48(%rsp), %xmm2 + movsd %xmm1, -40(%rsp) + addsd %xmm2, %xmm4 + movsd -40(%rsp), %xmm13 + movsd %xmm9, -24(%rsp) + subsd %xmm13, %xmm0 + mulsd 4352+_vmldACosHATab(%rip), %xmm4 + addsd %xmm0, %xmm9 + movsd %xmm9, -48(%rsp) + movsd -40(%rsp), %xmm12 + movsd 4320+_vmldACosHATab(%rip), %xmm10 + movsd -48(%rsp), %xmm1 + addsd %xmm12, %xmm10 + movsd %xmm10, -40(%rsp) + movsd -40(%rsp), %xmm15 + movsd 4320+_vmldACosHATab(%rip), %xmm11 + movsd 4104+_vmldACosHATab(%rip), %xmm9 + subsd %xmm15, %xmm11 + movsd 4336+_vmldACosHATab(%rip), %xmm2 + addsd %xmm11, %xmm12 + mulsd %xmm3, %xmm2 + movsd %xmm12, -48(%rsp) + movsd -40(%rsp), %xmm15 + mulsd %xmm15, %xmm9 + movsd -48(%rsp), %xmm0 + movsd %xmm9, -40(%rsp) + movsd -40(%rsp), %xmm10 + movsd 4360+_vmldACosHATab(%rip), %xmm3 + subsd %xmm15, %xmm10 + mulsd %xmm8, %xmm3 + movsd %xmm10, -48(%rsp) + movsd -40(%rsp), %xmm11 + movsd -48(%rsp), %xmm13 + subsd %xmm13, %xmm11 + addsd 4344+_vmldACosHATab(%rip), %xmm3 + movsd %xmm11, -40(%rsp) + movsd -40(%rsp), %xmm14 + mulsd %xmm8, %xmm3 + subsd %xmm14, %xmm15 + movsd %xmm15, -48(%rsp) + movsd -40(%rsp), %xmm10 + movsd -48(%rsp), %xmm9 + addsd %xmm9, %xmm4 + addsd 4328+_vmldACosHATab(%rip), %xmm3 + addsd %xmm2, %xmm4 + addsd %xmm5, %xmm3 + addsd %xmm1, %xmm4 + addsd %xmm0, %xmm4 + addsd %xmm3, %xmm4 + mulsd %xmm6, %xmm4 + mulsd %xmm10, %xmm6 + addsd %xmm7, %xmm4 + movsd (%rdi), %xmm7 + comisd 4184+_vmldACosHATab(%rip), %xmm7 + ja .LBL_2_13 + movsd 4152+_vmldACosHATab(%rip), %xmm2 + movaps %xmm2, %xmm0 + movsd 4160+_vmldACosHATab(%rip), %xmm5 + subsd %xmm6, %xmm0 + subsd %xmm4, %xmm5 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd %xmm6, -56(%rsp) + subsd %xmm1, %xmm2 + subsd %xmm6, %xmm2 + movsd %xmm2, -48(%rsp) + movsd -40(%rsp), %xmm6 + movsd -48(%rsp), %xmm3 + movaps %xmm3, %xmm4 + addsd %xmm5, %xmm4 + +.LBL_2_13: + addsd %xmm4, %xmm6 + movsd %xmm6, (%rsi) + ret + +.LBL_2_14: + ucomisd %xmm0, %xmm1 + jp .LBL_2_15 + je .LBL_2_19 + +.LBL_2_15: + xorps .FLT_197(%rip), %xmm0 + ucomisd %xmm0, %xmm1 + jp .LBL_2_16 + je .LBL_2_18 + +.LBL_2_16: + movl $1, %eax + pxor %xmm1, %xmm1 + pxor %xmm0, %xmm0 + divsd %xmm0, %xmm1 + movsd %xmm1, (%rsi) + +.LBL_2_17: + ret + +.LBL_2_18: + movsd 4152+_vmldACosHATab(%rip), %xmm0 + addsd 4160+_vmldACosHATab(%rip), %xmm0 + movsd %xmm0, (%rsi) + ret + +.LBL_2_19: + movq 4184+_vmldACosHATab(%rip), %rdx + movq %rdx, (%rsi) + ret + +.LBL_2_20: + divsd %xmm1, %xmm1 + movsd %xmm1, (%rsi) + testl $1048575, 4(%rdi) + jne .LBL_2_17 + cmpl $0, (%rdi) + sete %al + ret + + cfi_endproc + + .type __svml_dacos_cout_rare_internal,@function + .size __svml_dacos_cout_rare_internal,.-__svml_dacos_cout_rare_internal + + .section .rodata, "a" + .align 64 + +__svml_dacos_data_internal: + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 1071644672 + .long 0 + .long 1071644672 + .long 0 + .long 1071644672 + .long 0 + .long 1071644672 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 805306368 + .long 0 + .long 805306368 + .long 0 + .long 805306368 + .long 0 + .long 805306368 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 4294967040 + .long 0 + .long 4294967040 + .long 0 + .long 4294967040 + .long 0 + .long 4294967040 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 3220176896 + .long 0 + .long 3220176896 + .long 0 + .long 3220176896 + .long 0 + .long 3220176896 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 4227858432 + .long 4294967295 + .long 4227858432 + .long 4294967295 + .long 4227858432 + .long 4294967295 + .long 4227858432 + .long 4294967295 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 1073741824 + .long 0 + .long 1073741824 + .long 0 + .long 1073741824 + .long 0 + .long 1073741824 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 2570790083 + .long 3213983744 + .long 2570790083 + .long 3213983744 + .long 2570790083 + .long 3213983744 + .long 2570790083 + .long 3213983744 + .long 1869665325 + .long 1067712512 + .long 1869665325 + .long 1067712512 + .long 1869665325 + .long 1067712512 + .long 1869665325 + .long 1067712512 + .long 4294966935 + .long 3216506879 + .long 4294966935 + .long 3216506879 + .long 4294966935 + .long 3216506879 + .long 4294966935 + .long 3216506879 + .long 4294967197 + .long 1070596095 + .long 4294967197 + .long 1070596095 + .long 4294967197 + .long 1070596095 + .long 4294967197 + .long 1070596095 + .long 3339630857 + .long 1067480352 + .long 3339630857 + .long 1067480352 + .long 3339630857 + .long 1067480352 + .long 3339630857 + .long 1067480352 + .long 4158370029 + .long 3213949719 + .long 4158370029 + .long 3213949719 + .long 4158370029 + .long 3213949719 + .long 4158370029 + .long 3213949719 + .long 3216784302 + .long 1066680132 + .long 3216784302 + .long 1066680132 + .long 3216784302 + .long 1066680132 + .long 3216784302 + .long 1066680132 + .long 2513723093 + .long 1064982579 + .long 2513723093 + .long 1064982579 + .long 2513723093 + .long 1064982579 + .long 2513723093 + .long 1064982579 + .long 721210070 + .long 1065941212 + .long 721210070 + .long 1065941212 + .long 721210070 + .long 1065941212 + .long 721210070 + .long 1065941212 + .long 3414736215 + .long 1066167739 + .long 3414736215 + .long 1066167739 + .long 3414736215 + .long 1066167739 + .long 3414736215 + .long 1066167739 + .long 4114132270 + .long 1066518236 + .long 4114132270 + .long 1066518236 + .long 4114132270 + .long 1066518236 + .long 4114132270 + .long 1066518236 + .long 3957258973 + .long 1066854556 + .long 3957258973 + .long 1066854556 + .long 3957258973 + .long 1066854556 + .long 3957258973 + .long 1066854556 + .long 3778730174 + .long 1067392114 + .long 3778730174 + .long 1067392114 + .long 3778730174 + .long 1067392114 + .long 3778730174 + .long 1067392114 + .long 3014936056 + .long 1067899757 + .long 3014936056 + .long 1067899757 + .long 3014936056 + .long 1067899757 + .long 3014936056 + .long 1067899757 + .long 859300062 + .long 1068708659 + .long 859300062 + .long 1068708659 + .long 859300062 + .long 1068708659 + .long 859300062 + .long 1068708659 + .long 1431655068 + .long 1069897045 + .long 1431655068 + .long 1069897045 + .long 1431655068 + .long 1069897045 + .long 1431655068 + .long 1069897045 + .long 856972295 + .long 1017226790 + .long 856972295 + .long 1017226790 + .long 856972295 + .long 1017226790 + .long 856972295 + .long 1017226790 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 1413754136 + .long 1074340347 + .long 1413754136 + .long 1074340347 + .long 1413754136 + .long 1074340347 + .long 1413754136 + .long 1074340347 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 856972295 + .long 1016178214 + .long 856972295 + .long 1016178214 + .long 856972295 + .long 1016178214 + .long 856972295 + .long 1016178214 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 1413754136 + .long 1073291771 + .long 1413754136 + .long 1073291771 + .long 1413754136 + .long 1073291771 + .long 1413754136 + .long 1073291771 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 4294705152 + .long 0 + .long 4294705152 + .long 0 + .long 4294705152 + .long 0 + .long 4294705152 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 4131758366 + .long 1067674714 + .long 4131758366 + .long 1067674714 + .long 4131758366 + .long 1067674714 + .long 4131758366 + .long 1067674714 + .long 3936260738 + .long 1066197319 + .long 3936260738 + .long 1066197319 + .long 3936260738 + .long 1066197319 + .long 3936260738 + .long 1066197319 + .long 354394453 + .long 1067472564 + .long 354394453 + .long 1067472564 + .long 354394453 + .long 1067472564 + .long 354394453 + .long 1067472564 + .long 709676628 + .long 1067895021 + .long 709676628 + .long 1067895021 + .long 709676628 + .long 1067895021 + .long 709676628 + .long 1067895021 + .long 3958922090 + .long 1068708761 + .long 3958922090 + .long 1068708761 + .long 3958922090 + .long 1068708761 + .long 3958922090 + .long 1068708761 + .long 2160605765 + .long 1069897044 + .long 2160605765 + .long 1069897044 + .long 2160605765 + .long 1069897044 + .long 2160605765 + .long 1069897044 + .long 0 + .long 2146435072 + .long 0 + .long 4293918720 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 1072693248 + .long 0 + .long 3220176896 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 0 + .long 0 + .long 2147483648 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .type __svml_dacos_data_internal,@object + .size __svml_dacos_data_internal,1792 + .align 32 + +_vmldACosHATab: + .long 0 + .long 1072693248 + .long 0 + .long 1072689152 + .long 0 + .long 1072685056 + .long 0 + .long 1072680960 + .long 0 + .long 1072676864 + .long 0 + .long 1072672768 + .long 0 + .long 1072668672 + .long 0 + .long 1072665600 + .long 0 + .long 1072661504 + .long 0 + .long 1072657408 + .long 0 + .long 1072653312 + .long 0 + .long 1072649216 + .long 0 + .long 1072646144 + .long 0 + .long 1072642048 + .long 0 + .long 1072637952 + .long 0 + .long 1072634880 + .long 0 + .long 1072630784 + .long 0 + .long 1072626688 + .long 0 + .long 1072623616 + .long 0 + .long 1072619520 + .long 0 + .long 1072615424 + .long 0 + .long 1072612352 + .long 0 + .long 1072608256 + .long 0 + .long 1072605184 + .long 0 + .long 1072601088 + .long 0 + .long 1072598016 + .long 0 + .long 1072593920 + .long 0 + .long 1072590848 + .long 0 + .long 1072586752 + .long 0 + .long 1072583680 + .long 0 + .long 1072580608 + .long 0 + .long 1072576512 + .long 0 + .long 1072573440 + .long 0 + .long 1072570368 + .long 0 + .long 1072566272 + .long 0 + .long 1072563200 + .long 0 + .long 1072560128 + .long 0 + .long 1072556032 + .long 0 + .long 1072552960 + .long 0 + .long 1072549888 + .long 0 + .long 1072546816 + .long 0 + .long 1072542720 + .long 0 + .long 1072539648 + .long 0 + .long 1072536576 + .long 0 + .long 1072533504 + .long 0 + .long 1072530432 + .long 0 + .long 1072527360 + .long 0 + .long 1072523264 + .long 0 + .long 1072520192 + .long 0 + .long 1072517120 + .long 0 + .long 1072514048 + .long 0 + .long 1072510976 + .long 0 + .long 1072507904 + .long 0 + .long 1072504832 + .long 0 + .long 1072501760 + .long 0 + .long 1072498688 + .long 0 + .long 1072495616 + .long 0 + .long 1072492544 + .long 0 + .long 1072489472 + .long 0 + .long 1072486400 + .long 0 + .long 1072483328 + .long 0 + .long 1072480256 + .long 0 + .long 1072478208 + .long 0 + .long 1072475136 + .long 0 + .long 1072472064 + .long 0 + .long 1072468992 + .long 0 + .long 1072465920 + .long 0 + .long 1072462848 + .long 0 + .long 1072459776 + .long 0 + .long 1072457728 + .long 0 + .long 1072454656 + .long 0 + .long 1072451584 + .long 0 + .long 1072448512 + .long 0 + .long 1072446464 + .long 0 + .long 1072443392 + .long 0 + .long 1072440320 + .long 0 + .long 1072437248 + .long 0 + .long 1072435200 + .long 0 + .long 1072432128 + .long 0 + .long 1072429056 + .long 0 + .long 1072427008 + .long 0 + .long 1072423936 + .long 0 + .long 1072420864 + .long 0 + .long 1072418816 + .long 0 + .long 1072415744 + .long 0 + .long 1072412672 + .long 0 + .long 1072410624 + .long 0 + .long 1072407552 + .long 0 + .long 1072405504 + .long 0 + .long 1072402432 + .long 0 + .long 1072400384 + .long 0 + .long 1072397312 + .long 0 + .long 1072395264 + .long 0 + .long 1072392192 + .long 0 + .long 1072390144 + .long 0 + .long 1072387072 + .long 0 + .long 1072385024 + .long 0 + .long 1072381952 + .long 0 + .long 1072379904 + .long 0 + .long 1072376832 + .long 0 + .long 1072374784 + .long 0 + .long 1072371712 + .long 0 + .long 1072369664 + .long 0 + .long 1072366592 + .long 0 + .long 1072364544 + .long 0 + .long 1072362496 + .long 0 + .long 1072359424 + .long 0 + .long 1072357376 + .long 0 + .long 1072355328 + .long 0 + .long 1072352256 + .long 0 + .long 1072350208 + .long 0 + .long 1072347136 + .long 0 + .long 1072345088 + .long 0 + .long 1072343040 + .long 0 + .long 1072340992 + .long 0 + .long 1072337920 + .long 0 + .long 1072335872 + .long 0 + .long 1072333824 + .long 0 + .long 1072330752 + .long 0 + .long 1072328704 + .long 0 + .long 1072326656 + .long 0 + .long 1072324608 + .long 0 + .long 1072321536 + .long 0 + .long 1072319488 + .long 0 + .long 1072317440 + .long 0 + .long 1072315392 + .long 0 + .long 1072313344 + .long 0 + .long 1072310272 + .long 0 + .long 1072308224 + .long 0 + .long 1072306176 + .long 0 + .long 1072304128 + .long 0 + .long 1072302080 + .long 0 + .long 1072300032 + .long 0 + .long 1072296960 + .long 0 + .long 1072294912 + .long 0 + .long 1072292864 + .long 0 + .long 1072290816 + .long 0 + .long 1072288768 + .long 0 + .long 1072286720 + .long 0 + .long 1072284672 + .long 0 + .long 1072282624 + .long 0 + .long 1072280576 + .long 0 + .long 1072278528 + .long 0 + .long 1072275456 + .long 0 + .long 1072273408 + .long 0 + .long 1072271360 + .long 0 + .long 1072269312 + .long 0 + .long 1072267264 + .long 0 + .long 1072265216 + .long 0 + .long 1072263168 + .long 0 + .long 1072261120 + .long 0 + .long 1072259072 + .long 0 + .long 1072257024 + .long 0 + .long 1072254976 + .long 0 + .long 1072252928 + .long 0 + .long 1072250880 + .long 0 + .long 1072248832 + .long 0 + .long 1072246784 + .long 0 + .long 1072244736 + .long 0 + .long 1072243712 + .long 0 + .long 1072241664 + .long 0 + .long 1072239616 + .long 0 + .long 1072237568 + .long 0 + .long 1072235520 + .long 0 + .long 1072233472 + .long 0 + .long 1072231424 + .long 0 + .long 1072229376 + .long 0 + .long 1072227328 + .long 0 + .long 1072225280 + .long 0 + .long 1072223232 + .long 0 + .long 1072222208 + .long 0 + .long 1072220160 + .long 0 + .long 1072218112 + .long 0 + .long 1072216064 + .long 0 + .long 1072214016 + .long 0 + .long 1072211968 + .long 0 + .long 1072210944 + .long 0 + .long 1072208896 + .long 0 + .long 1072206848 + .long 0 + .long 1072204800 + .long 0 + .long 1072202752 + .long 0 + .long 1072201728 + .long 0 + .long 1072199680 + .long 0 + .long 1072197632 + .long 0 + .long 1072195584 + .long 0 + .long 1072193536 + .long 0 + .long 1072192512 + .long 0 + .long 1072190464 + .long 0 + .long 1072188416 + .long 0 + .long 1072186368 + .long 0 + .long 1072185344 + .long 0 + .long 1072183296 + .long 0 + .long 1072181248 + .long 0 + .long 1072179200 + .long 0 + .long 1072178176 + .long 0 + .long 1072176128 + .long 0 + .long 1072174080 + .long 0 + .long 1072173056 + .long 0 + .long 1072171008 + .long 0 + .long 1072168960 + .long 0 + .long 1072167936 + .long 0 + .long 1072165888 + .long 0 + .long 1072163840 + .long 0 + .long 1072161792 + .long 0 + .long 1072160768 + .long 0 + .long 1072158720 + .long 0 + .long 1072157696 + .long 0 + .long 1072155648 + .long 0 + .long 1072153600 + .long 0 + .long 1072152576 + .long 0 + .long 1072150528 + .long 0 + .long 1072148480 + .long 0 + .long 1072147456 + .long 0 + .long 1072145408 + .long 0 + .long 1072143360 + .long 0 + .long 1072142336 + .long 0 + .long 1072140288 + .long 0 + .long 1072139264 + .long 0 + .long 1072137216 + .long 0 + .long 1072135168 + .long 0 + .long 1072134144 + .long 0 + .long 1072132096 + .long 0 + .long 1072131072 + .long 0 + .long 1072129024 + .long 0 + .long 1072128000 + .long 0 + .long 1072125952 + .long 0 + .long 1072124928 + .long 0 + .long 1072122880 + .long 0 + .long 1072120832 + .long 0 + .long 1072119808 + .long 0 + .long 1072117760 + .long 0 + .long 1072116736 + .long 0 + .long 1072114688 + .long 0 + .long 1072113664 + .long 0 + .long 1072111616 + .long 0 + .long 1072110592 + .long 0 + .long 1072108544 + .long 0 + .long 1072107520 + .long 0 + .long 1072105472 + .long 0 + .long 1072104448 + .long 0 + .long 1072102400 + .long 0 + .long 1072101376 + .long 0 + .long 1072099328 + .long 0 + .long 1072098304 + .long 0 + .long 1072096256 + .long 0 + .long 1072095232 + .long 0 + .long 1072094208 + .long 0 + .long 1072092160 + .long 0 + .long 1072091136 + .long 0 + .long 1072089088 + .long 0 + .long 1072088064 + .long 0 + .long 1072086016 + .long 0 + .long 1072084992 + .long 0 + .long 1072082944 + .long 0 + .long 1072081920 + .long 0 + .long 1072080896 + .long 0 + .long 1072078848 + .long 0 + .long 1072075776 + .long 0 + .long 1072073728 + .long 0 + .long 1072070656 + .long 0 + .long 1072067584 + .long 0 + .long 1072064512 + .long 0 + .long 1072061440 + .long 0 + .long 1072059392 + .long 0 + .long 1072056320 + .long 0 + .long 1072053248 + .long 0 + .long 1072051200 + .long 0 + .long 1072048128 + .long 0 + .long 1072045056 + .long 0 + .long 1072043008 + .long 0 + .long 1072039936 + .long 0 + .long 1072037888 + .long 0 + .long 1072034816 + .long 0 + .long 1072031744 + .long 0 + .long 1072029696 + .long 0 + .long 1072026624 + .long 0 + .long 1072024576 + .long 0 + .long 1072021504 + .long 0 + .long 1072019456 + .long 0 + .long 1072016384 + .long 0 + .long 1072014336 + .long 0 + .long 1072011264 + .long 0 + .long 1072009216 + .long 0 + .long 1072006144 + .long 0 + .long 1072004096 + .long 0 + .long 1072002048 + .long 0 + .long 1071998976 + .long 0 + .long 1071996928 + .long 0 + .long 1071993856 + .long 0 + .long 1071991808 + .long 0 + .long 1071989760 + .long 0 + .long 1071986688 + .long 0 + .long 1071984640 + .long 0 + .long 1071982592 + .long 0 + .long 1071979520 + .long 0 + .long 1071977472 + .long 0 + .long 1071975424 + .long 0 + .long 1071972352 + .long 0 + .long 1071970304 + .long 0 + .long 1071968256 + .long 0 + .long 1071966208 + .long 0 + .long 1071964160 + .long 0 + .long 1071961088 + .long 0 + .long 1071959040 + .long 0 + .long 1071956992 + .long 0 + .long 1071954944 + .long 0 + .long 1071952896 + .long 0 + .long 1071949824 + .long 0 + .long 1071947776 + .long 0 + .long 1071945728 + .long 0 + .long 1071943680 + .long 0 + .long 1071941632 + .long 0 + .long 1071939584 + .long 0 + .long 1071937536 + .long 0 + .long 1071935488 + .long 0 + .long 1071933440 + .long 0 + .long 1071930368 + .long 0 + .long 1071928320 + .long 0 + .long 1071926272 + .long 0 + .long 1071924224 + .long 0 + .long 1071922176 + .long 0 + .long 1071920128 + .long 0 + .long 1071918080 + .long 0 + .long 1071916032 + .long 0 + .long 1071913984 + .long 0 + .long 1071911936 + .long 0 + .long 1071909888 + .long 0 + .long 1071907840 + .long 0 + .long 1071905792 + .long 0 + .long 1071903744 + .long 0 + .long 1071901696 + .long 0 + .long 1071900672 + .long 0 + .long 1071898624 + .long 0 + .long 1071896576 + .long 0 + .long 1071894528 + .long 0 + .long 1071892480 + .long 0 + .long 1071890432 + .long 0 + .long 1071888384 + .long 0 + .long 1071886336 + .long 0 + .long 1071884288 + .long 0 + .long 1071883264 + .long 0 + .long 1071881216 + .long 0 + .long 1071879168 + .long 0 + .long 1071877120 + .long 0 + .long 1071875072 + .long 0 + .long 1071873024 + .long 0 + .long 1071872000 + .long 0 + .long 1071869952 + .long 0 + .long 1071867904 + .long 0 + .long 1071865856 + .long 0 + .long 1071864832 + .long 0 + .long 1071862784 + .long 0 + .long 1071860736 + .long 0 + .long 1071858688 + .long 0 + .long 1071856640 + .long 0 + .long 1071855616 + .long 0 + .long 1071853568 + .long 0 + .long 1071851520 + .long 0 + .long 1071850496 + .long 0 + .long 1071848448 + .long 0 + .long 1071846400 + .long 0 + .long 1071844352 + .long 0 + .long 1071843328 + .long 0 + .long 1071841280 + .long 0 + .long 1071839232 + .long 0 + .long 1071838208 + .long 0 + .long 1071836160 + .long 0 + .long 1071834112 + .long 0 + .long 1071833088 + .long 0 + .long 1071831040 + .long 0 + .long 1071830016 + .long 0 + .long 1071827968 + .long 0 + .long 1071825920 + .long 0 + .long 1071824896 + .long 0 + .long 1071822848 + .long 0 + .long 1071821824 + .long 0 + .long 1071819776 + .long 0 + .long 1071817728 + .long 0 + .long 1071816704 + .long 0 + .long 1071814656 + .long 0 + .long 1071813632 + .long 0 + .long 1071811584 + .long 0 + .long 1071810560 + .long 0 + .long 1071808512 + .long 0 + .long 1071806464 + .long 0 + .long 1071805440 + .long 0 + .long 1071803392 + .long 0 + .long 1071802368 + .long 0 + .long 1071800320 + .long 0 + .long 1071799296 + .long 0 + .long 1071797248 + .long 0 + .long 1071796224 + .long 0 + .long 1071794176 + .long 0 + .long 1071793152 + .long 0 + .long 1071791104 + .long 0 + .long 1071790080 + .long 0 + .long 1071788032 + .long 0 + .long 1071787008 + .long 0 + .long 1071784960 + .long 0 + .long 1071783936 + .long 0 + .long 1071782912 + .long 0 + .long 1071780864 + .long 0 + .long 1071779840 + .long 0 + .long 1071777792 + .long 0 + .long 1071776768 + .long 0 + .long 1071774720 + .long 0 + .long 1071773696 + .long 0 + .long 1071772672 + .long 0 + .long 1071770624 + .long 0 + .long 1071769600 + .long 0 + .long 1071767552 + .long 0 + .long 1071766528 + .long 0 + .long 1071765504 + .long 0 + .long 1071763456 + .long 0 + .long 1071762432 + .long 0 + .long 1071760384 + .long 0 + .long 1071759360 + .long 0 + .long 1071758336 + .long 0 + .long 1071756288 + .long 0 + .long 1071755264 + .long 0 + .long 1071754240 + .long 0 + .long 1071752192 + .long 0 + .long 1071751168 + .long 0 + .long 1071750144 + .long 0 + .long 1071748096 + .long 0 + .long 1071747072 + .long 0 + .long 1071746048 + .long 0 + .long 1071744000 + .long 0 + .long 1071742976 + .long 0 + .long 1071741952 + .long 0 + .long 1071739904 + .long 0 + .long 1071738880 + .long 0 + .long 1071737856 + .long 0 + .long 1071736832 + .long 0 + .long 1071734784 + .long 0 + .long 1071733760 + .long 0 + .long 1071732736 + .long 0 + .long 1071730688 + .long 0 + .long 1071729664 + .long 0 + .long 1071728640 + .long 0 + .long 1071727616 + .long 0 + .long 1071725568 + .long 0 + .long 1071724544 + .long 0 + .long 1071723520 + .long 0 + .long 1071722496 + .long 0 + .long 1071720448 + .long 0 + .long 1071719424 + .long 0 + .long 1071718400 + .long 0 + .long 1071717376 + .long 0 + .long 1071715328 + .long 0 + .long 1071714304 + .long 0 + .long 1071713280 + .long 0 + .long 1071712256 + .long 0 + .long 1071711232 + .long 0 + .long 1071709184 + .long 0 + .long 1071708160 + .long 0 + .long 1071707136 + .long 0 + .long 1071706112 + .long 0 + .long 1071705088 + .long 0 + .long 1071704064 + .long 0 + .long 1071702016 + .long 0 + .long 1071700992 + .long 0 + .long 1071699968 + .long 0 + .long 1071698944 + .long 0 + .long 1071697920 + .long 0 + .long 1071696896 + .long 0 + .long 1071694848 + .long 0 + .long 1071693824 + .long 0 + .long 1071692800 + .long 0 + .long 1071691776 + .long 0 + .long 1071690752 + .long 0 + .long 1071689728 + .long 0 + .long 1071688704 + .long 0 + .long 1071686656 + .long 0 + .long 1071685632 + .long 0 + .long 1071684608 + .long 0 + .long 1071683584 + .long 0 + .long 1071682560 + .long 0 + .long 1071681536 + .long 0 + .long 1071680512 + .long 0 + .long 1071679488 + .long 0 + .long 1071677440 + .long 0 + .long 1071676416 + .long 0 + .long 1071675392 + .long 0 + .long 1071674368 + .long 0 + .long 1071673344 + .long 0 + .long 1071672320 + .long 0 + .long 1071671296 + .long 0 + .long 1071670272 + .long 0 + .long 1071669248 + .long 0 + .long 1071668224 + .long 0 + .long 1071667200 + .long 0 + .long 1071666176 + .long 0 + .long 1071665152 + .long 0 + .long 1071663104 + .long 0 + .long 1071662080 + .long 0 + .long 1071661056 + .long 0 + .long 1071660032 + .long 0 + .long 1071659008 + .long 0 + .long 1071657984 + .long 0 + .long 1071656960 + .long 0 + .long 1071655936 + .long 0 + .long 1071654912 + .long 0 + .long 1071653888 + .long 0 + .long 1071652864 + .long 0 + .long 1071651840 + .long 0 + .long 1071650816 + .long 0 + .long 1071649792 + .long 0 + .long 1071648768 + .long 0 + .long 1071647744 + .long 0 + .long 1071646720 + .long 0 + .long 1071645696 + .long 0 + .long 1071644672 + .long 0 + .long 1101004800 + .long 1073741824 + .long 1095761920 + .long 256 + .long 1118830592 + .long 0 + .long 1017118720 + .long 1413754136 + .long 1073291771 + .long 856972295 + .long 1016178214 + .long 1413754136 + .long 1074340347 + .long 856972295 + .long 1017226790 + .long 0 + .long 1072693248 + .long 0 + .long 1071644672 + .long 0 + .long 0 + .long 1476395008 + .long 1069897045 + .long 1768958041 + .long 3189069141 + .long 805306368 + .long 1068708659 + .long 3580333578 + .long 1040816593 + .long 3067382784 + .long 1067899757 + .long 3397590151 + .long 1067392113 + .long 2939529726 + .long 1066854585 + .long 1423429166 + .long 1066517752 + .long 1775218934 + .long 1066178574 + .long 1185392460 + .long 1065859647 + .long 289998670 + .long 1065577550 + .long 3179807072 + .long 1065648121 + .long 3781007284 + .long 1061576176 + .long 2482106687 + .long 1067019199 + .long 763519713 + .long 3214591591 + .long 3695107454 + .long 1067530646 + .long 0 + .long 1073741824 + .long 1124791109 + .long 1006764147 + .long 1476395008 + .long 1069897045 + .long 1953913876 + .long 3189069141 + .long 805306368 + .long 1067660083 + .long 165110192 + .long 1039768033 + .long 3067304082 + .long 1065802605 + .long 3404727379 + .long 1064246385 + .long 2737480376 + .long 1062660281 + .long 933797922 + .long 1061274873 + .long 1475716730 + .long 1059887095 + .long 1511619763 + .long 1058519827 + .long 556024211 + .long 1057187555 + .long 3482101045 + .long 1056217350 + .long 1174622859 + .long 1050762633 + .long 899668651 + .long 1055506366 + .long 1081094694 + .long 3202035365 + .long 2559814773 + .long 1053906576 + .long 0 + .long 3219128320 + .long 0 + .long 1071120384 + .long 0 + .long 3218341888 + .long 0 + .long 1070694400 + .long 0 + .long 3218046976 + .long 0 + .long 1070391296 + .long 0 + .long 3217739776 + .type _vmldACosHATab,@object + .size _vmldACosHATab,4520 + .space 88, 0x00 + .align 16 + +.FLT_197: + .long 0x00000000,0x80000000,0x00000000,0x00000000 + .type .FLT_197,@object + .size .FLT_197,16 diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core-avx2.S b/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core-avx2.S new file mode 100644 index 0000000000..4d64fd1c00 --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core-avx2.S @@ -0,0 +1,20 @@ +/* AVX2 version of vectorized acos, vector length is 8. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#define _ZGVeN8v_acos _ZGVeN8v_acos_avx2_wrapper +#include "../svml_d_acos8_core.S" diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core.c b/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core.c new file mode 100644 index 0000000000..1e7d1865fb --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core.c @@ -0,0 +1,27 @@ +/* Multiple versions of vectorized acos, vector length is 8. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#define SYMBOL_NAME _ZGVeN8v_acos +#include "ifunc-mathvec-avx512-skx.h" + +libc_ifunc_redirected (REDIRECT_NAME, SYMBOL_NAME, IFUNC_SELECTOR ()); + +#ifdef SHARED +__hidden_ver1 (_ZGVeN8v_acos, __GI__ZGVeN8v_acos, __redirect__ZGVeN8v_acos) + __attribute__ ((visibility ("hidden"))); +#endif diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core_avx512.S b/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core_avx512.S new file mode 100644 index 0000000000..6c7c8535b6 --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_acos8_core_avx512.S @@ -0,0 +1,2608 @@ +/* Function acos vectorized with AVX-512. + Copyright (C) 2021 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 + https://www.gnu.org/licenses/. */ + +/* + * ALGORITHM DESCRIPTION: + * + * SelMask = (|x| >= 0.5) ? 1 : 0; + * R = SelMask ? sqrt(0.5 - 0.5*|x|) : |x| + * acos(|x|) = SelMask ? 2*Poly(R) : (Pi/2 - Poly(R)) + * acos(x) = sign(x) ? (Pi - acos(|x|)) : acos(|x|) + * + */ + +#include <sysdep.h> + + .text +ENTRY(_ZGVeN8v_acos_skx) + pushq %rbp + cfi_def_cfa_offset(16) + movq %rsp, %rbp + cfi_def_cfa(6, 16) + cfi_offset(6, -16) + andq $-64, %rsp + subq $192, %rsp + vmovups __svml_dacos_data_internal(%rip), %zmm7 + vmovups 64+__svml_dacos_data_internal(%rip), %zmm8 + +/* S ~ 2*sqrt(Y) */ + vmovups 128+__svml_dacos_data_internal(%rip), %zmm11 + vmovups 384+__svml_dacos_data_internal(%rip), %zmm14 + vmovups 448+__svml_dacos_data_internal(%rip), %zmm15 + vmovups 512+__svml_dacos_data_internal(%rip), %zmm2 + vmovups 576+__svml_dacos_data_internal(%rip), %zmm1 + vmovups 256+__svml_dacos_data_internal(%rip), %zmm10 + vmovaps %zmm0, %zmm6 + +/* x = -|arg| */ + vorpd %zmm6, %zmm7, %zmm5 + vandpd %zmm6, %zmm7, %zmm4 + +/* Y = 0.5 + 0.5*(-x) */ + vfmadd231pd {rn-sae}, %zmm5, %zmm8, %zmm8 + +/* x^2 */ + vmulpd {rn-sae}, %zmm5, %zmm5, %zmm9 + vrsqrt14pd %zmm8, %zmm12 + vcmppd $17, {sae}, %zmm11, %zmm8, %k2 + vcmppd $17, {sae}, %zmm10, %zmm5, %k0 + vmovups 960+__svml_dacos_data_internal(%rip), %zmm10 + vmovups 1088+__svml_dacos_data_internal(%rip), %zmm11 + vminpd {sae}, %zmm8, %zmm9, %zmm3 + vmovups 832+__svml_dacos_data_internal(%rip), %zmm9 + vxorpd %zmm12, %zmm12, %zmm12{%k2} + vaddpd {rn-sae}, %zmm8, %zmm8, %zmm0 + vcmppd $21, {sae}, %zmm8, %zmm3, %k1 + +/* X<X^2 iff X<0 */ + vcmppd $17, {sae}, %zmm3, %zmm6, %k3 + vmulpd {rn-sae}, %zmm12, %zmm12, %zmm13 + vmulpd {rn-sae}, %zmm12, %zmm0, %zmm7 + vmovups 896+__svml_dacos_data_internal(%rip), %zmm12 + +/* polynomial */ + vmovups 704+__svml_dacos_data_internal(%rip), %zmm8 + vfmsub213pd {rn-sae}, %zmm14, %zmm13, %zmm0 + vmovups 640+__svml_dacos_data_internal(%rip), %zmm13 + vfmadd231pd {rn-sae}, %zmm3, %zmm9, %zmm12 + vmovups 1344+__svml_dacos_data_internal(%rip), %zmm9 + vfmadd231pd {rn-sae}, %zmm0, %zmm15, %zmm2 + vmovups 1216+__svml_dacos_data_internal(%rip), %zmm15 + vmulpd {rn-sae}, %zmm0, %zmm7, %zmm14 + vfmadd213pd {rn-sae}, %zmm1, %zmm0, %zmm2 + vmovups 768+__svml_dacos_data_internal(%rip), %zmm1 + kmovw %k1, %eax + kmovw %k3, %ecx + kmovw %k0, %edx + vfmadd213pd {rn-sae}, %zmm13, %zmm0, %zmm2 + vfmadd231pd {rn-sae}, %zmm3, %zmm8, %zmm1 + vmovups 1280+__svml_dacos_data_internal(%rip), %zmm8 + vmulpd {rn-sae}, %zmm3, %zmm3, %zmm0 + vfnmadd213pd {rn-sae}, %zmm7, %zmm14, %zmm2 + vmovups 1024+__svml_dacos_data_internal(%rip), %zmm7 + vfmadd231pd {rn-sae}, %zmm3, %zmm15, %zmm8 + vfmadd213pd {rn-sae}, %zmm12, %zmm0, %zmm1 + vblendmpd %zmm2, %zmm5, %zmm2{%k1} + vfmadd231pd {rn-sae}, %zmm3, %zmm10, %zmm7 + vmovups 1152+__svml_dacos_data_internal(%rip), %zmm10 + vfmadd231pd {rn-sae}, %zmm3, %zmm11, %zmm10 + andl %eax, %ecx + vmovups 1408+__svml_dacos_data_internal(%rip), %zmm11 + kmovw %ecx, %k2 + vfmadd213pd {rn-sae}, %zmm10, %zmm0, %zmm7 + vfmadd231pd {rn-sae}, %zmm3, %zmm9, %zmm11 + vmulpd {rn-sae}, %zmm0, %zmm0, %zmm10 + vfmadd213pd {rn-sae}, %zmm7, %zmm10, %zmm1 + vfmadd213pd {rn-sae}, %zmm8, %zmm0, %zmm1 + vfmadd213pd {rn-sae}, %zmm11, %zmm0, %zmm1 + vmovups 1664+__svml_dacos_data_internal(%rip), %zmm0 + vmulpd {rn-sae}, %zmm3, %zmm1, %zmm1 + vxorpd %zmm4, %zmm2, %zmm3 + vxorpd %zmm0, %zmm0, %zmm0{%k1} + vfmadd213pd {rn-sae}, %zmm3, %zmm3, %zmm1 + vorpd 1536+__svml_dacos_data_internal(%rip), %zmm0, %zmm0{%k2} + vaddpd {rn-sae}, %zmm1, %zmm0, %zmm0 + testl %edx, %edx + jne .LBL_1_3 + +.LBL_1_2: + movq %rbp, %rsp + popq %rbp + cfi_def_cfa(7, 8) + cfi_restore(6) + ret + cfi_def_cfa(6, 16) + cfi_offset(6, -16) + +.LBL_1_3: + vmovups %zmm6, 64(%rsp) + vmovups %zmm0, 128(%rsp) + je .LBL_1_2 + xorl %eax, %eax + vzeroupper + kmovw %k4, 24(%rsp) + kmovw %k5, 16(%rsp) + kmovw %k6, 8(%rsp) + kmovw %k7, (%rsp) + movq %rsi, 40(%rsp) + movq %rdi, 32(%rsp) + movq %r12, 56(%rsp) + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22 + movl %eax, %r12d + movq %r13, 48(%rsp) + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22 + movl %edx, %r13d + .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 + +.LBL_1_7: + btl %r12d, %r13d + jc .LBL_1_10 + +.LBL_1_8: + incl %r12d + cmpl $8, %r12d + jl .LBL_1_7 + kmovw 24(%rsp), %k4 + cfi_restore(122) + kmovw 16(%rsp), %k5 + cfi_restore(123) + kmovw 8(%rsp), %k6 + cfi_restore(124) + kmovw (%rsp), %k7 + cfi_restore(125) + vmovups 128(%rsp), %zmm0 + movq 40(%rsp), %rsi + cfi_restore(4) + movq 32(%rsp), %rdi + cfi_restore(5) + movq 56(%rsp), %r12 + cfi_restore(12) + movq 48(%rsp), %r13 + cfi_restore(13) + jmp .LBL_1_2 + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 + +.LBL_1_10: + lea 64(%rsp,%r12,8), %rdi + lea 128(%rsp,%r12,8), %rsi + call __svml_dacos_cout_rare_internal + jmp .LBL_1_8 + +END(_ZGVeN8v_acos_skx) + + .align 16,0x90 + +__svml_dacos_cout_rare_internal: + + cfi_startproc + + xorl %eax, %eax + movzwl 6(%rdi), %edx + andl $32752, %edx + movb 7(%rdi), %cl + movsd (%rdi), %xmm1 + cmpl $32752, %edx + je .LBL_2_20 + movsd %xmm1, -32(%rsp) + andb $127, %cl + movb %cl, -25(%rsp) + movsd -32(%rsp), %xmm12 + movsd 4168+_vmldACosHATab(%rip), %xmm0 + comisd %xmm12, %xmm0 + jbe .LBL_2_14 + movsd 4176+_vmldACosHATab(%rip), %xmm1 + comisd %xmm12, %xmm1 + jbe .LBL_2_10 + comisd 4128+_vmldACosHATab(%rip), %xmm12 + jbe .LBL_2_9 + movsd 4104+_vmldACosHATab(%rip), %xmm6 + movaps %xmm12, %xmm8 + mulsd %xmm12, %xmm6 + movaps %xmm12, %xmm7 + movsd %xmm6, -40(%rsp) + movsd -40(%rsp), %xmm13 + movsd 4104+_vmldACosHATab(%rip), %xmm5 + subsd -32(%rsp), %xmm13 + movsd %xmm13, -48(%rsp) + movsd -40(%rsp), %xmm15 + movsd -48(%rsp), %xmm14 + subsd %xmm14, %xmm15 + movaps %xmm12, %xmm14 + movsd %xmm15, -40(%rsp) + movsd -40(%rsp), %xmm6 + subsd %xmm6, %xmm8 + movsd %xmm8, -48(%rsp) + movsd -40(%rsp), %xmm9 + movaps %xmm9, %xmm4 + addsd %xmm9, %xmm7 + mulsd %xmm9, %xmm4 + movsd -48(%rsp), %xmm10 + movaps %xmm4, %xmm11 + mulsd %xmm10, %xmm7 + mulsd %xmm4, %xmm5 + addsd %xmm7, %xmm11 + movsd 4312+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movsd %xmm5, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4104+_vmldACosHATab(%rip), %xmm5 + subsd %xmm4, %xmm1 + addsd 4304+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movsd %xmm1, -48(%rsp) + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + addsd 4296+_vmldACosHATab(%rip), %xmm8 + subsd %xmm2, %xmm0 + mulsd %xmm11, %xmm8 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm3 + addsd 4288+_vmldACosHATab(%rip), %xmm8 + subsd %xmm3, %xmm4 + mulsd %xmm11, %xmm8 + movsd %xmm4, -48(%rsp) + movsd -40(%rsp), %xmm6 + mulsd %xmm6, %xmm9 + addsd 4280+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm6, %xmm10 + mulsd %xmm11, %xmm8 + mulsd %xmm9, %xmm5 + addsd 4272+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movaps %xmm9, %xmm0 + movsd -48(%rsp), %xmm13 + movaps %xmm6, %xmm4 + movsd %xmm5, -40(%rsp) + addsd %xmm13, %xmm7 + addsd 4264+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm7, %xmm14 + mulsd %xmm11, %xmm8 + addsd %xmm14, %xmm10 + addsd 4256+_vmldACosHATab(%rip), %xmm8 + movsd -40(%rsp), %xmm1 + mulsd %xmm11, %xmm8 + subsd %xmm9, %xmm1 + addsd %xmm10, %xmm9 + addsd 4248+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm9, %xmm7 + mulsd %xmm11, %xmm8 + movsd %xmm1, -48(%rsp) + movsd -40(%rsp), %xmm2 + movsd -48(%rsp), %xmm15 + subsd %xmm15, %xmm2 + addsd 4240+_vmldACosHATab(%rip), %xmm8 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm5 + mulsd %xmm11, %xmm8 + subsd %xmm5, %xmm0 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm3 + movsd -48(%rsp), %xmm5 + movaps %xmm5, %xmm13 + addsd 4232+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm3, %xmm4 + addsd %xmm10, %xmm13 + mulsd %xmm11, %xmm8 + mulsd %xmm13, %xmm6 + addsd 4224+_vmldACosHATab(%rip), %xmm8 + addsd %xmm7, %xmm6 + mulsd %xmm11, %xmm8 + movsd 4104+_vmldACosHATab(%rip), %xmm7 + movaps %xmm4, %xmm13 + mulsd %xmm4, %xmm7 + addsd 4216+_vmldACosHATab(%rip), %xmm8 + movsd %xmm7, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4200+_vmldACosHATab(%rip), %xmm11 + subsd %xmm4, %xmm1 + mulsd %xmm9, %xmm11 + addsd %xmm6, %xmm4 + movsd %xmm1, -48(%rsp) + movaps %xmm12, %xmm9 + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + movsd 4192+_vmldACosHATab(%rip), %xmm1 + subsd %xmm2, %xmm0 + mulsd %xmm1, %xmm3 + mulsd %xmm1, %xmm10 + mulsd %xmm4, %xmm8 + addsd %xmm3, %xmm9 + mulsd %xmm1, %xmm5 + addsd %xmm10, %xmm11 + movsd %xmm0, -40(%rsp) + addsd %xmm11, %xmm8 + movsd -40(%rsp), %xmm7 + addsd %xmm5, %xmm8 + subsd %xmm7, %xmm13 + movsd %xmm13, -48(%rsp) + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + movsd %xmm9, -40(%rsp) + addsd %xmm2, %xmm6 + movsd -40(%rsp), %xmm10 + movsd %xmm3, -56(%rsp) + subsd %xmm10, %xmm12 + movsd 4208+_vmldACosHATab(%rip), %xmm4 + addsd %xmm12, %xmm3 + mulsd %xmm4, %xmm0 + mulsd %xmm4, %xmm6 + movsd %xmm3, -48(%rsp) + movsd -40(%rsp), %xmm3 + movaps %xmm3, %xmm12 + movsd -48(%rsp), %xmm7 + addsd %xmm0, %xmm12 + addsd %xmm7, %xmm8 + movsd %xmm12, -40(%rsp) + movsd -40(%rsp), %xmm12 + subsd %xmm12, %xmm3 + addsd %xmm3, %xmm0 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm3 + movsd -48(%rsp), %xmm0 + movsd (%rdi), %xmm1 + addsd %xmm8, %xmm0 + comisd 4184+_vmldACosHATab(%rip), %xmm1 + addsd %xmm0, %xmm6 + jbe .LBL_2_7 + movsd 4136+_vmldACosHATab(%rip), %xmm2 + movaps %xmm2, %xmm0 + subsd %xmm3, %xmm0 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4144+_vmldACosHATab(%rip), %xmm0 + subsd %xmm1, %xmm2 + subsd %xmm6, %xmm0 + subsd %xmm3, %xmm2 + movsd %xmm2, -48(%rsp) + movsd -40(%rsp), %xmm1 + movsd -48(%rsp), %xmm3 + addsd %xmm3, %xmm0 + jmp .LBL_2_8 + +.LBL_2_7: + movsd 4136+_vmldACosHATab(%rip), %xmm2 + movaps %xmm3, %xmm0 + addsd %xmm2, %xmm0 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + subsd %xmm1, %xmm2 + addsd %xmm2, %xmm3 + movsd %xmm3, -48(%rsp) + movsd 4144+_vmldACosHATab(%rip), %xmm3 + movsd -40(%rsp), %xmm1 + addsd %xmm3, %xmm6 + movsd -48(%rsp), %xmm0 + addsd %xmm6, %xmm0 + +.LBL_2_8: + addsd %xmm0, %xmm1 + movsd %xmm1, (%rsi) + ret + +.LBL_2_9: + movsd 4144+_vmldACosHATab(%rip), %xmm1 + addsd %xmm0, %xmm12 + movsd %xmm12, -40(%rsp) + movsd -40(%rsp), %xmm0 + mulsd -32(%rsp), %xmm0 + movsd %xmm0, -56(%rsp) + movb -49(%rsp), %dl + movb 7(%rdi), %dil + andb $127, %dl + andb $-128, %dil + orb %dil, %dl + movb %dl, -49(%rsp) + subsd -56(%rsp), %xmm1 + addsd 4136+_vmldACosHATab(%rip), %xmm1 + movsd %xmm1, (%rsi) + ret + +.LBL_2_10: + movaps %xmm0, %xmm8 + movzwl 4174+_vmldACosHATab(%rip), %r9d + pxor %xmm13, %xmm13 + andl $-32753, %r9d + subsd %xmm12, %xmm8 + subsd %xmm0, %xmm13 + mulsd %xmm8, %xmm1 + movsd %xmm1, -56(%rsp) + movzwl -50(%rsp), %ecx + andl $32752, %ecx + shrl $4, %ecx + addl $-1023, %ecx + movl %ecx, %r8d + movl %ecx, %edx + negl %r8d + addl $1023, %r8d + andl $2047, %r8d + shll $4, %r8d + movsd %xmm0, -32(%rsp) + orl %r8d, %r9d + movw %r9w, -26(%rsp) + andl $1, %edx + movsd -32(%rsp), %xmm4 + lea _vmldACosHATab(%rip), %r8 + mulsd %xmm4, %xmm1 + movl %edx, %r10d + movaps %xmm1, %xmm15 + movsd 4112+_vmldACosHATab(%rip), %xmm6 + addsd %xmm1, %xmm15 + jne .LBL_54 + movaps %xmm1, %xmm15 + +.LBL_54: + mulsd %xmm15, %xmm6 + movaps %xmm15, %xmm7 + movaps %xmm6, %xmm9 + subl %edx, %ecx + movsd 4120+_vmldACosHATab(%rip), %xmm11 + subsd %xmm15, %xmm9 + addsd %xmm1, %xmm11 + movsd %xmm9, -48(%rsp) + movsd -48(%rsp), %xmm10 + movsd %xmm11, -24(%rsp) + subsd %xmm10, %xmm6 + movl -24(%rsp), %r11d + movaps %xmm6, %xmm14 + shll $8, %r10d + andl $511, %r11d + addl %r10d, %r11d + subsd %xmm6, %xmm7 + movsd (%r8,%r11,8), %xmm5 + addsd %xmm7, %xmm14 + mulsd %xmm5, %xmm6 + movaps %xmm5, %xmm12 + mulsd %xmm5, %xmm12 + mulsd %xmm12, %xmm14 + movsd 4512+_vmldACosHATab(%rip), %xmm4 + addsd %xmm13, %xmm14 + mulsd %xmm14, %xmm4 + shrl $1, %ecx + addsd 4504+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + addl $1023, %ecx + andl $2047, %ecx + addsd 4496+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movzwl 4174+_vmldACosHATab(%rip), %r9d + shll $4, %ecx + andl $-32753, %r9d + movsd %xmm0, -16(%rsp) + orl %ecx, %r9d + movw %r9w, -10(%rsp) + movsd -16(%rsp), %xmm9 + mulsd %xmm9, %xmm6 + addsd 4488+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movsd 4104+_vmldACosHATab(%rip), %xmm3 + mulsd %xmm6, %xmm3 + addsd 4480+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movsd %xmm3, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4352+_vmldACosHATab(%rip), %xmm11 + subsd %xmm6, %xmm1 + addsd 4472+_vmldACosHATab(%rip), %xmm4 + addsd 4360+_vmldACosHATab(%rip), %xmm11 + mulsd %xmm14, %xmm4 + mulsd %xmm8, %xmm11 + addsd 4464+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + mulsd %xmm15, %xmm4 + movsd %xmm1, -48(%rsp) + addsd %xmm4, %xmm7 + mulsd %xmm5, %xmm7 + movsd 4456+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + mulsd %xmm9, %xmm7 + addsd 4448+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm2 + movsd -48(%rsp), %xmm0 + movsd 4104+_vmldACosHATab(%rip), %xmm4 + subsd %xmm0, %xmm2 + mulsd %xmm8, %xmm4 + addsd 4440+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movaps %xmm8, %xmm0 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm14 + movsd 4104+_vmldACosHATab(%rip), %xmm2 + subsd %xmm14, %xmm6 + addsd 4432+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd %xmm6, -48(%rsp) + movsd -40(%rsp), %xmm6 + movsd -48(%rsp), %xmm10 + movsd %xmm4, -40(%rsp) + addsd %xmm10, %xmm7 + addsd 4424+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm3 + movsd 4336+_vmldACosHATab(%rip), %xmm12 + subsd %xmm8, %xmm3 + addsd 4416+_vmldACosHATab(%rip), %xmm5 + addsd 4344+_vmldACosHATab(%rip), %xmm12 + mulsd %xmm8, %xmm5 + addsd %xmm11, %xmm12 + addsd 4408+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm12 + mulsd %xmm8, %xmm5 + movsd %xmm3, -48(%rsp) + movsd -40(%rsp), %xmm1 + movsd -48(%rsp), %xmm15 + movsd 4320+_vmldACosHATab(%rip), %xmm13 + subsd %xmm15, %xmm1 + addsd 4400+_vmldACosHATab(%rip), %xmm5 + addsd 4328+_vmldACosHATab(%rip), %xmm13 + mulsd %xmm8, %xmm5 + addsd %xmm12, %xmm13 + addsd 4392+_vmldACosHATab(%rip), %xmm5 + movsd %xmm1, -40(%rsp) + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm4 + subsd %xmm4, %xmm0 + addsd 4384+_vmldACosHATab(%rip), %xmm5 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm4 + movaps %xmm4, %xmm14 + mulsd %xmm4, %xmm14 + mulsd %xmm8, %xmm5 + mulsd %xmm14, %xmm2 + addsd 4376+_vmldACosHATab(%rip), %xmm5 + movsd -48(%rsp), %xmm3 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm9 + mulsd %xmm8, %xmm5 + subsd %xmm14, %xmm9 + movsd %xmm9, -48(%rsp) + movsd -40(%rsp), %xmm11 + movsd -48(%rsp), %xmm10 + movsd 4336+_vmldACosHATab(%rip), %xmm0 + subsd %xmm10, %xmm11 + mulsd %xmm4, %xmm0 + addsd 4368+_vmldACosHATab(%rip), %xmm5 + addsd %xmm8, %xmm4 + mulsd %xmm8, %xmm5 + mulsd %xmm3, %xmm4 + mulsd %xmm8, %xmm5 + movsd %xmm11, -40(%rsp) + movaps %xmm0, %xmm1 + movsd -40(%rsp), %xmm12 + mulsd %xmm8, %xmm5 + subsd %xmm12, %xmm14 + movsd %xmm14, -48(%rsp) + addsd %xmm5, %xmm13 + movsd -40(%rsp), %xmm9 + mulsd 4352+_vmldACosHATab(%rip), %xmm9 + mulsd %xmm13, %xmm7 + addsd %xmm9, %xmm1 + movsd -48(%rsp), %xmm2 + movsd %xmm1, -40(%rsp) + addsd %xmm2, %xmm4 + movsd -40(%rsp), %xmm13 + movsd %xmm9, -24(%rsp) + subsd %xmm13, %xmm0 + mulsd 4352+_vmldACosHATab(%rip), %xmm4 + addsd %xmm0, %xmm9 + movsd %xmm9, -48(%rsp) + movsd -40(%rsp), %xmm12 + movsd 4320+_vmldACosHATab(%rip), %xmm10 + movsd -48(%rsp), %xmm1 + addsd %xmm12, %xmm10 + movsd %xmm10, -40(%rsp) + movsd -40(%rsp), %xmm15 + movsd 4320+_vmldACosHATab(%rip), %xmm11 + movsd 4104+_vmldACosHATab(%rip), %xmm9 + subsd %xmm15, %xmm11 + movsd 4336+_vmldACosHATab(%rip), %xmm2 + addsd %xmm11, %xmm12 + mulsd %xmm3, %xmm2 + movsd %xmm12, -48(%rsp) + movsd -40(%rsp), %xmm15 + mulsd %xmm15, %xmm9 + movsd -48(%rsp), %xmm0 + movsd %xmm9, -40(%rsp) + movsd -40(%rsp), %xmm10 + movsd 4360+_vmldACosHATab(%rip), %xmm3 + subsd %xmm15, %xmm10 + mulsd %xmm8, %xmm3 + movsd %xmm10, -48(%rsp) + movsd -40(%rsp), %xmm11 + movsd -48(%rsp), %xmm13 + subsd %xmm13, %xmm11 + addsd 4344+_vmldACosHATab(%rip), %xmm3 + movsd %xmm11, -40(%rsp) + movsd -40(%rsp), %xmm14 + mulsd %xmm8, %xmm3 + subsd %xmm14, %xmm15 + movsd %xmm15, -48(%rsp) + movsd -40(%rsp), %xmm10 + movsd -48(%rsp), %xmm9 + addsd %xmm9, %xmm4 + addsd 4328+_vmldACosHATab(%rip), %xmm3 + addsd %xmm2, %xmm4 + addsd %xmm5, %xmm3 + addsd %xmm1, %xmm4 + addsd %xmm0, %xmm4 + addsd %xmm3, %xmm4 + mulsd %xmm6, %xmm4 + mulsd %xmm10, %xmm6 + addsd %xmm7, %xmm4 + movsd (%rdi), %xmm7 + comisd 4184+_vmldACosHATab(%rip), %xmm7 + ja .LBL_2_13 + movsd 4152+_vmldACosHATab(%rip), %xmm2 + movaps %xmm2, %xmm0 + movsd 4160+_vmldACosHATab(%rip), %xmm5 + subsd %xmm6, %xmm0 + subsd %xmm4, %xmm5 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd %xmm6, -56(%rsp) + subsd %xmm1, %xmm2 + subsd %xmm6, %xmm2 + movsd %xmm2, -48(%rsp) + movsd -40(%rsp), %xmm6 + movsd -48(%rsp), %xmm3 + movaps %xmm3, %xmm4 + addsd %xmm5, %xmm4 + +.LBL_2_13: + addsd %xmm4, %xmm6 + movsd %xmm6, (%rsi) + ret + +.LBL_2_14: + ucomisd %xmm0, %xmm1 + jp .LBL_2_15 + je .LBL_2_19 + +.LBL_2_15: + xorps .FLT_197(%rip), %xmm0 + ucomisd %xmm0, %xmm1 + jp .LBL_2_16 + je .LBL_2_18 + +.LBL_2_16: + movl $1, %eax + pxor %xmm1, %xmm1 + pxor %xmm0, %xmm0 + divsd %xmm0, %xmm1 + movsd %xmm1, (%rsi) + +.LBL_2_17: + ret + +.LBL_2_18: + movsd 4152+_vmldACosHATab(%rip), %xmm0 + addsd 4160+_vmldACosHATab(%rip), %xmm0 + movsd %xmm0, (%rsi) + ret + +.LBL_2_19: + movq 4184+_vmldACosHATab(%rip), %rdx + movq %rdx, (%rsi) + ret + +.LBL_2_20: + divsd %xmm1, %xmm1 + movsd %xmm1, (%rsi) + testl $1048575, 4(%rdi) + jne .LBL_2_17 + cmpl $0, (%rdi) + sete %al + ret + + cfi_endproc + + .type __svml_dacos_cout_rare_internal,@function + .size __svml_dacos_cout_rare_internal,.-__svml_dacos_cout_rare_internal + + .section .rodata, "a" + .align 64 + +__svml_dacos_data_internal: + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 1071644672 + .long 0 + .long 1071644672 + .long 0 + .long 1071644672 + .long 0 + .long 1071644672 + .long 0 + .long 1071644672 + .long 0 + .long 1071644672 + .long 0 + .long 1071644672 + .long 0 + .long 1071644672 + .long 0 + .long 805306368 + .long 0 + .long 805306368 + .long 0 + .long 805306368 + .long 0 + .long 805306368 + .long 0 + .long 805306368 + .long 0 + .long 805306368 + .long 0 + .long 805306368 + .long 0 + .long 805306368 + .long 0 + .long 4294967040 + .long 0 + .long 4294967040 + .long 0 + .long 4294967040 + .long 0 + .long 4294967040 + .long 0 + .long 4294967040 + .long 0 + .long 4294967040 + .long 0 + .long 4294967040 + .long 0 + .long 4294967040 + .long 0 + .long 3220176896 + .long 0 + .long 3220176896 + .long 0 + .long 3220176896 + .long 0 + .long 3220176896 + .long 0 + .long 3220176896 + .long 0 + .long 3220176896 + .long 0 + .long 3220176896 + .long 0 + .long 3220176896 + .long 4227858432 + .long 4294967295 + .long 4227858432 + .long 4294967295 + .long 4227858432 + .long 4294967295 + .long 4227858432 + .long 4294967295 + .long 4227858432 + .long 4294967295 + .long 4227858432 + .long 4294967295 + .long 4227858432 + .long 4294967295 + .long 4227858432 + .long 4294967295 + .long 0 + .long 1073741824 + .long 0 + .long 1073741824 + .long 0 + .long 1073741824 + .long 0 + .long 1073741824 + .long 0 + .long 1073741824 + .long 0 + .long 1073741824 + .long 0 + .long 1073741824 + .long 0 + .long 1073741824 + .long 2570790083 + .long 3213983744 + .long 2570790083 + .long 3213983744 + .long 2570790083 + .long 3213983744 + .long 2570790083 + .long 3213983744 + .long 2570790083 + .long 3213983744 + .long 2570790083 + .long 3213983744 + .long 2570790083 + .long 3213983744 + .long 2570790083 + .long 3213983744 + .long 1869665325 + .long 1067712512 + .long 1869665325 + .long 1067712512 + .long 1869665325 + .long 1067712512 + .long 1869665325 + .long 1067712512 + .long 1869665325 + .long 1067712512 + .long 1869665325 + .long 1067712512 + .long 1869665325 + .long 1067712512 + .long 1869665325 + .long 1067712512 + .long 4294966935 + .long 3216506879 + .long 4294966935 + .long 3216506879 + .long 4294966935 + .long 3216506879 + .long 4294966935 + .long 3216506879 + .long 4294966935 + .long 3216506879 + .long 4294966935 + .long 3216506879 + .long 4294966935 + .long 3216506879 + .long 4294966935 + .long 3216506879 + .long 4294967197 + .long 1070596095 + .long 4294967197 + .long 1070596095 + .long 4294967197 + .long 1070596095 + .long 4294967197 + .long 1070596095 + .long 4294967197 + .long 1070596095 + .long 4294967197 + .long 1070596095 + .long 4294967197 + .long 1070596095 + .long 4294967197 + .long 1070596095 + .long 3339630857 + .long 1067480352 + .long 3339630857 + .long 1067480352 + .long 3339630857 + .long 1067480352 + .long 3339630857 + .long 1067480352 + .long 3339630857 + .long 1067480352 + .long 3339630857 + .long 1067480352 + .long 3339630857 + .long 1067480352 + .long 3339630857 + .long 1067480352 + .long 4158370029 + .long 3213949719 + .long 4158370029 + .long 3213949719 + .long 4158370029 + .long 3213949719 + .long 4158370029 + .long 3213949719 + .long 4158370029 + .long 3213949719 + .long 4158370029 + .long 3213949719 + .long 4158370029 + .long 3213949719 + .long 4158370029 + .long 3213949719 + .long 3216784302 + .long 1066680132 + .long 3216784302 + .long 1066680132 + .long 3216784302 + .long 1066680132 + .long 3216784302 + .long 1066680132 + .long 3216784302 + .long 1066680132 + .long 3216784302 + .long 1066680132 + .long 3216784302 + .long 1066680132 + .long 3216784302 + .long 1066680132 + .long 2513723093 + .long 1064982579 + .long 2513723093 + .long 1064982579 + .long 2513723093 + .long 1064982579 + .long 2513723093 + .long 1064982579 + .long 2513723093 + .long 1064982579 + .long 2513723093 + .long 1064982579 + .long 2513723093 + .long 1064982579 + .long 2513723093 + .long 1064982579 + .long 721210070 + .long 1065941212 + .long 721210070 + .long 1065941212 + .long 721210070 + .long 1065941212 + .long 721210070 + .long 1065941212 + .long 721210070 + .long 1065941212 + .long 721210070 + .long 1065941212 + .long 721210070 + .long 1065941212 + .long 721210070 + .long 1065941212 + .long 3414736215 + .long 1066167739 + .long 3414736215 + .long 1066167739 + .long 3414736215 + .long 1066167739 + .long 3414736215 + .long 1066167739 + .long 3414736215 + .long 1066167739 + .long 3414736215 + .long 1066167739 + .long 3414736215 + .long 1066167739 + .long 3414736215 + .long 1066167739 + .long 4114132270 + .long 1066518236 + .long 4114132270 + .long 1066518236 + .long 4114132270 + .long 1066518236 + .long 4114132270 + .long 1066518236 + .long 4114132270 + .long 1066518236 + .long 4114132270 + .long 1066518236 + .long 4114132270 + .long 1066518236 + .long 4114132270 + .long 1066518236 + .long 3957258973 + .long 1066854556 + .long 3957258973 + .long 1066854556 + .long 3957258973 + .long 1066854556 + .long 3957258973 + .long 1066854556 + .long 3957258973 + .long 1066854556 + .long 3957258973 + .long 1066854556 + .long 3957258973 + .long 1066854556 + .long 3957258973 + .long 1066854556 + .long 3778730174 + .long 1067392114 + .long 3778730174 + .long 1067392114 + .long 3778730174 + .long 1067392114 + .long 3778730174 + .long 1067392114 + .long 3778730174 + .long 1067392114 + .long 3778730174 + .long 1067392114 + .long 3778730174 + .long 1067392114 + .long 3778730174 + .long 1067392114 + .long 3014936056 + .long 1067899757 + .long 3014936056 + .long 1067899757 + .long 3014936056 + .long 1067899757 + .long 3014936056 + .long 1067899757 + .long 3014936056 + .long 1067899757 + .long 3014936056 + .long 1067899757 + .long 3014936056 + .long 1067899757 + .long 3014936056 + .long 1067899757 + .long 859300062 + .long 1068708659 + .long 859300062 + .long 1068708659 + .long 859300062 + .long 1068708659 + .long 859300062 + .long 1068708659 + .long 859300062 + .long 1068708659 + .long 859300062 + .long 1068708659 + .long 859300062 + .long 1068708659 + .long 859300062 + .long 1068708659 + .long 1431655068 + .long 1069897045 + .long 1431655068 + .long 1069897045 + .long 1431655068 + .long 1069897045 + .long 1431655068 + .long 1069897045 + .long 1431655068 + .long 1069897045 + .long 1431655068 + .long 1069897045 + .long 1431655068 + .long 1069897045 + .long 1431655068 + .long 1069897045 + .long 856972295 + .long 1017226790 + .long 856972295 + .long 1017226790 + .long 856972295 + .long 1017226790 + .long 856972295 + .long 1017226790 + .long 856972295 + .long 1017226790 + .long 856972295 + .long 1017226790 + .long 856972295 + .long 1017226790 + .long 856972295 + .long 1017226790 + .long 1413754136 + .long 1074340347 + .long 1413754136 + .long 1074340347 + .long 1413754136 + .long 1074340347 + .long 1413754136 + .long 1074340347 + .long 1413754136 + .long 1074340347 + .long 1413754136 + .long 1074340347 + .long 1413754136 + .long 1074340347 + .long 1413754136 + .long 1074340347 + .long 856972295 + .long 1016178214 + .long 856972295 + .long 1016178214 + .long 856972295 + .long 1016178214 + .long 856972295 + .long 1016178214 + .long 856972295 + .long 1016178214 + .long 856972295 + .long 1016178214 + .long 856972295 + .long 1016178214 + .long 856972295 + .long 1016178214 + .long 1413754136 + .long 1073291771 + .long 1413754136 + .long 1073291771 + .long 1413754136 + .long 1073291771 + .long 1413754136 + .long 1073291771 + .long 1413754136 + .long 1073291771 + .long 1413754136 + .long 1073291771 + .long 1413754136 + .long 1073291771 + .long 1413754136 + .long 1073291771 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 2147483648 + .long 0 + .long 4294705152 + .long 0 + .long 4294705152 + .long 0 + .long 4294705152 + .long 0 + .long 4294705152 + .long 0 + .long 4294705152 + .long 0 + .long 4294705152 + .long 0 + .long 4294705152 + .long 0 + .long 4294705152 + .long 4131758366 + .long 1067674714 + .long 4131758366 + .long 1067674714 + .long 4131758366 + .long 1067674714 + .long 4131758366 + .long 1067674714 + .long 4131758366 + .long 1067674714 + .long 4131758366 + .long 1067674714 + .long 4131758366 + .long 1067674714 + .long 4131758366 + .long 1067674714 + .long 3936260738 + .long 1066197319 + .long 3936260738 + .long 1066197319 + .long 3936260738 + .long 1066197319 + .long 3936260738 + .long 1066197319 + .long 3936260738 + .long 1066197319 + .long 3936260738 + .long 1066197319 + .long 3936260738 + .long 1066197319 + .long 3936260738 + .long 1066197319 + .long 354394453 + .long 1067472564 + .long 354394453 + .long 1067472564 + .long 354394453 + .long 1067472564 + .long 354394453 + .long 1067472564 + .long 354394453 + .long 1067472564 + .long 354394453 + .long 1067472564 + .long 354394453 + .long 1067472564 + .long 354394453 + .long 1067472564 + .long 709676628 + .long 1067895021 + .long 709676628 + .long 1067895021 + .long 709676628 + .long 1067895021 + .long 709676628 + .long 1067895021 + .long 709676628 + .long 1067895021 + .long 709676628 + .long 1067895021 + .long 709676628 + .long 1067895021 + .long 709676628 + .long 1067895021 + .long 3958922090 + .long 1068708761 + .long 3958922090 + .long 1068708761 + .long 3958922090 + .long 1068708761 + .long 3958922090 + .long 1068708761 + .long 3958922090 + .long 1068708761 + .long 3958922090 + .long 1068708761 + .long 3958922090 + .long 1068708761 + .long 3958922090 + .long 1068708761 + .long 2160605765 + .long 1069897044 + .long 2160605765 + .long 1069897044 + .long 2160605765 + .long 1069897044 + .long 2160605765 + .long 1069897044 + .long 2160605765 + .long 1069897044 + .long 2160605765 + .long 1069897044 + .long 2160605765 + .long 1069897044 + .long 2160605765 + .long 1069897044 + .long 0 + .long 2146435072 + .long 0 + .long 4293918720 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 1072693248 + .long 0 + .long 3220176896 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 0 + .long 0 + .long 2147483648 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .type __svml_dacos_data_internal,@object + .size __svml_dacos_data_internal,2496 + .align 32 + +_vmldACosHATab: + .long 0 + .long 1072693248 + .long 0 + .long 1072689152 + .long 0 + .long 1072685056 + .long 0 + .long 1072680960 + .long 0 + .long 1072676864 + .long 0 + .long 1072672768 + .long 0 + .long 1072668672 + .long 0 + .long 1072665600 + .long 0 + .long 1072661504 + .long 0 + .long 1072657408 + .long 0 + .long 1072653312 + .long 0 + .long 1072649216 + .long 0 + .long 1072646144 + .long 0 + .long 1072642048 + .long 0 + .long 1072637952 + .long 0 + .long 1072634880 + .long 0 + .long 1072630784 + .long 0 + .long 1072626688 + .long 0 + .long 1072623616 + .long 0 + .long 1072619520 + .long 0 + .long 1072615424 + .long 0 + .long 1072612352 + .long 0 + .long 1072608256 + .long 0 + .long 1072605184 + .long 0 + .long 1072601088 + .long 0 + .long 1072598016 + .long 0 + .long 1072593920 + .long 0 + .long 1072590848 + .long 0 + .long 1072586752 + .long 0 + .long 1072583680 + .long 0 + .long 1072580608 + .long 0 + .long 1072576512 + .long 0 + .long 1072573440 + .long 0 + .long 1072570368 + .long 0 + .long 1072566272 + .long 0 + .long 1072563200 + .long 0 + .long 1072560128 + .long 0 + .long 1072556032 + .long 0 + .long 1072552960 + .long 0 + .long 1072549888 + .long 0 + .long 1072546816 + .long 0 + .long 1072542720 + .long 0 + .long 1072539648 + .long 0 + .long 1072536576 + .long 0 + .long 1072533504 + .long 0 + .long 1072530432 + .long 0 + .long 1072527360 + .long 0 + .long 1072523264 + .long 0 + .long 1072520192 + .long 0 + .long 1072517120 + .long 0 + .long 1072514048 + .long 0 + .long 1072510976 + .long 0 + .long 1072507904 + .long 0 + .long 1072504832 + .long 0 + .long 1072501760 + .long 0 + .long 1072498688 + .long 0 + .long 1072495616 + .long 0 + .long 1072492544 + .long 0 + .long 1072489472 + .long 0 + .long 1072486400 + .long 0 + .long 1072483328 + .long 0 + .long 1072480256 + .long 0 + .long 1072478208 + .long 0 + .long 1072475136 + .long 0 + .long 1072472064 + .long 0 + .long 1072468992 + .long 0 + .long 1072465920 + .long 0 + .long 1072462848 + .long 0 + .long 1072459776 + .long 0 + .long 1072457728 + .long 0 + .long 1072454656 + .long 0 + .long 1072451584 + .long 0 + .long 1072448512 + .long 0 + .long 1072446464 + .long 0 + .long 1072443392 + .long 0 + .long 1072440320 + .long 0 + .long 1072437248 + .long 0 + .long 1072435200 + .long 0 + .long 1072432128 + .long 0 + .long 1072429056 + .long 0 + .long 1072427008 + .long 0 + .long 1072423936 + .long 0 + .long 1072420864 + .long 0 + .long 1072418816 + .long 0 + .long 1072415744 + .long 0 + .long 1072412672 + .long 0 + .long 1072410624 + .long 0 + .long 1072407552 + .long 0 + .long 1072405504 + .long 0 + .long 1072402432 + .long 0 + .long 1072400384 + .long 0 + .long 1072397312 + .long 0 + .long 1072395264 + .long 0 + .long 1072392192 + .long 0 + .long 1072390144 + .long 0 + .long 1072387072 + .long 0 + .long 1072385024 + .long 0 + .long 1072381952 + .long 0 + .long 1072379904 + .long 0 + .long 1072376832 + .long 0 + .long 1072374784 + .long 0 + .long 1072371712 + .long 0 + .long 1072369664 + .long 0 + .long 1072366592 + .long 0 + .long 1072364544 + .long 0 + .long 1072362496 + .long 0 + .long 1072359424 + .long 0 + .long 1072357376 + .long 0 + .long 1072355328 + .long 0 + .long 1072352256 + .long 0 + .long 1072350208 + .long 0 + .long 1072347136 + .long 0 + .long 1072345088 + .long 0 + .long 1072343040 + .long 0 + .long 1072340992 + .long 0 + .long 1072337920 + .long 0 + .long 1072335872 + .long 0 + .long 1072333824 + .long 0 + .long 1072330752 + .long 0 + .long 1072328704 + .long 0 + .long 1072326656 + .long 0 + .long 1072324608 + .long 0 + .long 1072321536 + .long 0 + .long 1072319488 + .long 0 + .long 1072317440 + .long 0 + .long 1072315392 + .long 0 + .long 1072313344 + .long 0 + .long 1072310272 + .long 0 + .long 1072308224 + .long 0 + .long 1072306176 + .long 0 + .long 1072304128 + .long 0 + .long 1072302080 + .long 0 + .long 1072300032 + .long 0 + .long 1072296960 + .long 0 + .long 1072294912 + .long 0 + .long 1072292864 + .long 0 + .long 1072290816 + .long 0 + .long 1072288768 + .long 0 + .long 1072286720 + .long 0 + .long 1072284672 + .long 0 + .long 1072282624 + .long 0 + .long 1072280576 + .long 0 + .long 1072278528 + .long 0 + .long 1072275456 + .long 0 + .long 1072273408 + .long 0 + .long 1072271360 + .long 0 + .long 1072269312 + .long 0 + .long 1072267264 + .long 0 + .long 1072265216 + .long 0 + .long 1072263168 + .long 0 + .long 1072261120 + .long 0 + .long 1072259072 + .long 0 + .long 1072257024 + .long 0 + .long 1072254976 + .long 0 + .long 1072252928 + .long 0 + .long 1072250880 + .long 0 + .long 1072248832 + .long 0 + .long 1072246784 + .long 0 + .long 1072244736 + .long 0 + .long 1072243712 + .long 0 + .long 1072241664 + .long 0 + .long 1072239616 + .long 0 + .long 1072237568 + .long 0 + .long 1072235520 + .long 0 + .long 1072233472 + .long 0 + .long 1072231424 + .long 0 + .long 1072229376 + .long 0 + .long 1072227328 + .long 0 + .long 1072225280 + .long 0 + .long 1072223232 + .long 0 + .long 1072222208 + .long 0 + .long 1072220160 + .long 0 + .long 1072218112 + .long 0 + .long 1072216064 + .long 0 + .long 1072214016 + .long 0 + .long 1072211968 + .long 0 + .long 1072210944 + .long 0 + .long 1072208896 + .long 0 + .long 1072206848 + .long 0 + .long 1072204800 + .long 0 + .long 1072202752 + .long 0 + .long 1072201728 + .long 0 + .long 1072199680 + .long 0 + .long 1072197632 + .long 0 + .long 1072195584 + .long 0 + .long 1072193536 + .long 0 + .long 1072192512 + .long 0 + .long 1072190464 + .long 0 + .long 1072188416 + .long 0 + .long 1072186368 + .long 0 + .long 1072185344 + .long 0 + .long 1072183296 + .long 0 + .long 1072181248 + .long 0 + .long 1072179200 + .long 0 + .long 1072178176 + .long 0 + .long 1072176128 + .long 0 + .long 1072174080 + .long 0 + .long 1072173056 + .long 0 + .long 1072171008 + .long 0 + .long 1072168960 + .long 0 + .long 1072167936 + .long 0 + .long 1072165888 + .long 0 + .long 1072163840 + .long 0 + .long 1072161792 + .long 0 + .long 1072160768 + .long 0 + .long 1072158720 + .long 0 + .long 1072157696 + .long 0 + .long 1072155648 + .long 0 + .long 1072153600 + .long 0 + .long 1072152576 + .long 0 + .long 1072150528 + .long 0 + .long 1072148480 + .long 0 + .long 1072147456 + .long 0 + .long 1072145408 + .long 0 + .long 1072143360 + .long 0 + .long 1072142336 + .long 0 + .long 1072140288 + .long 0 + .long 1072139264 + .long 0 + .long 1072137216 + .long 0 + .long 1072135168 + .long 0 + .long 1072134144 + .long 0 + .long 1072132096 + .long 0 + .long 1072131072 + .long 0 + .long 1072129024 + .long 0 + .long 1072128000 + .long 0 + .long 1072125952 + .long 0 + .long 1072124928 + .long 0 + .long 1072122880 + .long 0 + .long 1072120832 + .long 0 + .long 1072119808 + .long 0 + .long 1072117760 + .long 0 + .long 1072116736 + .long 0 + .long 1072114688 + .long 0 + .long 1072113664 + .long 0 + .long 1072111616 + .long 0 + .long 1072110592 + .long 0 + .long 1072108544 + .long 0 + .long 1072107520 + .long 0 + .long 1072105472 + .long 0 + .long 1072104448 + .long 0 + .long 1072102400 + .long 0 + .long 1072101376 + .long 0 + .long 1072099328 + .long 0 + .long 1072098304 + .long 0 + .long 1072096256 + .long 0 + .long 1072095232 + .long 0 + .long 1072094208 + .long 0 + .long 1072092160 + .long 0 + .long 1072091136 + .long 0 + .long 1072089088 + .long 0 + .long 1072088064 + .long 0 + .long 1072086016 + .long 0 + .long 1072084992 + .long 0 + .long 1072082944 + .long 0 + .long 1072081920 + .long 0 + .long 1072080896 + .long 0 + .long 1072078848 + .long 0 + .long 1072075776 + .long 0 + .long 1072073728 + .long 0 + .long 1072070656 + .long 0 + .long 1072067584 + .long 0 + .long 1072064512 + .long 0 + .long 1072061440 + .long 0 + .long 1072059392 + .long 0 + .long 1072056320 + .long 0 + .long 1072053248 + .long 0 + .long 1072051200 + .long 0 + .long 1072048128 + .long 0 + .long 1072045056 + .long 0 + .long 1072043008 + .long 0 + .long 1072039936 + .long 0 + .long 1072037888 + .long 0 + .long 1072034816 + .long 0 + .long 1072031744 + .long 0 + .long 1072029696 + .long 0 + .long 1072026624 + .long 0 + .long 1072024576 + .long 0 + .long 1072021504 + .long 0 + .long 1072019456 + .long 0 + .long 1072016384 + .long 0 + .long 1072014336 + .long 0 + .long 1072011264 + .long 0 + .long 1072009216 + .long 0 + .long 1072006144 + .long 0 + .long 1072004096 + .long 0 + .long 1072002048 + .long 0 + .long 1071998976 + .long 0 + .long 1071996928 + .long 0 + .long 1071993856 + .long 0 + .long 1071991808 + .long 0 + .long 1071989760 + .long 0 + .long 1071986688 + .long 0 + .long 1071984640 + .long 0 + .long 1071982592 + .long 0 + .long 1071979520 + .long 0 + .long 1071977472 + .long 0 + .long 1071975424 + .long 0 + .long 1071972352 + .long 0 + .long 1071970304 + .long 0 + .long 1071968256 + .long 0 + .long 1071966208 + .long 0 + .long 1071964160 + .long 0 + .long 1071961088 + .long 0 + .long 1071959040 + .long 0 + .long 1071956992 + .long 0 + .long 1071954944 + .long 0 + .long 1071952896 + .long 0 + .long 1071949824 + .long 0 + .long 1071947776 + .long 0 + .long 1071945728 + .long 0 + .long 1071943680 + .long 0 + .long 1071941632 + .long 0 + .long 1071939584 + .long 0 + .long 1071937536 + .long 0 + .long 1071935488 + .long 0 + .long 1071933440 + .long 0 + .long 1071930368 + .long 0 + .long 1071928320 + .long 0 + .long 1071926272 + .long 0 + .long 1071924224 + .long 0 + .long 1071922176 + .long 0 + .long 1071920128 + .long 0 + .long 1071918080 + .long 0 + .long 1071916032 + .long 0 + .long 1071913984 + .long 0 + .long 1071911936 + .long 0 + .long 1071909888 + .long 0 + .long 1071907840 + .long 0 + .long 1071905792 + .long 0 + .long 1071903744 + .long 0 + .long 1071901696 + .long 0 + .long 1071900672 + .long 0 + .long 1071898624 + .long 0 + .long 1071896576 + .long 0 + .long 1071894528 + .long 0 + .long 1071892480 + .long 0 + .long 1071890432 + .long 0 + .long 1071888384 + .long 0 + .long 1071886336 + .long 0 + .long 1071884288 + .long 0 + .long 1071883264 + .long 0 + .long 1071881216 + .long 0 + .long 1071879168 + .long 0 + .long 1071877120 + .long 0 + .long 1071875072 + .long 0 + .long 1071873024 + .long 0 + .long 1071872000 + .long 0 + .long 1071869952 + .long 0 + .long 1071867904 + .long 0 + .long 1071865856 + .long 0 + .long 1071864832 + .long 0 + .long 1071862784 + .long 0 + .long 1071860736 + .long 0 + .long 1071858688 + .long 0 + .long 1071856640 + .long 0 + .long 1071855616 + .long 0 + .long 1071853568 + .long 0 + .long 1071851520 + .long 0 + .long 1071850496 + .long 0 + .long 1071848448 + .long 0 + .long 1071846400 + .long 0 + .long 1071844352 + .long 0 + .long 1071843328 + .long 0 + .long 1071841280 + .long 0 + .long 1071839232 + .long 0 + .long 1071838208 + .long 0 + .long 1071836160 + .long 0 + .long 1071834112 + .long 0 + .long 1071833088 + .long 0 + .long 1071831040 + .long 0 + .long 1071830016 + .long 0 + .long 1071827968 + .long 0 + .long 1071825920 + .long 0 + .long 1071824896 + .long 0 + .long 1071822848 + .long 0 + .long 1071821824 + .long 0 + .long 1071819776 + .long 0 + .long 1071817728 + .long 0 + .long 1071816704 + .long 0 + .long 1071814656 + .long 0 + .long 1071813632 + .long 0 + .long 1071811584 + .long 0 + .long 1071810560 + .long 0 + .long 1071808512 + .long 0 + .long 1071806464 + .long 0 + .long 1071805440 + .long 0 + .long 1071803392 + .long 0 + .long 1071802368 + .long 0 + .long 1071800320 + .long 0 + .long 1071799296 + .long 0 + .long 1071797248 + .long 0 + .long 1071796224 + .long 0 + .long 1071794176 + .long 0 + .long 1071793152 + .long 0 + .long 1071791104 + .long 0 + .long 1071790080 + .long 0 + .long 1071788032 + .long 0 + .long 1071787008 + .long 0 + .long 1071784960 + .long 0 + .long 1071783936 + .long 0 + .long 1071782912 + .long 0 + .long 1071780864 + .long 0 + .long 1071779840 + .long 0 + .long 1071777792 + .long 0 + .long 1071776768 + .long 0 + .long 1071774720 + .long 0 + .long 1071773696 + .long 0 + .long 1071772672 + .long 0 + .long 1071770624 + .long 0 + .long 1071769600 + .long 0 + .long 1071767552 + .long 0 + .long 1071766528 + .long 0 + .long 1071765504 + .long 0 + .long 1071763456 + .long 0 + .long 1071762432 + .long 0 + .long 1071760384 + .long 0 + .long 1071759360 + .long 0 + .long 1071758336 + .long 0 + .long 1071756288 + .long 0 + .long 1071755264 + .long 0 + .long 1071754240 + .long 0 + .long 1071752192 + .long 0 + .long 1071751168 + .long 0 + .long 1071750144 + .long 0 + .long 1071748096 + .long 0 + .long 1071747072 + .long 0 + .long 1071746048 + .long 0 + .long 1071744000 + .long 0 + .long 1071742976 + .long 0 + .long 1071741952 + .long 0 + .long 1071739904 + .long 0 + .long 1071738880 + .long 0 + .long 1071737856 + .long 0 + .long 1071736832 + .long 0 + .long 1071734784 + .long 0 + .long 1071733760 + .long 0 + .long 1071732736 + .long 0 + .long 1071730688 + .long 0 + .long 1071729664 + .long 0 + .long 1071728640 + .long 0 + .long 1071727616 + .long 0 + .long 1071725568 + .long 0 + .long 1071724544 + .long 0 + .long 1071723520 + .long 0 + .long 1071722496 + .long 0 + .long 1071720448 + .long 0 + .long 1071719424 + .long 0 + .long 1071718400 + .long 0 + .long 1071717376 + .long 0 + .long 1071715328 + .long 0 + .long 1071714304 + .long 0 + .long 1071713280 + .long 0 + .long 1071712256 + .long 0 + .long 1071711232 + .long 0 + .long 1071709184 + .long 0 + .long 1071708160 + .long 0 + .long 1071707136 + .long 0 + .long 1071706112 + .long 0 + .long 1071705088 + .long 0 + .long 1071704064 + .long 0 + .long 1071702016 + .long 0 + .long 1071700992 + .long 0 + .long 1071699968 + .long 0 + .long 1071698944 + .long 0 + .long 1071697920 + .long 0 + .long 1071696896 + .long 0 + .long 1071694848 + .long 0 + .long 1071693824 + .long 0 + .long 1071692800 + .long 0 + .long 1071691776 + .long 0 + .long 1071690752 + .long 0 + .long 1071689728 + .long 0 + .long 1071688704 + .long 0 + .long 1071686656 + .long 0 + .long 1071685632 + .long 0 + .long 1071684608 + .long 0 + .long 1071683584 + .long 0 + .long 1071682560 + .long 0 + .long 1071681536 + .long 0 + .long 1071680512 + .long 0 + .long 1071679488 + .long 0 + .long 1071677440 + .long 0 + .long 1071676416 + .long 0 + .long 1071675392 + .long 0 + .long 1071674368 + .long 0 + .long 1071673344 + .long 0 + .long 1071672320 + .long 0 + .long 1071671296 + .long 0 + .long 1071670272 + .long 0 + .long 1071669248 + .long 0 + .long 1071668224 + .long 0 + .long 1071667200 + .long 0 + .long 1071666176 + .long 0 + .long 1071665152 + .long 0 + .long 1071663104 + .long 0 + .long 1071662080 + .long 0 + .long 1071661056 + .long 0 + .long 1071660032 + .long 0 + .long 1071659008 + .long 0 + .long 1071657984 + .long 0 + .long 1071656960 + .long 0 + .long 1071655936 + .long 0 + .long 1071654912 + .long 0 + .long 1071653888 + .long 0 + .long 1071652864 + .long 0 + .long 1071651840 + .long 0 + .long 1071650816 + .long 0 + .long 1071649792 + .long 0 + .long 1071648768 + .long 0 + .long 1071647744 + .long 0 + .long 1071646720 + .long 0 + .long 1071645696 + .long 0 + .long 1071644672 + .long 0 + .long 1101004800 + .long 1073741824 + .long 1095761920 + .long 256 + .long 1118830592 + .long 0 + .long 1017118720 + .long 1413754136 + .long 1073291771 + .long 856972295 + .long 1016178214 + .long 1413754136 + .long 1074340347 + .long 856972295 + .long 1017226790 + .long 0 + .long 1072693248 + .long 0 + .long 1071644672 + .long 0 + .long 0 + .long 1476395008 + .long 1069897045 + .long 1768958041 + .long 3189069141 + .long 805306368 + .long 1068708659 + .long 3580333578 + .long 1040816593 + .long 3067382784 + .long 1067899757 + .long 3397590151 + .long 1067392113 + .long 2939529726 + .long 1066854585 + .long 1423429166 + .long 1066517752 + .long 1775218934 + .long 1066178574 + .long 1185392460 + .long 1065859647 + .long 289998670 + .long 1065577550 + .long 3179807072 + .long 1065648121 + .long 3781007284 + .long 1061576176 + .long 2482106687 + .long 1067019199 + .long 763519713 + .long 3214591591 + .long 3695107454 + .long 1067530646 + .long 0 + .long 1073741824 + .long 1124791109 + .long 1006764147 + .long 1476395008 + .long 1069897045 + .long 1953913876 + .long 3189069141 + .long 805306368 + .long 1067660083 + .long 165110192 + .long 1039768033 + .long 3067304082 + .long 1065802605 + .long 3404727379 + .long 1064246385 + .long 2737480376 + .long 1062660281 + .long 933797922 + .long 1061274873 + .long 1475716730 + .long 1059887095 + .long 1511619763 + .long 1058519827 + .long 556024211 + .long 1057187555 + .long 3482101045 + .long 1056217350 + .long 1174622859 + .long 1050762633 + .long 899668651 + .long 1055506366 + .long 1081094694 + .long 3202035365 + .long 2559814773 + .long 1053906576 + .long 0 + .long 3219128320 + .long 0 + .long 1071120384 + .long 0 + .long 3218341888 + .long 0 + .long 1070694400 + .long 0 + .long 3218046976 + .long 0 + .long 1070391296 + .long 0 + .long 3217739776 + .type _vmldACosHATab,@object + .size _vmldACosHATab,4520 + .space 88, 0x00 + .align 16 + +.FLT_197: + .long 0x00000000,0x80000000,0x00000000,0x00000000 + .type .FLT_197,@object + .size .FLT_197,16 diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core-avx2.S b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core-avx2.S new file mode 100644 index 0000000000..1ff0cfc8d5 --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core-avx2.S @@ -0,0 +1,20 @@ +/* AVX2 version of vectorized acosf. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#define _ZGVeN16v_acosf _ZGVeN16v_acosf_avx2_wrapper +#include "../svml_s_acosf16_core.S" diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core.c b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core.c new file mode 100644 index 0000000000..fcf05782c5 --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core.c @@ -0,0 +1,28 @@ +/* Multiple versions of vectorized acosf, vector length is 16. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#define SYMBOL_NAME _ZGVeN16v_acosf +#include "ifunc-mathvec-avx512-skx.h" + +libc_ifunc_redirected (REDIRECT_NAME, SYMBOL_NAME, IFUNC_SELECTOR ()); + +#ifdef SHARED +__hidden_ver1 (_ZGVeN16v_acosf, __GI__ZGVeN16v_acosf, + __redirect__ZGVeN16v_acosf) + __attribute__ ((visibility ("hidden"))); +#endif diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core_avx512.S b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core_avx512.S new file mode 100644 index 0000000000..65ae01451c --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf16_core_avx512.S @@ -0,0 +1,2260 @@ +/* Function acosf vectorized with AVX-512. + Copyright (C) 2021 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 + https://www.gnu.org/licenses/. */ + +/* + * ALGORITHM DESCRIPTION: + * + * SelMask = (|x| >= 0.5) ? 1 : 0; + * R = SelMask ? sqrt(0.5 - 0.5*|x|) : |x| + * acos(|x|) = SelMask ? 2*Poly(R) : (Pi/2 - Poly(R)) + * acos(x) = sign(x) ? (Pi - acos(|x|)) : acos(|x|) + * + * + */ + +#include <sysdep.h> + + .text +ENTRY(_ZGVeN16v_acosf_skx) + pushq %rbp + cfi_def_cfa_offset(16) + movq %rsp, %rbp + cfi_def_cfa(6, 16) + cfi_offset(6, -16) + andq $-64, %rsp + subq $192, %rsp + vmovups __svml_sacos_data_internal(%rip), %zmm5 + vmovups 64+__svml_sacos_data_internal(%rip), %zmm6 + +/* SQ ~ 2*sqrt(Y) */ + vmovups 192+__svml_sacos_data_internal(%rip), %zmm9 + vmovups 256+__svml_sacos_data_internal(%rip), %zmm8 + vmovups 448+__svml_sacos_data_internal(%rip), %zmm12 + vmovups 512+__svml_sacos_data_internal(%rip), %zmm13 + vmovaps %zmm0, %zmm4 + +/* x = -|arg| */ + vorps %zmm4, %zmm5, %zmm3 + vandps %zmm4, %zmm5, %zmm2 + vmovups 576+__svml_sacos_data_internal(%rip), %zmm0 + +/* Y = 0.5 + 0.5*(-x) */ + vfmadd231ps {rn-sae}, %zmm3, %zmm6, %zmm6 + +/* x^2 */ + vmulps {rn-sae}, %zmm3, %zmm3, %zmm7 + vrsqrt14ps %zmm6, %zmm10 + vcmpps $17, {sae}, %zmm9, %zmm6, %k2 + vcmpps $22, {sae}, %zmm3, %zmm8, %k0 + vmovups 832+__svml_sacos_data_internal(%rip), %zmm9 + vminps {sae}, %zmm6, %zmm7, %zmm1 + vmovups 768+__svml_sacos_data_internal(%rip), %zmm7 + vxorps %zmm10, %zmm10, %zmm10{%k2} + vaddps {rn-sae}, %zmm6, %zmm6, %zmm14 + vmulps {rn-sae}, %zmm1, %zmm1, %zmm8 + vmulps {rn-sae}, %zmm10, %zmm10, %zmm11 + vmulps {rn-sae}, %zmm10, %zmm14, %zmm5 + vcmpps $21, {sae}, %zmm6, %zmm1, %k1 + +/* X<X^2 iff X<0 */ + vcmpps $17, {sae}, %zmm1, %zmm4, %k3 + +/* polynomial */ + vmovups 640+__svml_sacos_data_internal(%rip), %zmm6 + vfmsub213ps {rn-sae}, %zmm12, %zmm11, %zmm14 + vmovups 704+__svml_sacos_data_internal(%rip), %zmm11 + vfmadd231ps {rn-sae}, %zmm1, %zmm7, %zmm9 + vmovups 896+__svml_sacos_data_internal(%rip), %zmm10 + vmovups 960+__svml_sacos_data_internal(%rip), %zmm12 + vfmadd231ps {rn-sae}, %zmm14, %zmm13, %zmm0 + vfmadd231ps {rn-sae}, %zmm1, %zmm6, %zmm11 + vmulps {rn-sae}, %zmm14, %zmm5, %zmm15 + vfmadd213ps {rn-sae}, %zmm9, %zmm8, %zmm11 + vxorps %zmm12, %zmm12, %zmm12{%k1} + vfnmadd213ps {rn-sae}, %zmm5, %zmm15, %zmm0 + vfmadd213ps {rn-sae}, %zmm10, %zmm1, %zmm11 + kmovw %k1, %eax + kmovw %k3, %ecx + kmovw %k0, %edx + vmulps {rn-sae}, %zmm1, %zmm11, %zmm13 + vblendmps %zmm0, %zmm3, %zmm0{%k1} + vxorps %zmm2, %zmm0, %zmm1 + andl %eax, %ecx + kmovw %ecx, %k2 + vfmadd213ps {rn-sae}, %zmm1, %zmm1, %zmm13 + vorps 1088+__svml_sacos_data_internal(%rip), %zmm12, %zmm12{%k2} + vaddps {rn-sae}, %zmm13, %zmm12, %zmm0 + testl %edx, %edx + jne .LBL_1_3 + +.LBL_1_2: + movq %rbp, %rsp + popq %rbp + cfi_def_cfa(7, 8) + cfi_restore(6) + ret + cfi_def_cfa(6, 16) + cfi_offset(6, -16) + +.LBL_1_3: + vmovups %zmm4, 64(%rsp) + vmovups %zmm0, 128(%rsp) + je .LBL_1_2 + xorl %eax, %eax + vzeroupper + kmovw %k4, 24(%rsp) + kmovw %k5, 16(%rsp) + kmovw %k6, 8(%rsp) + kmovw %k7, (%rsp) + movq %rsi, 40(%rsp) + movq %rdi, 32(%rsp) + movq %r12, 56(%rsp) + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22 + movl %eax, %r12d + movq %r13, 48(%rsp) + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22 + movl %edx, %r13d + .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 + +.LBL_1_7: + btl %r12d, %r13d + jc .LBL_1_10 + +.LBL_1_8: + incl %r12d + cmpl $16, %r12d + jl .LBL_1_7 + kmovw 24(%rsp), %k4 + cfi_restore(122) + kmovw 16(%rsp), %k5 + cfi_restore(123) + kmovw 8(%rsp), %k6 + cfi_restore(124) + kmovw (%rsp), %k7 + cfi_restore(125) + vmovups 128(%rsp), %zmm0 + movq 40(%rsp), %rsi + cfi_restore(4) + movq 32(%rsp), %rdi + cfi_restore(5) + movq 56(%rsp), %r12 + cfi_restore(12) + movq 48(%rsp), %r13 + cfi_restore(13) + jmp .LBL_1_2 + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x68, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x78, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x70, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xfa, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x58, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xfb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xfc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xfd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 + +.LBL_1_10: + lea 64(%rsp,%r12,4), %rdi + lea 128(%rsp,%r12,4), %rsi + call __svml_sacos_cout_rare_internal + jmp .LBL_1_8 + +END(_ZGVeN16v_acosf_skx) + + .align 16,0x90 + +__svml_sacos_cout_rare_internal: + + cfi_startproc + + xorl %eax, %eax + movzwl 2(%rdi), %edx + andl $32640, %edx + movss (%rdi), %xmm1 + cmpl $32640, %edx + je .LBL_2_20 + cvtss2sd %xmm1, %xmm1 + movsd %xmm1, -32(%rsp) + andb $127, -25(%rsp) + movsd -32(%rsp), %xmm12 + movsd 4168+_vmldACosHATab(%rip), %xmm0 + comisd %xmm12, %xmm0 + jbe .LBL_2_14 + movsd 4176+_vmldACosHATab(%rip), %xmm1 + comisd %xmm12, %xmm1 + jbe .LBL_2_10 + comisd 4128+_vmldACosHATab(%rip), %xmm12 + jbe .LBL_2_9 + movsd 4104+_vmldACosHATab(%rip), %xmm6 + movaps %xmm12, %xmm8 + mulsd %xmm12, %xmm6 + movaps %xmm12, %xmm7 + movsd %xmm6, -40(%rsp) + movsd -40(%rsp), %xmm13 + movsd 4104+_vmldACosHATab(%rip), %xmm5 + subsd -32(%rsp), %xmm13 + movsd %xmm13, -48(%rsp) + movsd -40(%rsp), %xmm15 + movsd -48(%rsp), %xmm14 + subsd %xmm14, %xmm15 + movaps %xmm12, %xmm14 + movsd %xmm15, -40(%rsp) + movsd -40(%rsp), %xmm6 + subsd %xmm6, %xmm8 + movsd %xmm8, -48(%rsp) + movsd -40(%rsp), %xmm9 + movaps %xmm9, %xmm4 + addsd %xmm9, %xmm7 + mulsd %xmm9, %xmm4 + movsd -48(%rsp), %xmm10 + movaps %xmm4, %xmm11 + mulsd %xmm10, %xmm7 + mulsd %xmm4, %xmm5 + addsd %xmm7, %xmm11 + movsd 4312+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movsd %xmm5, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4104+_vmldACosHATab(%rip), %xmm5 + subsd %xmm4, %xmm1 + addsd 4304+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movsd %xmm1, -48(%rsp) + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + addsd 4296+_vmldACosHATab(%rip), %xmm8 + subsd %xmm2, %xmm0 + mulsd %xmm11, %xmm8 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm3 + addsd 4288+_vmldACosHATab(%rip), %xmm8 + subsd %xmm3, %xmm4 + mulsd %xmm11, %xmm8 + movsd %xmm4, -48(%rsp) + movsd -40(%rsp), %xmm6 + mulsd %xmm6, %xmm9 + addsd 4280+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm6, %xmm10 + mulsd %xmm11, %xmm8 + mulsd %xmm9, %xmm5 + addsd 4272+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movaps %xmm9, %xmm0 + movsd -48(%rsp), %xmm13 + movaps %xmm6, %xmm4 + movsd %xmm5, -40(%rsp) + addsd %xmm13, %xmm7 + addsd 4264+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm7, %xmm14 + mulsd %xmm11, %xmm8 + addsd %xmm14, %xmm10 + addsd 4256+_vmldACosHATab(%rip), %xmm8 + movsd -40(%rsp), %xmm1 + mulsd %xmm11, %xmm8 + subsd %xmm9, %xmm1 + addsd %xmm10, %xmm9 + addsd 4248+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm9, %xmm7 + mulsd %xmm11, %xmm8 + movsd %xmm1, -48(%rsp) + movsd -40(%rsp), %xmm2 + movsd -48(%rsp), %xmm15 + subsd %xmm15, %xmm2 + addsd 4240+_vmldACosHATab(%rip), %xmm8 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm5 + mulsd %xmm11, %xmm8 + subsd %xmm5, %xmm0 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm3 + movsd -48(%rsp), %xmm5 + movaps %xmm5, %xmm13 + addsd 4232+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm3, %xmm4 + addsd %xmm10, %xmm13 + mulsd %xmm11, %xmm8 + mulsd %xmm13, %xmm6 + addsd 4224+_vmldACosHATab(%rip), %xmm8 + addsd %xmm7, %xmm6 + mulsd %xmm11, %xmm8 + movsd 4104+_vmldACosHATab(%rip), %xmm7 + movaps %xmm4, %xmm13 + mulsd %xmm4, %xmm7 + addsd 4216+_vmldACosHATab(%rip), %xmm8 + movsd %xmm7, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4200+_vmldACosHATab(%rip), %xmm11 + subsd %xmm4, %xmm1 + mulsd %xmm9, %xmm11 + addsd %xmm6, %xmm4 + movsd %xmm1, -48(%rsp) + movaps %xmm12, %xmm9 + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + movsd 4192+_vmldACosHATab(%rip), %xmm1 + subsd %xmm2, %xmm0 + mulsd %xmm1, %xmm3 + mulsd %xmm1, %xmm10 + mulsd %xmm4, %xmm8 + addsd %xmm3, %xmm9 + mulsd %xmm1, %xmm5 + addsd %xmm10, %xmm11 + movsd %xmm0, -40(%rsp) + pxor %xmm1, %xmm1 + movsd -40(%rsp), %xmm7 + addsd %xmm11, %xmm8 + subsd %xmm7, %xmm13 + addsd %xmm5, %xmm8 + movsd %xmm13, -48(%rsp) + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + movsd %xmm9, -40(%rsp) + addsd %xmm2, %xmm6 + movsd -40(%rsp), %xmm10 + movsd %xmm3, -56(%rsp) + subsd %xmm10, %xmm12 + movsd 4208+_vmldACosHATab(%rip), %xmm4 + addsd %xmm12, %xmm3 + mulsd %xmm4, %xmm0 + mulsd %xmm4, %xmm6 + movsd %xmm3, -48(%rsp) + movsd -40(%rsp), %xmm3 + movaps %xmm3, %xmm12 + movsd -48(%rsp), %xmm7 + addsd %xmm0, %xmm12 + addsd %xmm7, %xmm8 + movsd %xmm12, -40(%rsp) + movsd -40(%rsp), %xmm12 + subsd %xmm12, %xmm3 + addsd %xmm3, %xmm0 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm3 + movsd -48(%rsp), %xmm0 + cvtss2sd (%rdi), %xmm1 + addsd %xmm8, %xmm0 + comisd 4184+_vmldACosHATab(%rip), %xmm1 + addsd %xmm0, %xmm6 + jbe .LBL_2_7 + movsd 4136+_vmldACosHATab(%rip), %xmm2 + movaps %xmm2, %xmm0 + subsd %xmm3, %xmm0 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4144+_vmldACosHATab(%rip), %xmm0 + subsd %xmm1, %xmm2 + subsd %xmm6, %xmm0 + subsd %xmm3, %xmm2 + movsd %xmm2, -48(%rsp) + movsd -40(%rsp), %xmm1 + movsd -48(%rsp), %xmm3 + addsd %xmm3, %xmm0 + jmp .LBL_2_8 + +.LBL_2_7: + movsd 4136+_vmldACosHATab(%rip), %xmm2 + movaps %xmm3, %xmm0 + addsd %xmm2, %xmm0 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + subsd %xmm1, %xmm2 + addsd %xmm2, %xmm3 + movsd %xmm3, -48(%rsp) + movsd 4144+_vmldACosHATab(%rip), %xmm3 + movsd -40(%rsp), %xmm1 + addsd %xmm3, %xmm6 + movsd -48(%rsp), %xmm0 + addsd %xmm6, %xmm0 + +.LBL_2_8: + addsd %xmm0, %xmm1 + cvtsd2ss %xmm1, %xmm1 + movss %xmm1, (%rsi) + ret + +.LBL_2_9: + movsd 4144+_vmldACosHATab(%rip), %xmm1 + addsd %xmm0, %xmm12 + movsd %xmm12, -40(%rsp) + movsd -40(%rsp), %xmm0 + mulsd -32(%rsp), %xmm0 + movsd %xmm0, -56(%rsp) + movb -49(%rsp), %dl + movb 3(%rdi), %dil + andb $127, %dl + andb $-128, %dil + orb %dil, %dl + movb %dl, -49(%rsp) + subsd -56(%rsp), %xmm1 + addsd 4136+_vmldACosHATab(%rip), %xmm1 + cvtsd2ss %xmm1, %xmm1 + movss %xmm1, (%rsi) + ret + +.LBL_2_10: + movaps %xmm0, %xmm8 + movzwl 4174+_vmldACosHATab(%rip), %r9d + pxor %xmm13, %xmm13 + andl $-32753, %r9d + subsd %xmm12, %xmm8 + subsd %xmm0, %xmm13 + mulsd %xmm8, %xmm1 + movsd %xmm1, -56(%rsp) + movzwl -50(%rsp), %ecx + andl $32752, %ecx + shrl $4, %ecx + addl $-1023, %ecx + movl %ecx, %r8d + movl %ecx, %edx + negl %r8d + addl $1023, %r8d + andl $2047, %r8d + shll $4, %r8d + movsd %xmm0, -32(%rsp) + orl %r8d, %r9d + movw %r9w, -26(%rsp) + andl $1, %edx + movsd -32(%rsp), %xmm4 + lea _vmldACosHATab(%rip), %r8 + mulsd %xmm4, %xmm1 + movl %edx, %r10d + movaps %xmm1, %xmm15 + movsd 4112+_vmldACosHATab(%rip), %xmm6 + addsd %xmm1, %xmm15 + jne .LBL_54 + movaps %xmm1, %xmm15 + +.LBL_54: + mulsd %xmm15, %xmm6 + movaps %xmm15, %xmm7 + movaps %xmm6, %xmm9 + subl %edx, %ecx + movsd 4120+_vmldACosHATab(%rip), %xmm11 + subsd %xmm15, %xmm9 + addsd %xmm1, %xmm11 + movsd %xmm9, -48(%rsp) + movsd -48(%rsp), %xmm10 + movsd %xmm11, -24(%rsp) + subsd %xmm10, %xmm6 + movl -24(%rsp), %r11d + movaps %xmm6, %xmm14 + shll $8, %r10d + andl $511, %r11d + addl %r10d, %r11d + subsd %xmm6, %xmm7 + movsd (%r8,%r11,8), %xmm5 + addsd %xmm7, %xmm14 + mulsd %xmm5, %xmm6 + movaps %xmm5, %xmm12 + mulsd %xmm5, %xmm12 + mulsd %xmm12, %xmm14 + movsd 4512+_vmldACosHATab(%rip), %xmm4 + addsd %xmm13, %xmm14 + mulsd %xmm14, %xmm4 + shrl $1, %ecx + addsd 4504+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + addl $1023, %ecx + andl $2047, %ecx + addsd 4496+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movzwl 4174+_vmldACosHATab(%rip), %r9d + shll $4, %ecx + andl $-32753, %r9d + movsd %xmm0, -16(%rsp) + orl %ecx, %r9d + movw %r9w, -10(%rsp) + movsd -16(%rsp), %xmm9 + mulsd %xmm9, %xmm6 + addsd 4488+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movsd 4104+_vmldACosHATab(%rip), %xmm3 + mulsd %xmm6, %xmm3 + addsd 4480+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movsd %xmm3, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4352+_vmldACosHATab(%rip), %xmm11 + subsd %xmm6, %xmm1 + addsd 4472+_vmldACosHATab(%rip), %xmm4 + addsd 4360+_vmldACosHATab(%rip), %xmm11 + mulsd %xmm14, %xmm4 + mulsd %xmm8, %xmm11 + addsd 4464+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + mulsd %xmm15, %xmm4 + movsd %xmm1, -48(%rsp) + addsd %xmm4, %xmm7 + mulsd %xmm5, %xmm7 + movsd 4456+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + mulsd %xmm9, %xmm7 + addsd 4448+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm2 + movsd -48(%rsp), %xmm0 + movsd 4104+_vmldACosHATab(%rip), %xmm4 + subsd %xmm0, %xmm2 + mulsd %xmm8, %xmm4 + addsd 4440+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movaps %xmm8, %xmm0 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm14 + movsd 4104+_vmldACosHATab(%rip), %xmm2 + subsd %xmm14, %xmm6 + addsd 4432+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd %xmm6, -48(%rsp) + movsd -40(%rsp), %xmm6 + movsd -48(%rsp), %xmm10 + movsd %xmm4, -40(%rsp) + addsd %xmm10, %xmm7 + addsd 4424+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm3 + movsd 4336+_vmldACosHATab(%rip), %xmm12 + subsd %xmm8, %xmm3 + addsd 4416+_vmldACosHATab(%rip), %xmm5 + addsd 4344+_vmldACosHATab(%rip), %xmm12 + mulsd %xmm8, %xmm5 + addsd %xmm11, %xmm12 + addsd 4408+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm12 + mulsd %xmm8, %xmm5 + movsd %xmm3, -48(%rsp) + movsd -40(%rsp), %xmm1 + movsd -48(%rsp), %xmm15 + movsd 4320+_vmldACosHATab(%rip), %xmm13 + subsd %xmm15, %xmm1 + addsd 4400+_vmldACosHATab(%rip), %xmm5 + addsd 4328+_vmldACosHATab(%rip), %xmm13 + mulsd %xmm8, %xmm5 + addsd %xmm12, %xmm13 + addsd 4392+_vmldACosHATab(%rip), %xmm5 + movsd %xmm1, -40(%rsp) + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm4 + subsd %xmm4, %xmm0 + addsd 4384+_vmldACosHATab(%rip), %xmm5 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm4 + movaps %xmm4, %xmm14 + mulsd %xmm4, %xmm14 + mulsd %xmm8, %xmm5 + mulsd %xmm14, %xmm2 + addsd 4376+_vmldACosHATab(%rip), %xmm5 + movsd -48(%rsp), %xmm3 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm9 + mulsd %xmm8, %xmm5 + subsd %xmm14, %xmm9 + movsd %xmm9, -48(%rsp) + movsd -40(%rsp), %xmm11 + movsd -48(%rsp), %xmm10 + movsd 4336+_vmldACosHATab(%rip), %xmm0 + subsd %xmm10, %xmm11 + mulsd %xmm4, %xmm0 + addsd 4368+_vmldACosHATab(%rip), %xmm5 + addsd %xmm8, %xmm4 + mulsd %xmm8, %xmm5 + mulsd %xmm3, %xmm4 + mulsd %xmm8, %xmm5 + movsd %xmm11, -40(%rsp) + movaps %xmm0, %xmm1 + movsd -40(%rsp), %xmm12 + mulsd %xmm8, %xmm5 + subsd %xmm12, %xmm14 + movsd %xmm14, -48(%rsp) + addsd %xmm5, %xmm13 + movsd -40(%rsp), %xmm9 + mulsd 4352+_vmldACosHATab(%rip), %xmm9 + mulsd %xmm13, %xmm7 + addsd %xmm9, %xmm1 + movsd -48(%rsp), %xmm2 + movsd %xmm1, -40(%rsp) + addsd %xmm2, %xmm4 + movsd -40(%rsp), %xmm13 + movsd %xmm9, -24(%rsp) + subsd %xmm13, %xmm0 + mulsd 4352+_vmldACosHATab(%rip), %xmm4 + addsd %xmm0, %xmm9 + movsd %xmm9, -48(%rsp) + movsd -40(%rsp), %xmm12 + movsd 4320+_vmldACosHATab(%rip), %xmm10 + movsd -48(%rsp), %xmm1 + addsd %xmm12, %xmm10 + movsd %xmm10, -40(%rsp) + movsd -40(%rsp), %xmm15 + movsd 4320+_vmldACosHATab(%rip), %xmm11 + movsd 4104+_vmldACosHATab(%rip), %xmm9 + subsd %xmm15, %xmm11 + movsd 4336+_vmldACosHATab(%rip), %xmm2 + addsd %xmm11, %xmm12 + mulsd %xmm3, %xmm2 + movsd %xmm12, -48(%rsp) + movsd -40(%rsp), %xmm15 + mulsd %xmm15, %xmm9 + movsd -48(%rsp), %xmm0 + movsd %xmm9, -40(%rsp) + movsd -40(%rsp), %xmm10 + movsd 4360+_vmldACosHATab(%rip), %xmm3 + subsd %xmm15, %xmm10 + mulsd %xmm8, %xmm3 + movsd %xmm10, -48(%rsp) + movsd -40(%rsp), %xmm11 + movsd -48(%rsp), %xmm13 + subsd %xmm13, %xmm11 + addsd 4344+_vmldACosHATab(%rip), %xmm3 + movsd %xmm11, -40(%rsp) + movsd -40(%rsp), %xmm14 + mulsd %xmm8, %xmm3 + subsd %xmm14, %xmm15 + movsd %xmm15, -48(%rsp) + movsd -40(%rsp), %xmm10 + movsd -48(%rsp), %xmm9 + addsd %xmm9, %xmm4 + addsd 4328+_vmldACosHATab(%rip), %xmm3 + addsd %xmm2, %xmm4 + addsd %xmm5, %xmm3 + addsd %xmm1, %xmm4 + addsd %xmm0, %xmm4 + addsd %xmm3, %xmm4 + mulsd %xmm6, %xmm4 + mulsd %xmm10, %xmm6 + addsd %xmm7, %xmm4 + pxor %xmm7, %xmm7 + cvtss2sd (%rdi), %xmm7 + comisd 4184+_vmldACosHATab(%rip), %xmm7 + ja .LBL_2_13 + movsd 4152+_vmldACosHATab(%rip), %xmm2 + movaps %xmm2, %xmm0 + movsd 4160+_vmldACosHATab(%rip), %xmm5 + subsd %xmm6, %xmm0 + subsd %xmm4, %xmm5 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd %xmm6, -56(%rsp) + subsd %xmm1, %xmm2 + subsd %xmm6, %xmm2 + movsd %xmm2, -48(%rsp) + movsd -40(%rsp), %xmm6 + movsd -48(%rsp), %xmm3 + movaps %xmm3, %xmm4 + addsd %xmm5, %xmm4 + +.LBL_2_13: + addsd %xmm4, %xmm6 + cvtsd2ss %xmm6, %xmm6 + movss %xmm6, (%rsi) + ret + +.LBL_2_14: + ucomisd %xmm0, %xmm1 + jp .LBL_2_15 + je .LBL_2_19 + +.LBL_2_15: + xorps .FLT_199(%rip), %xmm0 + ucomisd %xmm0, %xmm1 + jp .LBL_2_16 + je .LBL_2_18 + +.LBL_2_16: + movl $1, %eax + pxor %xmm1, %xmm1 + pxor %xmm0, %xmm0 + divss %xmm0, %xmm1 + movss %xmm1, (%rsi) + ret + +.LBL_2_18: + movsd 4152+_vmldACosHATab(%rip), %xmm0 + addsd 4160+_vmldACosHATab(%rip), %xmm0 + cvtsd2ss %xmm0, %xmm0 + movss %xmm0, (%rsi) + ret + +.LBL_2_19: + movsd 4184+_vmldACosHATab(%rip), %xmm0 + cvtsd2ss %xmm0, %xmm0 + movss %xmm0, (%rsi) + ret + +.LBL_2_20: + divss %xmm1, %xmm1 + testl $8388607, (%rdi) + movss %xmm1, (%rsi) + sete %al + ret + + cfi_endproc + + .type __svml_sacos_cout_rare_internal,@function + .size __svml_sacos_cout_rare_internal,.-__svml_sacos_cout_rare_internal + + .section .rodata, "a" + .align 64 + +__svml_sacos_data_internal: + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .type __svml_sacos_data_internal,@object + .size __svml_sacos_data_internal,1600 + .align 32 + +_vmldACosHATab: + .long 0 + .long 1072693248 + .long 0 + .long 1072689152 + .long 0 + .long 1072685056 + .long 0 + .long 1072680960 + .long 0 + .long 1072676864 + .long 0 + .long 1072672768 + .long 0 + .long 1072668672 + .long 0 + .long 1072665600 + .long 0 + .long 1072661504 + .long 0 + .long 1072657408 + .long 0 + .long 1072653312 + .long 0 + .long 1072649216 + .long 0 + .long 1072646144 + .long 0 + .long 1072642048 + .long 0 + .long 1072637952 + .long 0 + .long 1072634880 + .long 0 + .long 1072630784 + .long 0 + .long 1072626688 + .long 0 + .long 1072623616 + .long 0 + .long 1072619520 + .long 0 + .long 1072615424 + .long 0 + .long 1072612352 + .long 0 + .long 1072608256 + .long 0 + .long 1072605184 + .long 0 + .long 1072601088 + .long 0 + .long 1072598016 + .long 0 + .long 1072593920 + .long 0 + .long 1072590848 + .long 0 + .long 1072586752 + .long 0 + .long 1072583680 + .long 0 + .long 1072580608 + .long 0 + .long 1072576512 + .long 0 + .long 1072573440 + .long 0 + .long 1072570368 + .long 0 + .long 1072566272 + .long 0 + .long 1072563200 + .long 0 + .long 1072560128 + .long 0 + .long 1072556032 + .long 0 + .long 1072552960 + .long 0 + .long 1072549888 + .long 0 + .long 1072546816 + .long 0 + .long 1072542720 + .long 0 + .long 1072539648 + .long 0 + .long 1072536576 + .long 0 + .long 1072533504 + .long 0 + .long 1072530432 + .long 0 + .long 1072527360 + .long 0 + .long 1072523264 + .long 0 + .long 1072520192 + .long 0 + .long 1072517120 + .long 0 + .long 1072514048 + .long 0 + .long 1072510976 + .long 0 + .long 1072507904 + .long 0 + .long 1072504832 + .long 0 + .long 1072501760 + .long 0 + .long 1072498688 + .long 0 + .long 1072495616 + .long 0 + .long 1072492544 + .long 0 + .long 1072489472 + .long 0 + .long 1072486400 + .long 0 + .long 1072483328 + .long 0 + .long 1072480256 + .long 0 + .long 1072478208 + .long 0 + .long 1072475136 + .long 0 + .long 1072472064 + .long 0 + .long 1072468992 + .long 0 + .long 1072465920 + .long 0 + .long 1072462848 + .long 0 + .long 1072459776 + .long 0 + .long 1072457728 + .long 0 + .long 1072454656 + .long 0 + .long 1072451584 + .long 0 + .long 1072448512 + .long 0 + .long 1072446464 + .long 0 + .long 1072443392 + .long 0 + .long 1072440320 + .long 0 + .long 1072437248 + .long 0 + .long 1072435200 + .long 0 + .long 1072432128 + .long 0 + .long 1072429056 + .long 0 + .long 1072427008 + .long 0 + .long 1072423936 + .long 0 + .long 1072420864 + .long 0 + .long 1072418816 + .long 0 + .long 1072415744 + .long 0 + .long 1072412672 + .long 0 + .long 1072410624 + .long 0 + .long 1072407552 + .long 0 + .long 1072405504 + .long 0 + .long 1072402432 + .long 0 + .long 1072400384 + .long 0 + .long 1072397312 + .long 0 + .long 1072395264 + .long 0 + .long 1072392192 + .long 0 + .long 1072390144 + .long 0 + .long 1072387072 + .long 0 + .long 1072385024 + .long 0 + .long 1072381952 + .long 0 + .long 1072379904 + .long 0 + .long 1072376832 + .long 0 + .long 1072374784 + .long 0 + .long 1072371712 + .long 0 + .long 1072369664 + .long 0 + .long 1072366592 + .long 0 + .long 1072364544 + .long 0 + .long 1072362496 + .long 0 + .long 1072359424 + .long 0 + .long 1072357376 + .long 0 + .long 1072355328 + .long 0 + .long 1072352256 + .long 0 + .long 1072350208 + .long 0 + .long 1072347136 + .long 0 + .long 1072345088 + .long 0 + .long 1072343040 + .long 0 + .long 1072340992 + .long 0 + .long 1072337920 + .long 0 + .long 1072335872 + .long 0 + .long 1072333824 + .long 0 + .long 1072330752 + .long 0 + .long 1072328704 + .long 0 + .long 1072326656 + .long 0 + .long 1072324608 + .long 0 + .long 1072321536 + .long 0 + .long 1072319488 + .long 0 + .long 1072317440 + .long 0 + .long 1072315392 + .long 0 + .long 1072313344 + .long 0 + .long 1072310272 + .long 0 + .long 1072308224 + .long 0 + .long 1072306176 + .long 0 + .long 1072304128 + .long 0 + .long 1072302080 + .long 0 + .long 1072300032 + .long 0 + .long 1072296960 + .long 0 + .long 1072294912 + .long 0 + .long 1072292864 + .long 0 + .long 1072290816 + .long 0 + .long 1072288768 + .long 0 + .long 1072286720 + .long 0 + .long 1072284672 + .long 0 + .long 1072282624 + .long 0 + .long 1072280576 + .long 0 + .long 1072278528 + .long 0 + .long 1072275456 + .long 0 + .long 1072273408 + .long 0 + .long 1072271360 + .long 0 + .long 1072269312 + .long 0 + .long 1072267264 + .long 0 + .long 1072265216 + .long 0 + .long 1072263168 + .long 0 + .long 1072261120 + .long 0 + .long 1072259072 + .long 0 + .long 1072257024 + .long 0 + .long 1072254976 + .long 0 + .long 1072252928 + .long 0 + .long 1072250880 + .long 0 + .long 1072248832 + .long 0 + .long 1072246784 + .long 0 + .long 1072244736 + .long 0 + .long 1072243712 + .long 0 + .long 1072241664 + .long 0 + .long 1072239616 + .long 0 + .long 1072237568 + .long 0 + .long 1072235520 + .long 0 + .long 1072233472 + .long 0 + .long 1072231424 + .long 0 + .long 1072229376 + .long 0 + .long 1072227328 + .long 0 + .long 1072225280 + .long 0 + .long 1072223232 + .long 0 + .long 1072222208 + .long 0 + .long 1072220160 + .long 0 + .long 1072218112 + .long 0 + .long 1072216064 + .long 0 + .long 1072214016 + .long 0 + .long 1072211968 + .long 0 + .long 1072210944 + .long 0 + .long 1072208896 + .long 0 + .long 1072206848 + .long 0 + .long 1072204800 + .long 0 + .long 1072202752 + .long 0 + .long 1072201728 + .long 0 + .long 1072199680 + .long 0 + .long 1072197632 + .long 0 + .long 1072195584 + .long 0 + .long 1072193536 + .long 0 + .long 1072192512 + .long 0 + .long 1072190464 + .long 0 + .long 1072188416 + .long 0 + .long 1072186368 + .long 0 + .long 1072185344 + .long 0 + .long 1072183296 + .long 0 + .long 1072181248 + .long 0 + .long 1072179200 + .long 0 + .long 1072178176 + .long 0 + .long 1072176128 + .long 0 + .long 1072174080 + .long 0 + .long 1072173056 + .long 0 + .long 1072171008 + .long 0 + .long 1072168960 + .long 0 + .long 1072167936 + .long 0 + .long 1072165888 + .long 0 + .long 1072163840 + .long 0 + .long 1072161792 + .long 0 + .long 1072160768 + .long 0 + .long 1072158720 + .long 0 + .long 1072157696 + .long 0 + .long 1072155648 + .long 0 + .long 1072153600 + .long 0 + .long 1072152576 + .long 0 + .long 1072150528 + .long 0 + .long 1072148480 + .long 0 + .long 1072147456 + .long 0 + .long 1072145408 + .long 0 + .long 1072143360 + .long 0 + .long 1072142336 + .long 0 + .long 1072140288 + .long 0 + .long 1072139264 + .long 0 + .long 1072137216 + .long 0 + .long 1072135168 + .long 0 + .long 1072134144 + .long 0 + .long 1072132096 + .long 0 + .long 1072131072 + .long 0 + .long 1072129024 + .long 0 + .long 1072128000 + .long 0 + .long 1072125952 + .long 0 + .long 1072124928 + .long 0 + .long 1072122880 + .long 0 + .long 1072120832 + .long 0 + .long 1072119808 + .long 0 + .long 1072117760 + .long 0 + .long 1072116736 + .long 0 + .long 1072114688 + .long 0 + .long 1072113664 + .long 0 + .long 1072111616 + .long 0 + .long 1072110592 + .long 0 + .long 1072108544 + .long 0 + .long 1072107520 + .long 0 + .long 1072105472 + .long 0 + .long 1072104448 + .long 0 + .long 1072102400 + .long 0 + .long 1072101376 + .long 0 + .long 1072099328 + .long 0 + .long 1072098304 + .long 0 + .long 1072096256 + .long 0 + .long 1072095232 + .long 0 + .long 1072094208 + .long 0 + .long 1072092160 + .long 0 + .long 1072091136 + .long 0 + .long 1072089088 + .long 0 + .long 1072088064 + .long 0 + .long 1072086016 + .long 0 + .long 1072084992 + .long 0 + .long 1072082944 + .long 0 + .long 1072081920 + .long 0 + .long 1072080896 + .long 0 + .long 1072078848 + .long 0 + .long 1072075776 + .long 0 + .long 1072073728 + .long 0 + .long 1072070656 + .long 0 + .long 1072067584 + .long 0 + .long 1072064512 + .long 0 + .long 1072061440 + .long 0 + .long 1072059392 + .long 0 + .long 1072056320 + .long 0 + .long 1072053248 + .long 0 + .long 1072051200 + .long 0 + .long 1072048128 + .long 0 + .long 1072045056 + .long 0 + .long 1072043008 + .long 0 + .long 1072039936 + .long 0 + .long 1072037888 + .long 0 + .long 1072034816 + .long 0 + .long 1072031744 + .long 0 + .long 1072029696 + .long 0 + .long 1072026624 + .long 0 + .long 1072024576 + .long 0 + .long 1072021504 + .long 0 + .long 1072019456 + .long 0 + .long 1072016384 + .long 0 + .long 1072014336 + .long 0 + .long 1072011264 + .long 0 + .long 1072009216 + .long 0 + .long 1072006144 + .long 0 + .long 1072004096 + .long 0 + .long 1072002048 + .long 0 + .long 1071998976 + .long 0 + .long 1071996928 + .long 0 + .long 1071993856 + .long 0 + .long 1071991808 + .long 0 + .long 1071989760 + .long 0 + .long 1071986688 + .long 0 + .long 1071984640 + .long 0 + .long 1071982592 + .long 0 + .long 1071979520 + .long 0 + .long 1071977472 + .long 0 + .long 1071975424 + .long 0 + .long 1071972352 + .long 0 + .long 1071970304 + .long 0 + .long 1071968256 + .long 0 + .long 1071966208 + .long 0 + .long 1071964160 + .long 0 + .long 1071961088 + .long 0 + .long 1071959040 + .long 0 + .long 1071956992 + .long 0 + .long 1071954944 + .long 0 + .long 1071952896 + .long 0 + .long 1071949824 + .long 0 + .long 1071947776 + .long 0 + .long 1071945728 + .long 0 + .long 1071943680 + .long 0 + .long 1071941632 + .long 0 + .long 1071939584 + .long 0 + .long 1071937536 + .long 0 + .long 1071935488 + .long 0 + .long 1071933440 + .long 0 + .long 1071930368 + .long 0 + .long 1071928320 + .long 0 + .long 1071926272 + .long 0 + .long 1071924224 + .long 0 + .long 1071922176 + .long 0 + .long 1071920128 + .long 0 + .long 1071918080 + .long 0 + .long 1071916032 + .long 0 + .long 1071913984 + .long 0 + .long 1071911936 + .long 0 + .long 1071909888 + .long 0 + .long 1071907840 + .long 0 + .long 1071905792 + .long 0 + .long 1071903744 + .long 0 + .long 1071901696 + .long 0 + .long 1071900672 + .long 0 + .long 1071898624 + .long 0 + .long 1071896576 + .long 0 + .long 1071894528 + .long 0 + .long 1071892480 + .long 0 + .long 1071890432 + .long 0 + .long 1071888384 + .long 0 + .long 1071886336 + .long 0 + .long 1071884288 + .long 0 + .long 1071883264 + .long 0 + .long 1071881216 + .long 0 + .long 1071879168 + .long 0 + .long 1071877120 + .long 0 + .long 1071875072 + .long 0 + .long 1071873024 + .long 0 + .long 1071872000 + .long 0 + .long 1071869952 + .long 0 + .long 1071867904 + .long 0 + .long 1071865856 + .long 0 + .long 1071864832 + .long 0 + .long 1071862784 + .long 0 + .long 1071860736 + .long 0 + .long 1071858688 + .long 0 + .long 1071856640 + .long 0 + .long 1071855616 + .long 0 + .long 1071853568 + .long 0 + .long 1071851520 + .long 0 + .long 1071850496 + .long 0 + .long 1071848448 + .long 0 + .long 1071846400 + .long 0 + .long 1071844352 + .long 0 + .long 1071843328 + .long 0 + .long 1071841280 + .long 0 + .long 1071839232 + .long 0 + .long 1071838208 + .long 0 + .long 1071836160 + .long 0 + .long 1071834112 + .long 0 + .long 1071833088 + .long 0 + .long 1071831040 + .long 0 + .long 1071830016 + .long 0 + .long 1071827968 + .long 0 + .long 1071825920 + .long 0 + .long 1071824896 + .long 0 + .long 1071822848 + .long 0 + .long 1071821824 + .long 0 + .long 1071819776 + .long 0 + .long 1071817728 + .long 0 + .long 1071816704 + .long 0 + .long 1071814656 + .long 0 + .long 1071813632 + .long 0 + .long 1071811584 + .long 0 + .long 1071810560 + .long 0 + .long 1071808512 + .long 0 + .long 1071806464 + .long 0 + .long 1071805440 + .long 0 + .long 1071803392 + .long 0 + .long 1071802368 + .long 0 + .long 1071800320 + .long 0 + .long 1071799296 + .long 0 + .long 1071797248 + .long 0 + .long 1071796224 + .long 0 + .long 1071794176 + .long 0 + .long 1071793152 + .long 0 + .long 1071791104 + .long 0 + .long 1071790080 + .long 0 + .long 1071788032 + .long 0 + .long 1071787008 + .long 0 + .long 1071784960 + .long 0 + .long 1071783936 + .long 0 + .long 1071782912 + .long 0 + .long 1071780864 + .long 0 + .long 1071779840 + .long 0 + .long 1071777792 + .long 0 + .long 1071776768 + .long 0 + .long 1071774720 + .long 0 + .long 1071773696 + .long 0 + .long 1071772672 + .long 0 + .long 1071770624 + .long 0 + .long 1071769600 + .long 0 + .long 1071767552 + .long 0 + .long 1071766528 + .long 0 + .long 1071765504 + .long 0 + .long 1071763456 + .long 0 + .long 1071762432 + .long 0 + .long 1071760384 + .long 0 + .long 1071759360 + .long 0 + .long 1071758336 + .long 0 + .long 1071756288 + .long 0 + .long 1071755264 + .long 0 + .long 1071754240 + .long 0 + .long 1071752192 + .long 0 + .long 1071751168 + .long 0 + .long 1071750144 + .long 0 + .long 1071748096 + .long 0 + .long 1071747072 + .long 0 + .long 1071746048 + .long 0 + .long 1071744000 + .long 0 + .long 1071742976 + .long 0 + .long 1071741952 + .long 0 + .long 1071739904 + .long 0 + .long 1071738880 + .long 0 + .long 1071737856 + .long 0 + .long 1071736832 + .long 0 + .long 1071734784 + .long 0 + .long 1071733760 + .long 0 + .long 1071732736 + .long 0 + .long 1071730688 + .long 0 + .long 1071729664 + .long 0 + .long 1071728640 + .long 0 + .long 1071727616 + .long 0 + .long 1071725568 + .long 0 + .long 1071724544 + .long 0 + .long 1071723520 + .long 0 + .long 1071722496 + .long 0 + .long 1071720448 + .long 0 + .long 1071719424 + .long 0 + .long 1071718400 + .long 0 + .long 1071717376 + .long 0 + .long 1071715328 + .long 0 + .long 1071714304 + .long 0 + .long 1071713280 + .long 0 + .long 1071712256 + .long 0 + .long 1071711232 + .long 0 + .long 1071709184 + .long 0 + .long 1071708160 + .long 0 + .long 1071707136 + .long 0 + .long 1071706112 + .long 0 + .long 1071705088 + .long 0 + .long 1071704064 + .long 0 + .long 1071702016 + .long 0 + .long 1071700992 + .long 0 + .long 1071699968 + .long 0 + .long 1071698944 + .long 0 + .long 1071697920 + .long 0 + .long 1071696896 + .long 0 + .long 1071694848 + .long 0 + .long 1071693824 + .long 0 + .long 1071692800 + .long 0 + .long 1071691776 + .long 0 + .long 1071690752 + .long 0 + .long 1071689728 + .long 0 + .long 1071688704 + .long 0 + .long 1071686656 + .long 0 + .long 1071685632 + .long 0 + .long 1071684608 + .long 0 + .long 1071683584 + .long 0 + .long 1071682560 + .long 0 + .long 1071681536 + .long 0 + .long 1071680512 + .long 0 + .long 1071679488 + .long 0 + .long 1071677440 + .long 0 + .long 1071676416 + .long 0 + .long 1071675392 + .long 0 + .long 1071674368 + .long 0 + .long 1071673344 + .long 0 + .long 1071672320 + .long 0 + .long 1071671296 + .long 0 + .long 1071670272 + .long 0 + .long 1071669248 + .long 0 + .long 1071668224 + .long 0 + .long 1071667200 + .long 0 + .long 1071666176 + .long 0 + .long 1071665152 + .long 0 + .long 1071663104 + .long 0 + .long 1071662080 + .long 0 + .long 1071661056 + .long 0 + .long 1071660032 + .long 0 + .long 1071659008 + .long 0 + .long 1071657984 + .long 0 + .long 1071656960 + .long 0 + .long 1071655936 + .long 0 + .long 1071654912 + .long 0 + .long 1071653888 + .long 0 + .long 1071652864 + .long 0 + .long 1071651840 + .long 0 + .long 1071650816 + .long 0 + .long 1071649792 + .long 0 + .long 1071648768 + .long 0 + .long 1071647744 + .long 0 + .long 1071646720 + .long 0 + .long 1071645696 + .long 0 + .long 1071644672 + .long 0 + .long 1101004800 + .long 1073741824 + .long 1095761920 + .long 256 + .long 1118830592 + .long 0 + .long 1017118720 + .long 1413754136 + .long 1073291771 + .long 856972295 + .long 1016178214 + .long 1413754136 + .long 1074340347 + .long 856972295 + .long 1017226790 + .long 0 + .long 1072693248 + .long 0 + .long 1071644672 + .long 0 + .long 0 + .long 1476395008 + .long 1069897045 + .long 1768958041 + .long 3189069141 + .long 805306368 + .long 1068708659 + .long 3580333578 + .long 1040816593 + .long 3067382784 + .long 1067899757 + .long 3397590151 + .long 1067392113 + .long 2939529726 + .long 1066854585 + .long 1423429166 + .long 1066517752 + .long 1775218934 + .long 1066178574 + .long 1185392460 + .long 1065859647 + .long 289998670 + .long 1065577550 + .long 3179807072 + .long 1065648121 + .long 3781007284 + .long 1061576176 + .long 2482106687 + .long 1067019199 + .long 763519713 + .long 3214591591 + .long 3695107454 + .long 1067530646 + .long 0 + .long 1073741824 + .long 1124791109 + .long 1006764147 + .long 1476395008 + .long 1069897045 + .long 1953913876 + .long 3189069141 + .long 805306368 + .long 1067660083 + .long 165110192 + .long 1039768033 + .long 3067304082 + .long 1065802605 + .long 3404727379 + .long 1064246385 + .long 2737480376 + .long 1062660281 + .long 933797922 + .long 1061274873 + .long 1475716730 + .long 1059887095 + .long 1511619763 + .long 1058519827 + .long 556024211 + .long 1057187555 + .long 3482101045 + .long 1056217350 + .long 1174622859 + .long 1050762633 + .long 899668651 + .long 1055506366 + .long 1081094694 + .long 3202035365 + .long 2559814773 + .long 1053906576 + .long 0 + .long 3219128320 + .long 0 + .long 1071120384 + .long 0 + .long 3218341888 + .long 0 + .long 1070694400 + .long 0 + .long 3218046976 + .long 0 + .long 1070391296 + .long 0 + .long 3217739776 + .type _vmldACosHATab,@object + .size _vmldACosHATab,4520 + .space 88, 0x00 + .align 16 + +.FLT_199: + .long 0x00000000,0x80000000,0x00000000,0x00000000 + .type .FLT_199,@object + .size .FLT_199,16 diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core-sse2.S b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core-sse2.S new file mode 100644 index 0000000000..f94b3eb01a --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core-sse2.S @@ -0,0 +1,20 @@ +/* SSE2 version of vectorized acosf, vector length is 4. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#define _ZGVbN4v_acosf _ZGVbN4v_acosf_sse2 +#include "../svml_s_acosf4_core.S" diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core.c b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core.c new file mode 100644 index 0000000000..6f9a5c1082 --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core.c @@ -0,0 +1,28 @@ +/* Multiple versions of vectorized acosf, vector length is 4. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#define SYMBOL_NAME _ZGVbN4v_acosf +#include "ifunc-mathvec-sse4_1.h" + +libc_ifunc_redirected (REDIRECT_NAME, SYMBOL_NAME, IFUNC_SELECTOR ()); + +#ifdef SHARED +__hidden_ver1 (_ZGVbN4v_acosf, __GI__ZGVbN4v_acosf, + __redirect__ZGVbN4v_acosf) + __attribute__ ((visibility ("hidden"))); +#endif diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core_sse4.S b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core_sse4.S new file mode 100644 index 0000000000..d7e2dd282b --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf4_core_sse4.S @@ -0,0 +1,2812 @@ +/* Function acosf vectorized with SSE4. + Copyright (C) 2021 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 + https://www.gnu.org/licenses/. */ + +/* + * ALGORITHM DESCRIPTION: + * + * SelMask = (|x| >= 0.5) ? 1 : 0; + * R = SelMask ? sqrt(0.5 - 0.5*|x|) : |x| + * acos(|x|) = SelMask ? 2*Poly(R) : (Pi/2 - Poly(R)) + * acos(x) = sign(x) ? (Pi - acos(|x|)) : acos(|x|) + * + * + */ + +#include <sysdep.h> + + .text +ENTRY(_ZGVbN4v_acosf_sse4) + pushq %rbp + cfi_def_cfa_offset(16) + movq %rsp, %rbp + cfi_def_cfa(6, 16) + cfi_offset(6, -16) + andq $-64, %rsp + subq $320, %rsp + movaps %xmm0, %xmm6 + +/* + * 2*sqrt(X) ~ Sh - Sl (to 24+ bits) + * SQ ~ 2*sqrt(X) + */ + movups __svml_sacos_data_internal(%rip), %xmm5 + movups 64+__svml_sacos_data_internal(%rip), %xmm0 + +/* x = -|arg| */ + movaps %xmm5, %xmm7 + orps %xmm6, %xmm7 + +/* Y = 0.5 + 0.5*(-x) */ + movaps %xmm0, %xmm2 + mulps %xmm7, %xmm2 + +/* x^2 */ + movaps %xmm7, %xmm3 + mulps %xmm7, %xmm3 + addps %xmm2, %xmm0 + movups 256+__svml_sacos_data_internal(%rip), %xmm4 + andps %xmm6, %xmm5 + cmpnleps %xmm7, %xmm4 + minps %xmm0, %xmm3 + +/* SQ ~ 2*sqrt(Y) */ + rsqrtps %xmm0, %xmm1 + movmskps %xmm4, %edx + movaps %xmm0, %xmm4 + movaps %xmm3, %xmm2 + movups %xmm8, 144(%rsp) + cmpltps 192+__svml_sacos_data_internal(%rip), %xmm4 + cmpnltps %xmm0, %xmm2 + addps %xmm0, %xmm0 + andnps %xmm1, %xmm4 + .cfi_escape 0x10, 0x19, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 + movaps %xmm4, %xmm8 + mulps %xmm4, %xmm8 + mulps %xmm0, %xmm4 + mulps %xmm8, %xmm0 + movups 512+__svml_sacos_data_internal(%rip), %xmm1 + +/* polynomial */ + movups 576+__svml_sacos_data_internal(%rip), %xmm8 + mulps %xmm3, %xmm8 + subps 448+__svml_sacos_data_internal(%rip), %xmm0 + mulps %xmm0, %xmm1 + addps 592+__svml_sacos_data_internal(%rip), %xmm8 + mulps %xmm4, %xmm0 + addps 528+__svml_sacos_data_internal(%rip), %xmm1 + mulps %xmm0, %xmm1 + movaps %xmm3, %xmm0 + mulps %xmm3, %xmm0 + subps %xmm1, %xmm4 + mulps %xmm0, %xmm8 + movups 608+__svml_sacos_data_internal(%rip), %xmm1 + andps %xmm2, %xmm4 + mulps %xmm3, %xmm1 + movups 832+__svml_sacos_data_internal(%rip), %xmm0 + andps %xmm2, %xmm0 + addps 624+__svml_sacos_data_internal(%rip), %xmm1 + addps %xmm8, %xmm1 + +/* X<X^2 iff X<0 */ + movaps %xmm6, %xmm8 + cmpltps %xmm3, %xmm8 + mulps %xmm3, %xmm1 + andps %xmm8, %xmm0 + movaps %xmm2, %xmm8 + andnps %xmm7, %xmm8 + addps 640+__svml_sacos_data_internal(%rip), %xmm1 + mulps %xmm3, %xmm1 + orps %xmm4, %xmm8 + pxor %xmm5, %xmm8 + movaps %xmm2, %xmm3 + mulps %xmm8, %xmm1 + andnps 704+__svml_sacos_data_internal(%rip), %xmm3 + addps %xmm1, %xmm8 + addps %xmm3, %xmm0 + addps %xmm8, %xmm0 + testl %edx, %edx + jne .LBL_1_3 + +.LBL_1_2: + movups 144(%rsp), %xmm8 + cfi_restore(25) + movq %rbp, %rsp + popq %rbp + cfi_def_cfa(7, 8) + cfi_restore(6) + ret + cfi_def_cfa(6, 16) + cfi_offset(6, -16) + .cfi_escape 0x10, 0x19, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 + +.LBL_1_3: + movups %xmm6, 192(%rsp) + movups %xmm0, 256(%rsp) + xorl %eax, %eax + movups %xmm9, 96(%rsp) + movups %xmm10, 80(%rsp) + movups %xmm11, 64(%rsp) + movups %xmm12, 48(%rsp) + movups %xmm13, 32(%rsp) + movups %xmm14, 16(%rsp) + movups %xmm15, (%rsp) + movq %rsi, 120(%rsp) + movq %rdi, 112(%rsp) + movq %r12, 136(%rsp) + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x38, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1a, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1b, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xf0, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1e, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe0, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1f, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xd0, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x20, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc0, 0xfe, 0xff, 0xff, 0x22 + movl %eax, %r12d + movq %r13, 128(%rsp) + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 + movl %edx, %r13d + +.LBL_1_7: + btl %r12d, %r13d + jc .LBL_1_10 + +.LBL_1_8: + incl %r12d + cmpl $4, %r12d + jl .LBL_1_7 + movups 96(%rsp), %xmm9 + cfi_restore(26) + movups 80(%rsp), %xmm10 + cfi_restore(27) + movups 64(%rsp), %xmm11 + cfi_restore(28) + movups 48(%rsp), %xmm12 + cfi_restore(29) + movups 32(%rsp), %xmm13 + cfi_restore(30) + movups 16(%rsp), %xmm14 + cfi_restore(31) + movups (%rsp), %xmm15 + cfi_restore(32) + movq 120(%rsp), %rsi + cfi_restore(4) + movq 112(%rsp), %rdi + cfi_restore(5) + movq 136(%rsp), %r12 + cfi_restore(12) + movq 128(%rsp), %r13 + cfi_restore(13) + movups 256(%rsp), %xmm0 + jmp .LBL_1_2 + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x38, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x30, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1a, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1b, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x10, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x00, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xf0, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1e, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe0, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x1f, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xd0, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x20, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc0, 0xfe, 0xff, 0xff, 0x22 + +.LBL_1_10: + lea 192(%rsp,%r12,4), %rdi + lea 256(%rsp,%r12,4), %rsi + call __svml_sacos_cout_rare_internal + jmp .LBL_1_8 + +END(_ZGVbN4v_acosf_sse4) + + .align 16,0x90 + +__svml_sacos_cout_rare_internal: + + cfi_startproc + + xorl %eax, %eax + movzwl 2(%rdi), %edx + andl $32640, %edx + movss (%rdi), %xmm1 + cmpl $32640, %edx + je .LBL_2_20 + cvtss2sd %xmm1, %xmm1 + movsd %xmm1, -32(%rsp) + andb $127, -25(%rsp) + movsd -32(%rsp), %xmm12 + movsd 4168+_vmldACosHATab(%rip), %xmm0 + comisd %xmm12, %xmm0 + jbe .LBL_2_14 + movsd 4176+_vmldACosHATab(%rip), %xmm1 + comisd %xmm12, %xmm1 + jbe .LBL_2_10 + comisd 4128+_vmldACosHATab(%rip), %xmm12 + jbe .LBL_2_9 + movsd 4104+_vmldACosHATab(%rip), %xmm6 + movaps %xmm12, %xmm8 + mulsd %xmm12, %xmm6 + movaps %xmm12, %xmm7 + movsd %xmm6, -40(%rsp) + movsd -40(%rsp), %xmm13 + movsd 4104+_vmldACosHATab(%rip), %xmm5 + subsd -32(%rsp), %xmm13 + movsd %xmm13, -48(%rsp) + movsd -40(%rsp), %xmm15 + movsd -48(%rsp), %xmm14 + subsd %xmm14, %xmm15 + movaps %xmm12, %xmm14 + movsd %xmm15, -40(%rsp) + movsd -40(%rsp), %xmm6 + subsd %xmm6, %xmm8 + movsd %xmm8, -48(%rsp) + movsd -40(%rsp), %xmm9 + movaps %xmm9, %xmm4 + addsd %xmm9, %xmm7 + mulsd %xmm9, %xmm4 + movsd -48(%rsp), %xmm10 + movaps %xmm4, %xmm11 + mulsd %xmm10, %xmm7 + mulsd %xmm4, %xmm5 + addsd %xmm7, %xmm11 + movsd 4312+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movsd %xmm5, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4104+_vmldACosHATab(%rip), %xmm5 + subsd %xmm4, %xmm1 + addsd 4304+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movsd %xmm1, -48(%rsp) + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + addsd 4296+_vmldACosHATab(%rip), %xmm8 + subsd %xmm2, %xmm0 + mulsd %xmm11, %xmm8 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm3 + addsd 4288+_vmldACosHATab(%rip), %xmm8 + subsd %xmm3, %xmm4 + mulsd %xmm11, %xmm8 + movsd %xmm4, -48(%rsp) + movsd -40(%rsp), %xmm6 + mulsd %xmm6, %xmm9 + addsd 4280+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm6, %xmm10 + mulsd %xmm11, %xmm8 + mulsd %xmm9, %xmm5 + addsd 4272+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movaps %xmm9, %xmm0 + movsd -48(%rsp), %xmm13 + movaps %xmm6, %xmm4 + movsd %xmm5, -40(%rsp) + addsd %xmm13, %xmm7 + addsd 4264+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm7, %xmm14 + mulsd %xmm11, %xmm8 + addsd %xmm14, %xmm10 + addsd 4256+_vmldACosHATab(%rip), %xmm8 + movsd -40(%rsp), %xmm1 + mulsd %xmm11, %xmm8 + subsd %xmm9, %xmm1 + addsd %xmm10, %xmm9 + addsd 4248+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm9, %xmm7 + mulsd %xmm11, %xmm8 + movsd %xmm1, -48(%rsp) + movsd -40(%rsp), %xmm2 + movsd -48(%rsp), %xmm15 + subsd %xmm15, %xmm2 + addsd 4240+_vmldACosHATab(%rip), %xmm8 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm5 + mulsd %xmm11, %xmm8 + subsd %xmm5, %xmm0 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm3 + movsd -48(%rsp), %xmm5 + movaps %xmm5, %xmm13 + addsd 4232+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm3, %xmm4 + addsd %xmm10, %xmm13 + mulsd %xmm11, %xmm8 + mulsd %xmm13, %xmm6 + addsd 4224+_vmldACosHATab(%rip), %xmm8 + addsd %xmm7, %xmm6 + mulsd %xmm11, %xmm8 + movsd 4104+_vmldACosHATab(%rip), %xmm7 + movaps %xmm4, %xmm13 + mulsd %xmm4, %xmm7 + addsd 4216+_vmldACosHATab(%rip), %xmm8 + movsd %xmm7, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4200+_vmldACosHATab(%rip), %xmm11 + subsd %xmm4, %xmm1 + mulsd %xmm9, %xmm11 + addsd %xmm6, %xmm4 + movsd %xmm1, -48(%rsp) + movaps %xmm12, %xmm9 + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + movsd 4192+_vmldACosHATab(%rip), %xmm1 + subsd %xmm2, %xmm0 + mulsd %xmm1, %xmm3 + mulsd %xmm1, %xmm10 + mulsd %xmm4, %xmm8 + addsd %xmm3, %xmm9 + mulsd %xmm1, %xmm5 + addsd %xmm10, %xmm11 + movsd %xmm0, -40(%rsp) + pxor %xmm1, %xmm1 + movsd -40(%rsp), %xmm7 + addsd %xmm11, %xmm8 + subsd %xmm7, %xmm13 + addsd %xmm5, %xmm8 + movsd %xmm13, -48(%rsp) + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + movsd %xmm9, -40(%rsp) + addsd %xmm2, %xmm6 + movsd -40(%rsp), %xmm10 + movsd %xmm3, -56(%rsp) + subsd %xmm10, %xmm12 + movsd 4208+_vmldACosHATab(%rip), %xmm4 + addsd %xmm12, %xmm3 + mulsd %xmm4, %xmm0 + mulsd %xmm4, %xmm6 + movsd %xmm3, -48(%rsp) + movsd -40(%rsp), %xmm3 + movaps %xmm3, %xmm12 + movsd -48(%rsp), %xmm7 + addsd %xmm0, %xmm12 + addsd %xmm7, %xmm8 + movsd %xmm12, -40(%rsp) + movsd -40(%rsp), %xmm12 + subsd %xmm12, %xmm3 + addsd %xmm3, %xmm0 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm3 + movsd -48(%rsp), %xmm0 + cvtss2sd (%rdi), %xmm1 + addsd %xmm8, %xmm0 + comisd 4184+_vmldACosHATab(%rip), %xmm1 + addsd %xmm0, %xmm6 + jbe .LBL_2_7 + movsd 4136+_vmldACosHATab(%rip), %xmm2 + movaps %xmm2, %xmm0 + subsd %xmm3, %xmm0 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4144+_vmldACosHATab(%rip), %xmm0 + subsd %xmm1, %xmm2 + subsd %xmm6, %xmm0 + subsd %xmm3, %xmm2 + movsd %xmm2, -48(%rsp) + movsd -40(%rsp), %xmm1 + movsd -48(%rsp), %xmm3 + addsd %xmm3, %xmm0 + jmp .LBL_2_8 + +.LBL_2_7: + movsd 4136+_vmldACosHATab(%rip), %xmm2 + movaps %xmm3, %xmm0 + addsd %xmm2, %xmm0 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + subsd %xmm1, %xmm2 + addsd %xmm2, %xmm3 + movsd %xmm3, -48(%rsp) + movsd 4144+_vmldACosHATab(%rip), %xmm3 + movsd -40(%rsp), %xmm1 + addsd %xmm3, %xmm6 + movsd -48(%rsp), %xmm0 + addsd %xmm6, %xmm0 + +.LBL_2_8: + addsd %xmm0, %xmm1 + cvtsd2ss %xmm1, %xmm1 + movss %xmm1, (%rsi) + ret + +.LBL_2_9: + movsd 4144+_vmldACosHATab(%rip), %xmm1 + addsd %xmm0, %xmm12 + movsd %xmm12, -40(%rsp) + movsd -40(%rsp), %xmm0 + mulsd -32(%rsp), %xmm0 + movsd %xmm0, -56(%rsp) + movb -49(%rsp), %dl + movb 3(%rdi), %dil + andb $127, %dl + andb $-128, %dil + orb %dil, %dl + movb %dl, -49(%rsp) + subsd -56(%rsp), %xmm1 + addsd 4136+_vmldACosHATab(%rip), %xmm1 + cvtsd2ss %xmm1, %xmm1 + movss %xmm1, (%rsi) + ret + +.LBL_2_10: + movaps %xmm0, %xmm8 + movzwl 4174+_vmldACosHATab(%rip), %r9d + pxor %xmm13, %xmm13 + andl $-32753, %r9d + subsd %xmm12, %xmm8 + subsd %xmm0, %xmm13 + mulsd %xmm8, %xmm1 + movsd %xmm1, -56(%rsp) + movzwl -50(%rsp), %ecx + andl $32752, %ecx + shrl $4, %ecx + addl $-1023, %ecx + movl %ecx, %r8d + movl %ecx, %edx + negl %r8d + addl $1023, %r8d + andl $2047, %r8d + shll $4, %r8d + movsd %xmm0, -32(%rsp) + orl %r8d, %r9d + movw %r9w, -26(%rsp) + andl $1, %edx + movsd -32(%rsp), %xmm4 + lea _vmldACosHATab(%rip), %r8 + mulsd %xmm4, %xmm1 + movl %edx, %r10d + movaps %xmm1, %xmm15 + movsd 4112+_vmldACosHATab(%rip), %xmm6 + addsd %xmm1, %xmm15 + jne .LBL_73 + movaps %xmm1, %xmm15 + +.LBL_73: + mulsd %xmm15, %xmm6 + movaps %xmm15, %xmm7 + movaps %xmm6, %xmm9 + subl %edx, %ecx + movsd 4120+_vmldACosHATab(%rip), %xmm11 + subsd %xmm15, %xmm9 + addsd %xmm1, %xmm11 + movsd %xmm9, -48(%rsp) + movsd -48(%rsp), %xmm10 + movsd %xmm11, -24(%rsp) + subsd %xmm10, %xmm6 + movl -24(%rsp), %r11d + movaps %xmm6, %xmm14 + shll $8, %r10d + andl $511, %r11d + addl %r10d, %r11d + subsd %xmm6, %xmm7 + movsd (%r8,%r11,8), %xmm5 + addsd %xmm7, %xmm14 + mulsd %xmm5, %xmm6 + movaps %xmm5, %xmm12 + mulsd %xmm5, %xmm12 + mulsd %xmm12, %xmm14 + movsd 4512+_vmldACosHATab(%rip), %xmm4 + addsd %xmm13, %xmm14 + mulsd %xmm14, %xmm4 + shrl $1, %ecx + addsd 4504+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + addl $1023, %ecx + andl $2047, %ecx + addsd 4496+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movzwl 4174+_vmldACosHATab(%rip), %r9d + shll $4, %ecx + andl $-32753, %r9d + movsd %xmm0, -16(%rsp) + orl %ecx, %r9d + movw %r9w, -10(%rsp) + movsd -16(%rsp), %xmm9 + mulsd %xmm9, %xmm6 + addsd 4488+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movsd 4104+_vmldACosHATab(%rip), %xmm3 + mulsd %xmm6, %xmm3 + addsd 4480+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movsd %xmm3, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4352+_vmldACosHATab(%rip), %xmm11 + subsd %xmm6, %xmm1 + addsd 4472+_vmldACosHATab(%rip), %xmm4 + addsd 4360+_vmldACosHATab(%rip), %xmm11 + mulsd %xmm14, %xmm4 + mulsd %xmm8, %xmm11 + addsd 4464+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + mulsd %xmm15, %xmm4 + movsd %xmm1, -48(%rsp) + addsd %xmm4, %xmm7 + mulsd %xmm5, %xmm7 + movsd 4456+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + mulsd %xmm9, %xmm7 + addsd 4448+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm2 + movsd -48(%rsp), %xmm0 + movsd 4104+_vmldACosHATab(%rip), %xmm4 + subsd %xmm0, %xmm2 + mulsd %xmm8, %xmm4 + addsd 4440+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movaps %xmm8, %xmm0 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm14 + movsd 4104+_vmldACosHATab(%rip), %xmm2 + subsd %xmm14, %xmm6 + addsd 4432+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd %xmm6, -48(%rsp) + movsd -40(%rsp), %xmm6 + movsd -48(%rsp), %xmm10 + movsd %xmm4, -40(%rsp) + addsd %xmm10, %xmm7 + addsd 4424+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm3 + movsd 4336+_vmldACosHATab(%rip), %xmm12 + subsd %xmm8, %xmm3 + addsd 4416+_vmldACosHATab(%rip), %xmm5 + addsd 4344+_vmldACosHATab(%rip), %xmm12 + mulsd %xmm8, %xmm5 + addsd %xmm11, %xmm12 + addsd 4408+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm12 + mulsd %xmm8, %xmm5 + movsd %xmm3, -48(%rsp) + movsd -40(%rsp), %xmm1 + movsd -48(%rsp), %xmm15 + movsd 4320+_vmldACosHATab(%rip), %xmm13 + subsd %xmm15, %xmm1 + addsd 4400+_vmldACosHATab(%rip), %xmm5 + addsd 4328+_vmldACosHATab(%rip), %xmm13 + mulsd %xmm8, %xmm5 + addsd %xmm12, %xmm13 + addsd 4392+_vmldACosHATab(%rip), %xmm5 + movsd %xmm1, -40(%rsp) + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm4 + subsd %xmm4, %xmm0 + addsd 4384+_vmldACosHATab(%rip), %xmm5 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm4 + movaps %xmm4, %xmm14 + mulsd %xmm4, %xmm14 + mulsd %xmm8, %xmm5 + mulsd %xmm14, %xmm2 + addsd 4376+_vmldACosHATab(%rip), %xmm5 + movsd -48(%rsp), %xmm3 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm9 + mulsd %xmm8, %xmm5 + subsd %xmm14, %xmm9 + movsd %xmm9, -48(%rsp) + movsd -40(%rsp), %xmm11 + movsd -48(%rsp), %xmm10 + movsd 4336+_vmldACosHATab(%rip), %xmm0 + subsd %xmm10, %xmm11 + mulsd %xmm4, %xmm0 + addsd 4368+_vmldACosHATab(%rip), %xmm5 + addsd %xmm8, %xmm4 + mulsd %xmm8, %xmm5 + mulsd %xmm3, %xmm4 + mulsd %xmm8, %xmm5 + movsd %xmm11, -40(%rsp) + movaps %xmm0, %xmm1 + movsd -40(%rsp), %xmm12 + mulsd %xmm8, %xmm5 + subsd %xmm12, %xmm14 + movsd %xmm14, -48(%rsp) + addsd %xmm5, %xmm13 + movsd -40(%rsp), %xmm9 + mulsd 4352+_vmldACosHATab(%rip), %xmm9 + mulsd %xmm13, %xmm7 + addsd %xmm9, %xmm1 + movsd -48(%rsp), %xmm2 + movsd %xmm1, -40(%rsp) + addsd %xmm2, %xmm4 + movsd -40(%rsp), %xmm13 + movsd %xmm9, -24(%rsp) + subsd %xmm13, %xmm0 + mulsd 4352+_vmldACosHATab(%rip), %xmm4 + addsd %xmm0, %xmm9 + movsd %xmm9, -48(%rsp) + movsd -40(%rsp), %xmm12 + movsd 4320+_vmldACosHATab(%rip), %xmm10 + movsd -48(%rsp), %xmm1 + addsd %xmm12, %xmm10 + movsd %xmm10, -40(%rsp) + movsd -40(%rsp), %xmm15 + movsd 4320+_vmldACosHATab(%rip), %xmm11 + movsd 4104+_vmldACosHATab(%rip), %xmm9 + subsd %xmm15, %xmm11 + movsd 4336+_vmldACosHATab(%rip), %xmm2 + addsd %xmm11, %xmm12 + mulsd %xmm3, %xmm2 + movsd %xmm12, -48(%rsp) + movsd -40(%rsp), %xmm15 + mulsd %xmm15, %xmm9 + movsd -48(%rsp), %xmm0 + movsd %xmm9, -40(%rsp) + movsd -40(%rsp), %xmm10 + movsd 4360+_vmldACosHATab(%rip), %xmm3 + subsd %xmm15, %xmm10 + mulsd %xmm8, %xmm3 + movsd %xmm10, -48(%rsp) + movsd -40(%rsp), %xmm11 + movsd -48(%rsp), %xmm13 + subsd %xmm13, %xmm11 + addsd 4344+_vmldACosHATab(%rip), %xmm3 + movsd %xmm11, -40(%rsp) + movsd -40(%rsp), %xmm14 + mulsd %xmm8, %xmm3 + subsd %xmm14, %xmm15 + movsd %xmm15, -48(%rsp) + movsd -40(%rsp), %xmm10 + movsd -48(%rsp), %xmm9 + addsd %xmm9, %xmm4 + addsd 4328+_vmldACosHATab(%rip), %xmm3 + addsd %xmm2, %xmm4 + addsd %xmm5, %xmm3 + addsd %xmm1, %xmm4 + addsd %xmm0, %xmm4 + addsd %xmm3, %xmm4 + mulsd %xmm6, %xmm4 + mulsd %xmm10, %xmm6 + addsd %xmm7, %xmm4 + pxor %xmm7, %xmm7 + cvtss2sd (%rdi), %xmm7 + comisd 4184+_vmldACosHATab(%rip), %xmm7 + ja .LBL_2_13 + movsd 4152+_vmldACosHATab(%rip), %xmm2 + movaps %xmm2, %xmm0 + movsd 4160+_vmldACosHATab(%rip), %xmm5 + subsd %xmm6, %xmm0 + subsd %xmm4, %xmm5 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd %xmm6, -56(%rsp) + subsd %xmm1, %xmm2 + subsd %xmm6, %xmm2 + movsd %xmm2, -48(%rsp) + movsd -40(%rsp), %xmm6 + movsd -48(%rsp), %xmm3 + movaps %xmm3, %xmm4 + addsd %xmm5, %xmm4 + +.LBL_2_13: + addsd %xmm4, %xmm6 + cvtsd2ss %xmm6, %xmm6 + movss %xmm6, (%rsi) + ret + +.LBL_2_14: + ucomisd %xmm0, %xmm1 + jp .LBL_2_15 + je .LBL_2_19 + +.LBL_2_15: + xorps .FLT_199(%rip), %xmm0 + ucomisd %xmm0, %xmm1 + jp .LBL_2_16 + je .LBL_2_18 + +.LBL_2_16: + movl $1, %eax + pxor %xmm1, %xmm1 + pxor %xmm0, %xmm0 + divss %xmm0, %xmm1 + movss %xmm1, (%rsi) + ret + +.LBL_2_18: + movsd 4152+_vmldACosHATab(%rip), %xmm0 + addsd 4160+_vmldACosHATab(%rip), %xmm0 + cvtsd2ss %xmm0, %xmm0 + movss %xmm0, (%rsi) + ret + +.LBL_2_19: + movsd 4184+_vmldACosHATab(%rip), %xmm0 + cvtsd2ss %xmm0, %xmm0 + movss %xmm0, (%rsi) + ret + +.LBL_2_20: + divss %xmm1, %xmm1 + testl $8388607, (%rdi) + movss %xmm1, (%rsi) + sete %al + ret + + cfi_endproc + + .type __svml_sacos_cout_rare_internal,@function + .size __svml_sacos_cout_rare_internal,.-__svml_sacos_cout_rare_internal + + .section .rodata, "a" + .align 64 + +__svml_sacos_data_internal: + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 0 + .long 0 + .long 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .type __svml_sacos_data_internal,@object + .size __svml_sacos_data_internal,1216 + .align 32 + +_vmldACosHATab: + .long 0 + .long 1072693248 + .long 0 + .long 1072689152 + .long 0 + .long 1072685056 + .long 0 + .long 1072680960 + .long 0 + .long 1072676864 + .long 0 + .long 1072672768 + .long 0 + .long 1072668672 + .long 0 + .long 1072665600 + .long 0 + .long 1072661504 + .long 0 + .long 1072657408 + .long 0 + .long 1072653312 + .long 0 + .long 1072649216 + .long 0 + .long 1072646144 + .long 0 + .long 1072642048 + .long 0 + .long 1072637952 + .long 0 + .long 1072634880 + .long 0 + .long 1072630784 + .long 0 + .long 1072626688 + .long 0 + .long 1072623616 + .long 0 + .long 1072619520 + .long 0 + .long 1072615424 + .long 0 + .long 1072612352 + .long 0 + .long 1072608256 + .long 0 + .long 1072605184 + .long 0 + .long 1072601088 + .long 0 + .long 1072598016 + .long 0 + .long 1072593920 + .long 0 + .long 1072590848 + .long 0 + .long 1072586752 + .long 0 + .long 1072583680 + .long 0 + .long 1072580608 + .long 0 + .long 1072576512 + .long 0 + .long 1072573440 + .long 0 + .long 1072570368 + .long 0 + .long 1072566272 + .long 0 + .long 1072563200 + .long 0 + .long 1072560128 + .long 0 + .long 1072556032 + .long 0 + .long 1072552960 + .long 0 + .long 1072549888 + .long 0 + .long 1072546816 + .long 0 + .long 1072542720 + .long 0 + .long 1072539648 + .long 0 + .long 1072536576 + .long 0 + .long 1072533504 + .long 0 + .long 1072530432 + .long 0 + .long 1072527360 + .long 0 + .long 1072523264 + .long 0 + .long 1072520192 + .long 0 + .long 1072517120 + .long 0 + .long 1072514048 + .long 0 + .long 1072510976 + .long 0 + .long 1072507904 + .long 0 + .long 1072504832 + .long 0 + .long 1072501760 + .long 0 + .long 1072498688 + .long 0 + .long 1072495616 + .long 0 + .long 1072492544 + .long 0 + .long 1072489472 + .long 0 + .long 1072486400 + .long 0 + .long 1072483328 + .long 0 + .long 1072480256 + .long 0 + .long 1072478208 + .long 0 + .long 1072475136 + .long 0 + .long 1072472064 + .long 0 + .long 1072468992 + .long 0 + .long 1072465920 + .long 0 + .long 1072462848 + .long 0 + .long 1072459776 + .long 0 + .long 1072457728 + .long 0 + .long 1072454656 + .long 0 + .long 1072451584 + .long 0 + .long 1072448512 + .long 0 + .long 1072446464 + .long 0 + .long 1072443392 + .long 0 + .long 1072440320 + .long 0 + .long 1072437248 + .long 0 + .long 1072435200 + .long 0 + .long 1072432128 + .long 0 + .long 1072429056 + .long 0 + .long 1072427008 + .long 0 + .long 1072423936 + .long 0 + .long 1072420864 + .long 0 + .long 1072418816 + .long 0 + .long 1072415744 + .long 0 + .long 1072412672 + .long 0 + .long 1072410624 + .long 0 + .long 1072407552 + .long 0 + .long 1072405504 + .long 0 + .long 1072402432 + .long 0 + .long 1072400384 + .long 0 + .long 1072397312 + .long 0 + .long 1072395264 + .long 0 + .long 1072392192 + .long 0 + .long 1072390144 + .long 0 + .long 1072387072 + .long 0 + .long 1072385024 + .long 0 + .long 1072381952 + .long 0 + .long 1072379904 + .long 0 + .long 1072376832 + .long 0 + .long 1072374784 + .long 0 + .long 1072371712 + .long 0 + .long 1072369664 + .long 0 + .long 1072366592 + .long 0 + .long 1072364544 + .long 0 + .long 1072362496 + .long 0 + .long 1072359424 + .long 0 + .long 1072357376 + .long 0 + .long 1072355328 + .long 0 + .long 1072352256 + .long 0 + .long 1072350208 + .long 0 + .long 1072347136 + .long 0 + .long 1072345088 + .long 0 + .long 1072343040 + .long 0 + .long 1072340992 + .long 0 + .long 1072337920 + .long 0 + .long 1072335872 + .long 0 + .long 1072333824 + .long 0 + .long 1072330752 + .long 0 + .long 1072328704 + .long 0 + .long 1072326656 + .long 0 + .long 1072324608 + .long 0 + .long 1072321536 + .long 0 + .long 1072319488 + .long 0 + .long 1072317440 + .long 0 + .long 1072315392 + .long 0 + .long 1072313344 + .long 0 + .long 1072310272 + .long 0 + .long 1072308224 + .long 0 + .long 1072306176 + .long 0 + .long 1072304128 + .long 0 + .long 1072302080 + .long 0 + .long 1072300032 + .long 0 + .long 1072296960 + .long 0 + .long 1072294912 + .long 0 + .long 1072292864 + .long 0 + .long 1072290816 + .long 0 + .long 1072288768 + .long 0 + .long 1072286720 + .long 0 + .long 1072284672 + .long 0 + .long 1072282624 + .long 0 + .long 1072280576 + .long 0 + .long 1072278528 + .long 0 + .long 1072275456 + .long 0 + .long 1072273408 + .long 0 + .long 1072271360 + .long 0 + .long 1072269312 + .long 0 + .long 1072267264 + .long 0 + .long 1072265216 + .long 0 + .long 1072263168 + .long 0 + .long 1072261120 + .long 0 + .long 1072259072 + .long 0 + .long 1072257024 + .long 0 + .long 1072254976 + .long 0 + .long 1072252928 + .long 0 + .long 1072250880 + .long 0 + .long 1072248832 + .long 0 + .long 1072246784 + .long 0 + .long 1072244736 + .long 0 + .long 1072243712 + .long 0 + .long 1072241664 + .long 0 + .long 1072239616 + .long 0 + .long 1072237568 + .long 0 + .long 1072235520 + .long 0 + .long 1072233472 + .long 0 + .long 1072231424 + .long 0 + .long 1072229376 + .long 0 + .long 1072227328 + .long 0 + .long 1072225280 + .long 0 + .long 1072223232 + .long 0 + .long 1072222208 + .long 0 + .long 1072220160 + .long 0 + .long 1072218112 + .long 0 + .long 1072216064 + .long 0 + .long 1072214016 + .long 0 + .long 1072211968 + .long 0 + .long 1072210944 + .long 0 + .long 1072208896 + .long 0 + .long 1072206848 + .long 0 + .long 1072204800 + .long 0 + .long 1072202752 + .long 0 + .long 1072201728 + .long 0 + .long 1072199680 + .long 0 + .long 1072197632 + .long 0 + .long 1072195584 + .long 0 + .long 1072193536 + .long 0 + .long 1072192512 + .long 0 + .long 1072190464 + .long 0 + .long 1072188416 + .long 0 + .long 1072186368 + .long 0 + .long 1072185344 + .long 0 + .long 1072183296 + .long 0 + .long 1072181248 + .long 0 + .long 1072179200 + .long 0 + .long 1072178176 + .long 0 + .long 1072176128 + .long 0 + .long 1072174080 + .long 0 + .long 1072173056 + .long 0 + .long 1072171008 + .long 0 + .long 1072168960 + .long 0 + .long 1072167936 + .long 0 + .long 1072165888 + .long 0 + .long 1072163840 + .long 0 + .long 1072161792 + .long 0 + .long 1072160768 + .long 0 + .long 1072158720 + .long 0 + .long 1072157696 + .long 0 + .long 1072155648 + .long 0 + .long 1072153600 + .long 0 + .long 1072152576 + .long 0 + .long 1072150528 + .long 0 + .long 1072148480 + .long 0 + .long 1072147456 + .long 0 + .long 1072145408 + .long 0 + .long 1072143360 + .long 0 + .long 1072142336 + .long 0 + .long 1072140288 + .long 0 + .long 1072139264 + .long 0 + .long 1072137216 + .long 0 + .long 1072135168 + .long 0 + .long 1072134144 + .long 0 + .long 1072132096 + .long 0 + .long 1072131072 + .long 0 + .long 1072129024 + .long 0 + .long 1072128000 + .long 0 + .long 1072125952 + .long 0 + .long 1072124928 + .long 0 + .long 1072122880 + .long 0 + .long 1072120832 + .long 0 + .long 1072119808 + .long 0 + .long 1072117760 + .long 0 + .long 1072116736 + .long 0 + .long 1072114688 + .long 0 + .long 1072113664 + .long 0 + .long 1072111616 + .long 0 + .long 1072110592 + .long 0 + .long 1072108544 + .long 0 + .long 1072107520 + .long 0 + .long 1072105472 + .long 0 + .long 1072104448 + .long 0 + .long 1072102400 + .long 0 + .long 1072101376 + .long 0 + .long 1072099328 + .long 0 + .long 1072098304 + .long 0 + .long 1072096256 + .long 0 + .long 1072095232 + .long 0 + .long 1072094208 + .long 0 + .long 1072092160 + .long 0 + .long 1072091136 + .long 0 + .long 1072089088 + .long 0 + .long 1072088064 + .long 0 + .long 1072086016 + .long 0 + .long 1072084992 + .long 0 + .long 1072082944 + .long 0 + .long 1072081920 + .long 0 + .long 1072080896 + .long 0 + .long 1072078848 + .long 0 + .long 1072075776 + .long 0 + .long 1072073728 + .long 0 + .long 1072070656 + .long 0 + .long 1072067584 + .long 0 + .long 1072064512 + .long 0 + .long 1072061440 + .long 0 + .long 1072059392 + .long 0 + .long 1072056320 + .long 0 + .long 1072053248 + .long 0 + .long 1072051200 + .long 0 + .long 1072048128 + .long 0 + .long 1072045056 + .long 0 + .long 1072043008 + .long 0 + .long 1072039936 + .long 0 + .long 1072037888 + .long 0 + .long 1072034816 + .long 0 + .long 1072031744 + .long 0 + .long 1072029696 + .long 0 + .long 1072026624 + .long 0 + .long 1072024576 + .long 0 + .long 1072021504 + .long 0 + .long 1072019456 + .long 0 + .long 1072016384 + .long 0 + .long 1072014336 + .long 0 + .long 1072011264 + .long 0 + .long 1072009216 + .long 0 + .long 1072006144 + .long 0 + .long 1072004096 + .long 0 + .long 1072002048 + .long 0 + .long 1071998976 + .long 0 + .long 1071996928 + .long 0 + .long 1071993856 + .long 0 + .long 1071991808 + .long 0 + .long 1071989760 + .long 0 + .long 1071986688 + .long 0 + .long 1071984640 + .long 0 + .long 1071982592 + .long 0 + .long 1071979520 + .long 0 + .long 1071977472 + .long 0 + .long 1071975424 + .long 0 + .long 1071972352 + .long 0 + .long 1071970304 + .long 0 + .long 1071968256 + .long 0 + .long 1071966208 + .long 0 + .long 1071964160 + .long 0 + .long 1071961088 + .long 0 + .long 1071959040 + .long 0 + .long 1071956992 + .long 0 + .long 1071954944 + .long 0 + .long 1071952896 + .long 0 + .long 1071949824 + .long 0 + .long 1071947776 + .long 0 + .long 1071945728 + .long 0 + .long 1071943680 + .long 0 + .long 1071941632 + .long 0 + .long 1071939584 + .long 0 + .long 1071937536 + .long 0 + .long 1071935488 + .long 0 + .long 1071933440 + .long 0 + .long 1071930368 + .long 0 + .long 1071928320 + .long 0 + .long 1071926272 + .long 0 + .long 1071924224 + .long 0 + .long 1071922176 + .long 0 + .long 1071920128 + .long 0 + .long 1071918080 + .long 0 + .long 1071916032 + .long 0 + .long 1071913984 + .long 0 + .long 1071911936 + .long 0 + .long 1071909888 + .long 0 + .long 1071907840 + .long 0 + .long 1071905792 + .long 0 + .long 1071903744 + .long 0 + .long 1071901696 + .long 0 + .long 1071900672 + .long 0 + .long 1071898624 + .long 0 + .long 1071896576 + .long 0 + .long 1071894528 + .long 0 + .long 1071892480 + .long 0 + .long 1071890432 + .long 0 + .long 1071888384 + .long 0 + .long 1071886336 + .long 0 + .long 1071884288 + .long 0 + .long 1071883264 + .long 0 + .long 1071881216 + .long 0 + .long 1071879168 + .long 0 + .long 1071877120 + .long 0 + .long 1071875072 + .long 0 + .long 1071873024 + .long 0 + .long 1071872000 + .long 0 + .long 1071869952 + .long 0 + .long 1071867904 + .long 0 + .long 1071865856 + .long 0 + .long 1071864832 + .long 0 + .long 1071862784 + .long 0 + .long 1071860736 + .long 0 + .long 1071858688 + .long 0 + .long 1071856640 + .long 0 + .long 1071855616 + .long 0 + .long 1071853568 + .long 0 + .long 1071851520 + .long 0 + .long 1071850496 + .long 0 + .long 1071848448 + .long 0 + .long 1071846400 + .long 0 + .long 1071844352 + .long 0 + .long 1071843328 + .long 0 + .long 1071841280 + .long 0 + .long 1071839232 + .long 0 + .long 1071838208 + .long 0 + .long 1071836160 + .long 0 + .long 1071834112 + .long 0 + .long 1071833088 + .long 0 + .long 1071831040 + .long 0 + .long 1071830016 + .long 0 + .long 1071827968 + .long 0 + .long 1071825920 + .long 0 + .long 1071824896 + .long 0 + .long 1071822848 + .long 0 + .long 1071821824 + .long 0 + .long 1071819776 + .long 0 + .long 1071817728 + .long 0 + .long 1071816704 + .long 0 + .long 1071814656 + .long 0 + .long 1071813632 + .long 0 + .long 1071811584 + .long 0 + .long 1071810560 + .long 0 + .long 1071808512 + .long 0 + .long 1071806464 + .long 0 + .long 1071805440 + .long 0 + .long 1071803392 + .long 0 + .long 1071802368 + .long 0 + .long 1071800320 + .long 0 + .long 1071799296 + .long 0 + .long 1071797248 + .long 0 + .long 1071796224 + .long 0 + .long 1071794176 + .long 0 + .long 1071793152 + .long 0 + .long 1071791104 + .long 0 + .long 1071790080 + .long 0 + .long 1071788032 + .long 0 + .long 1071787008 + .long 0 + .long 1071784960 + .long 0 + .long 1071783936 + .long 0 + .long 1071782912 + .long 0 + .long 1071780864 + .long 0 + .long 1071779840 + .long 0 + .long 1071777792 + .long 0 + .long 1071776768 + .long 0 + .long 1071774720 + .long 0 + .long 1071773696 + .long 0 + .long 1071772672 + .long 0 + .long 1071770624 + .long 0 + .long 1071769600 + .long 0 + .long 1071767552 + .long 0 + .long 1071766528 + .long 0 + .long 1071765504 + .long 0 + .long 1071763456 + .long 0 + .long 1071762432 + .long 0 + .long 1071760384 + .long 0 + .long 1071759360 + .long 0 + .long 1071758336 + .long 0 + .long 1071756288 + .long 0 + .long 1071755264 + .long 0 + .long 1071754240 + .long 0 + .long 1071752192 + .long 0 + .long 1071751168 + .long 0 + .long 1071750144 + .long 0 + .long 1071748096 + .long 0 + .long 1071747072 + .long 0 + .long 1071746048 + .long 0 + .long 1071744000 + .long 0 + .long 1071742976 + .long 0 + .long 1071741952 + .long 0 + .long 1071739904 + .long 0 + .long 1071738880 + .long 0 + .long 1071737856 + .long 0 + .long 1071736832 + .long 0 + .long 1071734784 + .long 0 + .long 1071733760 + .long 0 + .long 1071732736 + .long 0 + .long 1071730688 + .long 0 + .long 1071729664 + .long 0 + .long 1071728640 + .long 0 + .long 1071727616 + .long 0 + .long 1071725568 + .long 0 + .long 1071724544 + .long 0 + .long 1071723520 + .long 0 + .long 1071722496 + .long 0 + .long 1071720448 + .long 0 + .long 1071719424 + .long 0 + .long 1071718400 + .long 0 + .long 1071717376 + .long 0 + .long 1071715328 + .long 0 + .long 1071714304 + .long 0 + .long 1071713280 + .long 0 + .long 1071712256 + .long 0 + .long 1071711232 + .long 0 + .long 1071709184 + .long 0 + .long 1071708160 + .long 0 + .long 1071707136 + .long 0 + .long 1071706112 + .long 0 + .long 1071705088 + .long 0 + .long 1071704064 + .long 0 + .long 1071702016 + .long 0 + .long 1071700992 + .long 0 + .long 1071699968 + .long 0 + .long 1071698944 + .long 0 + .long 1071697920 + .long 0 + .long 1071696896 + .long 0 + .long 1071694848 + .long 0 + .long 1071693824 + .long 0 + .long 1071692800 + .long 0 + .long 1071691776 + .long 0 + .long 1071690752 + .long 0 + .long 1071689728 + .long 0 + .long 1071688704 + .long 0 + .long 1071686656 + .long 0 + .long 1071685632 + .long 0 + .long 1071684608 + .long 0 + .long 1071683584 + .long 0 + .long 1071682560 + .long 0 + .long 1071681536 + .long 0 + .long 1071680512 + .long 0 + .long 1071679488 + .long 0 + .long 1071677440 + .long 0 + .long 1071676416 + .long 0 + .long 1071675392 + .long 0 + .long 1071674368 + .long 0 + .long 1071673344 + .long 0 + .long 1071672320 + .long 0 + .long 1071671296 + .long 0 + .long 1071670272 + .long 0 + .long 1071669248 + .long 0 + .long 1071668224 + .long 0 + .long 1071667200 + .long 0 + .long 1071666176 + .long 0 + .long 1071665152 + .long 0 + .long 1071663104 + .long 0 + .long 1071662080 + .long 0 + .long 1071661056 + .long 0 + .long 1071660032 + .long 0 + .long 1071659008 + .long 0 + .long 1071657984 + .long 0 + .long 1071656960 + .long 0 + .long 1071655936 + .long 0 + .long 1071654912 + .long 0 + .long 1071653888 + .long 0 + .long 1071652864 + .long 0 + .long 1071651840 + .long 0 + .long 1071650816 + .long 0 + .long 1071649792 + .long 0 + .long 1071648768 + .long 0 + .long 1071647744 + .long 0 + .long 1071646720 + .long 0 + .long 1071645696 + .long 0 + .long 1071644672 + .long 0 + .long 1101004800 + .long 1073741824 + .long 1095761920 + .long 256 + .long 1118830592 + .long 0 + .long 1017118720 + .long 1413754136 + .long 1073291771 + .long 856972295 + .long 1016178214 + .long 1413754136 + .long 1074340347 + .long 856972295 + .long 1017226790 + .long 0 + .long 1072693248 + .long 0 + .long 1071644672 + .long 0 + .long 0 + .long 1476395008 + .long 1069897045 + .long 1768958041 + .long 3189069141 + .long 805306368 + .long 1068708659 + .long 3580333578 + .long 1040816593 + .long 3067382784 + .long 1067899757 + .long 3397590151 + .long 1067392113 + .long 2939529726 + .long 1066854585 + .long 1423429166 + .long 1066517752 + .long 1775218934 + .long 1066178574 + .long 1185392460 + .long 1065859647 + .long 289998670 + .long 1065577550 + .long 3179807072 + .long 1065648121 + .long 3781007284 + .long 1061576176 + .long 2482106687 + .long 1067019199 + .long 763519713 + .long 3214591591 + .long 3695107454 + .long 1067530646 + .long 0 + .long 1073741824 + .long 1124791109 + .long 1006764147 + .long 1476395008 + .long 1069897045 + .long 1953913876 + .long 3189069141 + .long 805306368 + .long 1067660083 + .long 165110192 + .long 1039768033 + .long 3067304082 + .long 1065802605 + .long 3404727379 + .long 1064246385 + .long 2737480376 + .long 1062660281 + .long 933797922 + .long 1061274873 + .long 1475716730 + .long 1059887095 + .long 1511619763 + .long 1058519827 + .long 556024211 + .long 1057187555 + .long 3482101045 + .long 1056217350 + .long 1174622859 + .long 1050762633 + .long 899668651 + .long 1055506366 + .long 1081094694 + .long 3202035365 + .long 2559814773 + .long 1053906576 + .long 0 + .long 3219128320 + .long 0 + .long 1071120384 + .long 0 + .long 3218341888 + .long 0 + .long 1070694400 + .long 0 + .long 3218046976 + .long 0 + .long 1070391296 + .long 0 + .long 3217739776 + .type _vmldACosHATab,@object + .size _vmldACosHATab,4520 + .space 88, 0x00 + .align 16 + +.FLT_199: + .long 0x00000000,0x80000000,0x00000000,0x00000000 + .type .FLT_199,@object + .size .FLT_199,16 diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core-sse.S b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core-sse.S new file mode 100644 index 0000000000..583ef54fee --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core-sse.S @@ -0,0 +1,20 @@ +/* SSE version of vectorized acosf, vector length is 8. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#define _ZGVdN8v_acosf _ZGVdN8v_acosf_sse_wrapper +#include "../svml_s_acosf8_core.S" diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core.c b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core.c new file mode 100644 index 0000000000..dd360a9479 --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core.c @@ -0,0 +1,28 @@ +/* Multiple versions of vectorized acosf, vector length is 8. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#define SYMBOL_NAME _ZGVdN8v_acosf +#include "ifunc-mathvec-avx2.h" + +libc_ifunc_redirected (REDIRECT_NAME, SYMBOL_NAME, IFUNC_SELECTOR ()); + +#ifdef SHARED +__hidden_ver1 (_ZGVdN8v_acosf, __GI__ZGVdN8v_acosf, + __redirect__ZGVdN8v_acosf) + __attribute__ ((visibility ("hidden"))); +#endif diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core_avx2.S b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core_avx2.S new file mode 100644 index 0000000000..9e2fcfa0c1 --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_acosf8_core_avx2.S @@ -0,0 +1,2619 @@ +/* Function acosf vectorized with AVX2. + Copyright (C) 2021 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 + https://www.gnu.org/licenses/. */ + +/* + * ALGORITHM DESCRIPTION: + * + * SelMask = (|x| >= 0.5) ? 1 : 0; + * R = SelMask ? sqrt(0.5 - 0.5*|x|) : |x| + * acos(|x|) = SelMask ? 2*Poly(R) : (Pi/2 - Poly(R)) + * acos(x) = sign(x) ? (Pi - acos(|x|)) : acos(|x|) + * + * + */ + +#include <sysdep.h> + + .text +ENTRY(_ZGVdN8v_acosf_avx2) + pushq %rbp + cfi_def_cfa_offset(16) + movq %rsp, %rbp + cfi_def_cfa(6, 16) + cfi_offset(6, -16) + andq $-64, %rsp + subq $384, %rsp + +/* + * 2*sqrt(X) ~ Sh - Sl (to 24+ bits) + * SQ ~ 2*sqrt(X) + */ + vmovups __svml_sacos_data_internal(%rip), %ymm6 + vmovups 64+__svml_sacos_data_internal(%rip), %ymm7 + vmovups %ymm8, 256(%rsp) + vmovups %ymm15, 320(%rsp) + vmovups %ymm9, 32(%rsp) + .cfi_escape 0x10, 0xdb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xdc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xe2, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x22 + vmovups 640+__svml_sacos_data_internal(%rip), %ymm15 + vmovups %ymm10, 96(%rsp) + vmovups %ymm11, 160(%rsp) + vmovups %ymm14, 288(%rsp) + vmovups %ymm13, 224(%rsp) + vmovups %ymm12, 192(%rsp) + vmovaps %ymm0, %ymm5 + +/* x = -|arg| */ + vorps %ymm5, %ymm6, %ymm4 + +/* Y = 0.5 + 0.5*(-x) */ + vfmadd231ps %ymm4, %ymm7, %ymm7 + +/* x^2 */ + vmulps %ymm4, %ymm4, %ymm1 + vcmpnge_uqps 256+__svml_sacos_data_internal(%rip), %ymm4, %ymm0 + .cfi_escape 0x10, 0xdd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe0, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xde, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xdf, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xe0, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xe1, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xff, 0xff, 0xff, 0x22 + +/* SQ ~ 2*sqrt(Y) */ + vaddps %ymm7, %ymm7, %ymm11 + vminps %ymm7, %ymm1, %ymm2 + vrsqrtps %ymm7, %ymm8 + vfmadd213ps 672+__svml_sacos_data_internal(%rip), %ymm2, %ymm15 + vmulps %ymm2, %ymm2, %ymm14 + vcmpnlt_uqps %ymm7, %ymm2, %ymm1 + vandps %ymm5, %ymm6, %ymm3 + vcmplt_oqps 192+__svml_sacos_data_internal(%rip), %ymm7, %ymm6 + vandnps %ymm8, %ymm6, %ymm9 + +/* polynomial */ + vmovups 576+__svml_sacos_data_internal(%rip), %ymm6 + vmulps %ymm9, %ymm9, %ymm10 + vmulps %ymm11, %ymm9, %ymm13 + vfmadd213ps 608+__svml_sacos_data_internal(%rip), %ymm2, %ymm6 + vfmsub213ps 448+__svml_sacos_data_internal(%rip), %ymm10, %ymm11 + vfmadd213ps %ymm15, %ymm14, %ymm6 + vmulps %ymm11, %ymm13, %ymm12 + vfmadd213ps 704+__svml_sacos_data_internal(%rip), %ymm2, %ymm6 + vmovmskps %ymm0, %edx + vmovups 512+__svml_sacos_data_internal(%rip), %ymm0 + vmulps %ymm6, %ymm2, %ymm9 + +/* X<X^2 iff X<0 */ + vcmplt_oqps %ymm2, %ymm5, %ymm6 + vfmadd213ps 544+__svml_sacos_data_internal(%rip), %ymm11, %ymm0 + vfnmadd213ps %ymm13, %ymm12, %ymm0 + vblendvps %ymm1, %ymm0, %ymm4, %ymm4 + vxorps %ymm3, %ymm4, %ymm3 + vandps 896+__svml_sacos_data_internal(%rip), %ymm1, %ymm2 + vfmadd213ps %ymm3, %ymm3, %ymm9 + vandps %ymm6, %ymm2, %ymm2 + vandnps 768+__svml_sacos_data_internal(%rip), %ymm1, %ymm7 + vaddps %ymm7, %ymm2, %ymm8 + vaddps %ymm9, %ymm8, %ymm0 + testl %edx, %edx + jne .LBL_1_3 + +.LBL_1_2: + vmovups 256(%rsp), %ymm8 + cfi_restore(91) + vmovups 32(%rsp), %ymm9 + cfi_restore(92) + vmovups 96(%rsp), %ymm10 + cfi_restore(93) + vmovups 160(%rsp), %ymm11 + cfi_restore(94) + vmovups 192(%rsp), %ymm12 + cfi_restore(95) + vmovups 224(%rsp), %ymm13 + cfi_restore(96) + vmovups 288(%rsp), %ymm14 + cfi_restore(97) + vmovups 320(%rsp), %ymm15 + cfi_restore(98) + movq %rbp, %rsp + popq %rbp + cfi_def_cfa(7, 8) + cfi_restore(6) + ret + cfi_def_cfa(6, 16) + cfi_offset(6, -16) + .cfi_escape 0x10, 0xdb, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xdc, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xdd, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xe0, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xde, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x20, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xdf, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xe0, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x60, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xe1, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xa0, 0xff, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0xe2, 0x00, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x22 + +.LBL_1_3: + vmovups %ymm5, 64(%rsp) + vmovups %ymm0, 128(%rsp) + je .LBL_1_2 + xorl %eax, %eax + vzeroupper + movq %rsi, 8(%rsp) + movq %rdi, (%rsp) + movq %r12, 24(%rsp) + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x88, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x98, 0xfe, 0xff, 0xff, 0x22 + movl %eax, %r12d + movq %r13, 16(%rsp) + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x90, 0xfe, 0xff, 0xff, 0x22 + movl %edx, %r13d + +.LBL_1_7: + btl %r12d, %r13d + jc .LBL_1_10 + +.LBL_1_8: + incl %r12d + cmpl $8, %r12d + jl .LBL_1_7 + movq 8(%rsp), %rsi + cfi_restore(4) + movq (%rsp), %rdi + cfi_restore(5) + movq 24(%rsp), %r12 + cfi_restore(12) + movq 16(%rsp), %r13 + cfi_restore(13) + vmovups 128(%rsp), %ymm0 + jmp .LBL_1_2 + .cfi_escape 0x10, 0x04, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x88, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x05, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x80, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x98, 0xfe, 0xff, 0xff, 0x22 + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x90, 0xfe, 0xff, 0xff, 0x22 + +.LBL_1_10: + lea 64(%rsp,%r12,4), %rdi + lea 128(%rsp,%r12,4), %rsi + call __svml_sacos_cout_rare_internal + jmp .LBL_1_8 + +END(_ZGVdN8v_acosf_avx2) + + .align 16,0x90 + +__svml_sacos_cout_rare_internal: + + cfi_startproc + + xorl %eax, %eax + movzwl 2(%rdi), %edx + andl $32640, %edx + movss (%rdi), %xmm1 + cmpl $32640, %edx + je .LBL_2_20 + cvtss2sd %xmm1, %xmm1 + movsd %xmm1, -32(%rsp) + andb $127, -25(%rsp) + movsd -32(%rsp), %xmm12 + movsd 4168+_vmldACosHATab(%rip), %xmm0 + comisd %xmm12, %xmm0 + jbe .LBL_2_14 + movsd 4176+_vmldACosHATab(%rip), %xmm1 + comisd %xmm12, %xmm1 + jbe .LBL_2_10 + comisd 4128+_vmldACosHATab(%rip), %xmm12 + jbe .LBL_2_9 + movsd 4104+_vmldACosHATab(%rip), %xmm6 + movaps %xmm12, %xmm8 + mulsd %xmm12, %xmm6 + movaps %xmm12, %xmm7 + movsd %xmm6, -40(%rsp) + movsd -40(%rsp), %xmm13 + movsd 4104+_vmldACosHATab(%rip), %xmm5 + subsd -32(%rsp), %xmm13 + movsd %xmm13, -48(%rsp) + movsd -40(%rsp), %xmm15 + movsd -48(%rsp), %xmm14 + subsd %xmm14, %xmm15 + movaps %xmm12, %xmm14 + movsd %xmm15, -40(%rsp) + movsd -40(%rsp), %xmm6 + subsd %xmm6, %xmm8 + movsd %xmm8, -48(%rsp) + movsd -40(%rsp), %xmm9 + movaps %xmm9, %xmm4 + addsd %xmm9, %xmm7 + mulsd %xmm9, %xmm4 + movsd -48(%rsp), %xmm10 + movaps %xmm4, %xmm11 + mulsd %xmm10, %xmm7 + mulsd %xmm4, %xmm5 + addsd %xmm7, %xmm11 + movsd 4312+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movsd %xmm5, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4104+_vmldACosHATab(%rip), %xmm5 + subsd %xmm4, %xmm1 + addsd 4304+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movsd %xmm1, -48(%rsp) + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + addsd 4296+_vmldACosHATab(%rip), %xmm8 + subsd %xmm2, %xmm0 + mulsd %xmm11, %xmm8 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm3 + addsd 4288+_vmldACosHATab(%rip), %xmm8 + subsd %xmm3, %xmm4 + mulsd %xmm11, %xmm8 + movsd %xmm4, -48(%rsp) + movsd -40(%rsp), %xmm6 + mulsd %xmm6, %xmm9 + addsd 4280+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm6, %xmm10 + mulsd %xmm11, %xmm8 + mulsd %xmm9, %xmm5 + addsd 4272+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm11, %xmm8 + movaps %xmm9, %xmm0 + movsd -48(%rsp), %xmm13 + movaps %xmm6, %xmm4 + movsd %xmm5, -40(%rsp) + addsd %xmm13, %xmm7 + addsd 4264+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm7, %xmm14 + mulsd %xmm11, %xmm8 + addsd %xmm14, %xmm10 + addsd 4256+_vmldACosHATab(%rip), %xmm8 + movsd -40(%rsp), %xmm1 + mulsd %xmm11, %xmm8 + subsd %xmm9, %xmm1 + addsd %xmm10, %xmm9 + addsd 4248+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm9, %xmm7 + mulsd %xmm11, %xmm8 + movsd %xmm1, -48(%rsp) + movsd -40(%rsp), %xmm2 + movsd -48(%rsp), %xmm15 + subsd %xmm15, %xmm2 + addsd 4240+_vmldACosHATab(%rip), %xmm8 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm5 + mulsd %xmm11, %xmm8 + subsd %xmm5, %xmm0 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm3 + movsd -48(%rsp), %xmm5 + movaps %xmm5, %xmm13 + addsd 4232+_vmldACosHATab(%rip), %xmm8 + mulsd %xmm3, %xmm4 + addsd %xmm10, %xmm13 + mulsd %xmm11, %xmm8 + mulsd %xmm13, %xmm6 + addsd 4224+_vmldACosHATab(%rip), %xmm8 + addsd %xmm7, %xmm6 + mulsd %xmm11, %xmm8 + movsd 4104+_vmldACosHATab(%rip), %xmm7 + movaps %xmm4, %xmm13 + mulsd %xmm4, %xmm7 + addsd 4216+_vmldACosHATab(%rip), %xmm8 + movsd %xmm7, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4200+_vmldACosHATab(%rip), %xmm11 + subsd %xmm4, %xmm1 + mulsd %xmm9, %xmm11 + addsd %xmm6, %xmm4 + movsd %xmm1, -48(%rsp) + movaps %xmm12, %xmm9 + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + movsd 4192+_vmldACosHATab(%rip), %xmm1 + subsd %xmm2, %xmm0 + mulsd %xmm1, %xmm3 + mulsd %xmm1, %xmm10 + mulsd %xmm4, %xmm8 + addsd %xmm3, %xmm9 + mulsd %xmm1, %xmm5 + addsd %xmm10, %xmm11 + movsd %xmm0, -40(%rsp) + pxor %xmm1, %xmm1 + movsd -40(%rsp), %xmm7 + addsd %xmm11, %xmm8 + subsd %xmm7, %xmm13 + addsd %xmm5, %xmm8 + movsd %xmm13, -48(%rsp) + movsd -40(%rsp), %xmm0 + movsd -48(%rsp), %xmm2 + movsd %xmm9, -40(%rsp) + addsd %xmm2, %xmm6 + movsd -40(%rsp), %xmm10 + movsd %xmm3, -56(%rsp) + subsd %xmm10, %xmm12 + movsd 4208+_vmldACosHATab(%rip), %xmm4 + addsd %xmm12, %xmm3 + mulsd %xmm4, %xmm0 + mulsd %xmm4, %xmm6 + movsd %xmm3, -48(%rsp) + movsd -40(%rsp), %xmm3 + movaps %xmm3, %xmm12 + movsd -48(%rsp), %xmm7 + addsd %xmm0, %xmm12 + addsd %xmm7, %xmm8 + movsd %xmm12, -40(%rsp) + movsd -40(%rsp), %xmm12 + subsd %xmm12, %xmm3 + addsd %xmm3, %xmm0 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm3 + movsd -48(%rsp), %xmm0 + cvtss2sd (%rdi), %xmm1 + addsd %xmm8, %xmm0 + comisd 4184+_vmldACosHATab(%rip), %xmm1 + addsd %xmm0, %xmm6 + jbe .LBL_2_7 + movsd 4136+_vmldACosHATab(%rip), %xmm2 + movaps %xmm2, %xmm0 + subsd %xmm3, %xmm0 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4144+_vmldACosHATab(%rip), %xmm0 + subsd %xmm1, %xmm2 + subsd %xmm6, %xmm0 + subsd %xmm3, %xmm2 + movsd %xmm2, -48(%rsp) + movsd -40(%rsp), %xmm1 + movsd -48(%rsp), %xmm3 + addsd %xmm3, %xmm0 + jmp .LBL_2_8 + +.LBL_2_7: + movsd 4136+_vmldACosHATab(%rip), %xmm2 + movaps %xmm3, %xmm0 + addsd %xmm2, %xmm0 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + subsd %xmm1, %xmm2 + addsd %xmm2, %xmm3 + movsd %xmm3, -48(%rsp) + movsd 4144+_vmldACosHATab(%rip), %xmm3 + movsd -40(%rsp), %xmm1 + addsd %xmm3, %xmm6 + movsd -48(%rsp), %xmm0 + addsd %xmm6, %xmm0 + +.LBL_2_8: + addsd %xmm0, %xmm1 + cvtsd2ss %xmm1, %xmm1 + movss %xmm1, (%rsi) + ret + +.LBL_2_9: + movsd 4144+_vmldACosHATab(%rip), %xmm1 + addsd %xmm0, %xmm12 + movsd %xmm12, -40(%rsp) + movsd -40(%rsp), %xmm0 + mulsd -32(%rsp), %xmm0 + movsd %xmm0, -56(%rsp) + movb -49(%rsp), %dl + movb 3(%rdi), %dil + andb $127, %dl + andb $-128, %dil + orb %dil, %dl + movb %dl, -49(%rsp) + subsd -56(%rsp), %xmm1 + addsd 4136+_vmldACosHATab(%rip), %xmm1 + cvtsd2ss %xmm1, %xmm1 + movss %xmm1, (%rsi) + ret + +.LBL_2_10: + movaps %xmm0, %xmm8 + movzwl 4174+_vmldACosHATab(%rip), %r9d + pxor %xmm13, %xmm13 + andl $-32753, %r9d + subsd %xmm12, %xmm8 + subsd %xmm0, %xmm13 + mulsd %xmm8, %xmm1 + movsd %xmm1, -56(%rsp) + movzwl -50(%rsp), %ecx + andl $32752, %ecx + shrl $4, %ecx + addl $-1023, %ecx + movl %ecx, %r8d + movl %ecx, %edx + negl %r8d + addl $1023, %r8d + andl $2047, %r8d + shll $4, %r8d + movsd %xmm0, -32(%rsp) + orl %r8d, %r9d + movw %r9w, -26(%rsp) + andl $1, %edx + movsd -32(%rsp), %xmm4 + lea _vmldACosHATab(%rip), %r8 + mulsd %xmm4, %xmm1 + movl %edx, %r10d + movaps %xmm1, %xmm15 + movsd 4112+_vmldACosHATab(%rip), %xmm6 + addsd %xmm1, %xmm15 + jne .LBL_73 + movaps %xmm1, %xmm15 + +.LBL_73: + mulsd %xmm15, %xmm6 + movaps %xmm15, %xmm7 + movaps %xmm6, %xmm9 + subl %edx, %ecx + movsd 4120+_vmldACosHATab(%rip), %xmm11 + subsd %xmm15, %xmm9 + addsd %xmm1, %xmm11 + movsd %xmm9, -48(%rsp) + movsd -48(%rsp), %xmm10 + movsd %xmm11, -24(%rsp) + subsd %xmm10, %xmm6 + movl -24(%rsp), %r11d + movaps %xmm6, %xmm14 + shll $8, %r10d + andl $511, %r11d + addl %r10d, %r11d + subsd %xmm6, %xmm7 + movsd (%r8,%r11,8), %xmm5 + addsd %xmm7, %xmm14 + mulsd %xmm5, %xmm6 + movaps %xmm5, %xmm12 + mulsd %xmm5, %xmm12 + mulsd %xmm12, %xmm14 + movsd 4512+_vmldACosHATab(%rip), %xmm4 + addsd %xmm13, %xmm14 + mulsd %xmm14, %xmm4 + shrl $1, %ecx + addsd 4504+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + addl $1023, %ecx + andl $2047, %ecx + addsd 4496+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movzwl 4174+_vmldACosHATab(%rip), %r9d + shll $4, %ecx + andl $-32753, %r9d + movsd %xmm0, -16(%rsp) + orl %ecx, %r9d + movw %r9w, -10(%rsp) + movsd -16(%rsp), %xmm9 + mulsd %xmm9, %xmm6 + addsd 4488+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movsd 4104+_vmldACosHATab(%rip), %xmm3 + mulsd %xmm6, %xmm3 + addsd 4480+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + movsd %xmm3, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd 4352+_vmldACosHATab(%rip), %xmm11 + subsd %xmm6, %xmm1 + addsd 4472+_vmldACosHATab(%rip), %xmm4 + addsd 4360+_vmldACosHATab(%rip), %xmm11 + mulsd %xmm14, %xmm4 + mulsd %xmm8, %xmm11 + addsd 4464+_vmldACosHATab(%rip), %xmm4 + mulsd %xmm14, %xmm4 + mulsd %xmm15, %xmm4 + movsd %xmm1, -48(%rsp) + addsd %xmm4, %xmm7 + mulsd %xmm5, %xmm7 + movsd 4456+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + mulsd %xmm9, %xmm7 + addsd 4448+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm2 + movsd -48(%rsp), %xmm0 + movsd 4104+_vmldACosHATab(%rip), %xmm4 + subsd %xmm0, %xmm2 + mulsd %xmm8, %xmm4 + addsd 4440+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movaps %xmm8, %xmm0 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm14 + movsd 4104+_vmldACosHATab(%rip), %xmm2 + subsd %xmm14, %xmm6 + addsd 4432+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd %xmm6, -48(%rsp) + movsd -40(%rsp), %xmm6 + movsd -48(%rsp), %xmm10 + movsd %xmm4, -40(%rsp) + addsd %xmm10, %xmm7 + addsd 4424+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm3 + movsd 4336+_vmldACosHATab(%rip), %xmm12 + subsd %xmm8, %xmm3 + addsd 4416+_vmldACosHATab(%rip), %xmm5 + addsd 4344+_vmldACosHATab(%rip), %xmm12 + mulsd %xmm8, %xmm5 + addsd %xmm11, %xmm12 + addsd 4408+_vmldACosHATab(%rip), %xmm5 + mulsd %xmm8, %xmm12 + mulsd %xmm8, %xmm5 + movsd %xmm3, -48(%rsp) + movsd -40(%rsp), %xmm1 + movsd -48(%rsp), %xmm15 + movsd 4320+_vmldACosHATab(%rip), %xmm13 + subsd %xmm15, %xmm1 + addsd 4400+_vmldACosHATab(%rip), %xmm5 + addsd 4328+_vmldACosHATab(%rip), %xmm13 + mulsd %xmm8, %xmm5 + addsd %xmm12, %xmm13 + addsd 4392+_vmldACosHATab(%rip), %xmm5 + movsd %xmm1, -40(%rsp) + mulsd %xmm8, %xmm5 + movsd -40(%rsp), %xmm4 + subsd %xmm4, %xmm0 + addsd 4384+_vmldACosHATab(%rip), %xmm5 + movsd %xmm0, -48(%rsp) + movsd -40(%rsp), %xmm4 + movaps %xmm4, %xmm14 + mulsd %xmm4, %xmm14 + mulsd %xmm8, %xmm5 + mulsd %xmm14, %xmm2 + addsd 4376+_vmldACosHATab(%rip), %xmm5 + movsd -48(%rsp), %xmm3 + movsd %xmm2, -40(%rsp) + movsd -40(%rsp), %xmm9 + mulsd %xmm8, %xmm5 + subsd %xmm14, %xmm9 + movsd %xmm9, -48(%rsp) + movsd -40(%rsp), %xmm11 + movsd -48(%rsp), %xmm10 + movsd 4336+_vmldACosHATab(%rip), %xmm0 + subsd %xmm10, %xmm11 + mulsd %xmm4, %xmm0 + addsd 4368+_vmldACosHATab(%rip), %xmm5 + addsd %xmm8, %xmm4 + mulsd %xmm8, %xmm5 + mulsd %xmm3, %xmm4 + mulsd %xmm8, %xmm5 + movsd %xmm11, -40(%rsp) + movaps %xmm0, %xmm1 + movsd -40(%rsp), %xmm12 + mulsd %xmm8, %xmm5 + subsd %xmm12, %xmm14 + movsd %xmm14, -48(%rsp) + addsd %xmm5, %xmm13 + movsd -40(%rsp), %xmm9 + mulsd 4352+_vmldACosHATab(%rip), %xmm9 + mulsd %xmm13, %xmm7 + addsd %xmm9, %xmm1 + movsd -48(%rsp), %xmm2 + movsd %xmm1, -40(%rsp) + addsd %xmm2, %xmm4 + movsd -40(%rsp), %xmm13 + movsd %xmm9, -24(%rsp) + subsd %xmm13, %xmm0 + mulsd 4352+_vmldACosHATab(%rip), %xmm4 + addsd %xmm0, %xmm9 + movsd %xmm9, -48(%rsp) + movsd -40(%rsp), %xmm12 + movsd 4320+_vmldACosHATab(%rip), %xmm10 + movsd -48(%rsp), %xmm1 + addsd %xmm12, %xmm10 + movsd %xmm10, -40(%rsp) + movsd -40(%rsp), %xmm15 + movsd 4320+_vmldACosHATab(%rip), %xmm11 + movsd 4104+_vmldACosHATab(%rip), %xmm9 + subsd %xmm15, %xmm11 + movsd 4336+_vmldACosHATab(%rip), %xmm2 + addsd %xmm11, %xmm12 + mulsd %xmm3, %xmm2 + movsd %xmm12, -48(%rsp) + movsd -40(%rsp), %xmm15 + mulsd %xmm15, %xmm9 + movsd -48(%rsp), %xmm0 + movsd %xmm9, -40(%rsp) + movsd -40(%rsp), %xmm10 + movsd 4360+_vmldACosHATab(%rip), %xmm3 + subsd %xmm15, %xmm10 + mulsd %xmm8, %xmm3 + movsd %xmm10, -48(%rsp) + movsd -40(%rsp), %xmm11 + movsd -48(%rsp), %xmm13 + subsd %xmm13, %xmm11 + addsd 4344+_vmldACosHATab(%rip), %xmm3 + movsd %xmm11, -40(%rsp) + movsd -40(%rsp), %xmm14 + mulsd %xmm8, %xmm3 + subsd %xmm14, %xmm15 + movsd %xmm15, -48(%rsp) + movsd -40(%rsp), %xmm10 + movsd -48(%rsp), %xmm9 + addsd %xmm9, %xmm4 + addsd 4328+_vmldACosHATab(%rip), %xmm3 + addsd %xmm2, %xmm4 + addsd %xmm5, %xmm3 + addsd %xmm1, %xmm4 + addsd %xmm0, %xmm4 + addsd %xmm3, %xmm4 + mulsd %xmm6, %xmm4 + mulsd %xmm10, %xmm6 + addsd %xmm7, %xmm4 + pxor %xmm7, %xmm7 + cvtss2sd (%rdi), %xmm7 + comisd 4184+_vmldACosHATab(%rip), %xmm7 + ja .LBL_2_13 + movsd 4152+_vmldACosHATab(%rip), %xmm2 + movaps %xmm2, %xmm0 + movsd 4160+_vmldACosHATab(%rip), %xmm5 + subsd %xmm6, %xmm0 + subsd %xmm4, %xmm5 + movsd %xmm0, -40(%rsp) + movsd -40(%rsp), %xmm1 + movsd %xmm6, -56(%rsp) + subsd %xmm1, %xmm2 + subsd %xmm6, %xmm2 + movsd %xmm2, -48(%rsp) + movsd -40(%rsp), %xmm6 + movsd -48(%rsp), %xmm3 + movaps %xmm3, %xmm4 + addsd %xmm5, %xmm4 + +.LBL_2_13: + addsd %xmm4, %xmm6 + cvtsd2ss %xmm6, %xmm6 + movss %xmm6, (%rsi) + ret + +.LBL_2_14: + ucomisd %xmm0, %xmm1 + jp .LBL_2_15 + je .LBL_2_19 + +.LBL_2_15: + xorps .FLT_199(%rip), %xmm0 + ucomisd %xmm0, %xmm1 + jp .LBL_2_16 + je .LBL_2_18 + +.LBL_2_16: + movl $1, %eax + pxor %xmm1, %xmm1 + pxor %xmm0, %xmm0 + divss %xmm0, %xmm1 + movss %xmm1, (%rsi) + ret + +.LBL_2_18: + movsd 4152+_vmldACosHATab(%rip), %xmm0 + addsd 4160+_vmldACosHATab(%rip), %xmm0 + cvtsd2ss %xmm0, %xmm0 + movss %xmm0, (%rsi) + ret + +.LBL_2_19: + movsd 4184+_vmldACosHATab(%rip), %xmm0 + cvtsd2ss %xmm0, %xmm0 + movss %xmm0, (%rsi) + ret + +.LBL_2_20: + divss %xmm1, %xmm1 + testl $8388607, (%rdi) + movss %xmm1, (%rsi) + sete %al + ret + + cfi_endproc + + .type __svml_sacos_cout_rare_internal,@function + .size __svml_sacos_cout_rare_internal,.-__svml_sacos_cout_rare_internal + + .section .rodata, "a" + .align 64 + +__svml_sacos_data_internal: + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .long 1056964608 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .long 4294963200 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .long 796917760 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .long 3212836864 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .long 4294959104 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .long 4294965248 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .long 1073741824 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 3183476740 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1048576001 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1026481159 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1019423339 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1027250868 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1033468946 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .long 1042983679 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .long 1070141403 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .long 3007036718 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .long 1078530011 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .long 3015425326 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .long 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .long 2147483648 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .long 4290772992 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1036306094 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 1042839218 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .long 939876771 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .byte 0 + .type __svml_sacos_data_internal,@object + .size __svml_sacos_data_internal,1344 + .align 32 + +_vmldACosHATab: + .long 0 + .long 1072693248 + .long 0 + .long 1072689152 + .long 0 + .long 1072685056 + .long 0 + .long 1072680960 + .long 0 + .long 1072676864 + .long 0 + .long 1072672768 + .long 0 + .long 1072668672 + .long 0 + .long 1072665600 + .long 0 + .long 1072661504 + .long 0 + .long 1072657408 + .long 0 + .long 1072653312 + .long 0 + .long 1072649216 + .long 0 + .long 1072646144 + .long 0 + .long 1072642048 + .long 0 + .long 1072637952 + .long 0 + .long 1072634880 + .long 0 + .long 1072630784 + .long 0 + .long 1072626688 + .long 0 + .long 1072623616 + .long 0 + .long 1072619520 + .long 0 + .long 1072615424 + .long 0 + .long 1072612352 + .long 0 + .long 1072608256 + .long 0 + .long 1072605184 + .long 0 + .long 1072601088 + .long 0 + .long 1072598016 + .long 0 + .long 1072593920 + .long 0 + .long 1072590848 + .long 0 + .long 1072586752 + .long 0 + .long 1072583680 + .long 0 + .long 1072580608 + .long 0 + .long 1072576512 + .long 0 + .long 1072573440 + .long 0 + .long 1072570368 + .long 0 + .long 1072566272 + .long 0 + .long 1072563200 + .long 0 + .long 1072560128 + .long 0 + .long 1072556032 + .long 0 + .long 1072552960 + .long 0 + .long 1072549888 + .long 0 + .long 1072546816 + .long 0 + .long 1072542720 + .long 0 + .long 1072539648 + .long 0 + .long 1072536576 + .long 0 + .long 1072533504 + .long 0 + .long 1072530432 + .long 0 + .long 1072527360 + .long 0 + .long 1072523264 + .long 0 + .long 1072520192 + .long 0 + .long 1072517120 + .long 0 + .long 1072514048 + .long 0 + .long 1072510976 + .long 0 + .long 1072507904 + .long 0 + .long 1072504832 + .long 0 + .long 1072501760 + .long 0 + .long 1072498688 + .long 0 + .long 1072495616 + .long 0 + .long 1072492544 + .long 0 + .long 1072489472 + .long 0 + .long 1072486400 + .long 0 + .long 1072483328 + .long 0 + .long 1072480256 + .long 0 + .long 1072478208 + .long 0 + .long 1072475136 + .long 0 + .long 1072472064 + .long 0 + .long 1072468992 + .long 0 + .long 1072465920 + .long 0 + .long 1072462848 + .long 0 + .long 1072459776 + .long 0 + .long 1072457728 + .long 0 + .long 1072454656 + .long 0 + .long 1072451584 + .long 0 + .long 1072448512 + .long 0 + .long 1072446464 + .long 0 + .long 1072443392 + .long 0 + .long 1072440320 + .long 0 + .long 1072437248 + .long 0 + .long 1072435200 + .long 0 + .long 1072432128 + .long 0 + .long 1072429056 + .long 0 + .long 1072427008 + .long 0 + .long 1072423936 + .long 0 + .long 1072420864 + .long 0 + .long 1072418816 + .long 0 + .long 1072415744 + .long 0 + .long 1072412672 + .long 0 + .long 1072410624 + .long 0 + .long 1072407552 + .long 0 + .long 1072405504 + .long 0 + .long 1072402432 + .long 0 + .long 1072400384 + .long 0 + .long 1072397312 + .long 0 + .long 1072395264 + .long 0 + .long 1072392192 + .long 0 + .long 1072390144 + .long 0 + .long 1072387072 + .long 0 + .long 1072385024 + .long 0 + .long 1072381952 + .long 0 + .long 1072379904 + .long 0 + .long 1072376832 + .long 0 + .long 1072374784 + .long 0 + .long 1072371712 + .long 0 + .long 1072369664 + .long 0 + .long 1072366592 + .long 0 + .long 1072364544 + .long 0 + .long 1072362496 + .long 0 + .long 1072359424 + .long 0 + .long 1072357376 + .long 0 + .long 1072355328 + .long 0 + .long 1072352256 + .long 0 + .long 1072350208 + .long 0 + .long 1072347136 + .long 0 + .long 1072345088 + .long 0 + .long 1072343040 + .long 0 + .long 1072340992 + .long 0 + .long 1072337920 + .long 0 + .long 1072335872 + .long 0 + .long 1072333824 + .long 0 + .long 1072330752 + .long 0 + .long 1072328704 + .long 0 + .long 1072326656 + .long 0 + .long 1072324608 + .long 0 + .long 1072321536 + .long 0 + .long 1072319488 + .long 0 + .long 1072317440 + .long 0 + .long 1072315392 + .long 0 + .long 1072313344 + .long 0 + .long 1072310272 + .long 0 + .long 1072308224 + .long 0 + .long 1072306176 + .long 0 + .long 1072304128 + .long 0 + .long 1072302080 + .long 0 + .long 1072300032 + .long 0 + .long 1072296960 + .long 0 + .long 1072294912 + .long 0 + .long 1072292864 + .long 0 + .long 1072290816 + .long 0 + .long 1072288768 + .long 0 + .long 1072286720 + .long 0 + .long 1072284672 + .long 0 + .long 1072282624 + .long 0 + .long 1072280576 + .long 0 + .long 1072278528 + .long 0 + .long 1072275456 + .long 0 + .long 1072273408 + .long 0 + .long 1072271360 + .long 0 + .long 1072269312 + .long 0 + .long 1072267264 + .long 0 + .long 1072265216 + .long 0 + .long 1072263168 + .long 0 + .long 1072261120 + .long 0 + .long 1072259072 + .long 0 + .long 1072257024 + .long 0 + .long 1072254976 + .long 0 + .long 1072252928 + .long 0 + .long 1072250880 + .long 0 + .long 1072248832 + .long 0 + .long 1072246784 + .long 0 + .long 1072244736 + .long 0 + .long 1072243712 + .long 0 + .long 1072241664 + .long 0 + .long 1072239616 + .long 0 + .long 1072237568 + .long 0 + .long 1072235520 + .long 0 + .long 1072233472 + .long 0 + .long 1072231424 + .long 0 + .long 1072229376 + .long 0 + .long 1072227328 + .long 0 + .long 1072225280 + .long 0 + .long 1072223232 + .long 0 + .long 1072222208 + .long 0 + .long 1072220160 + .long 0 + .long 1072218112 + .long 0 + .long 1072216064 + .long 0 + .long 1072214016 + .long 0 + .long 1072211968 + .long 0 + .long 1072210944 + .long 0 + .long 1072208896 + .long 0 + .long 1072206848 + .long 0 + .long 1072204800 + .long 0 + .long 1072202752 + .long 0 + .long 1072201728 + .long 0 + .long 1072199680 + .long 0 + .long 1072197632 + .long 0 + .long 1072195584 + .long 0 + .long 1072193536 + .long 0 + .long 1072192512 + .long 0 + .long 1072190464 + .long 0 + .long 1072188416 + .long 0 + .long 1072186368 + .long 0 + .long 1072185344 + .long 0 + .long 1072183296 + .long 0 + .long 1072181248 + .long 0 + .long 1072179200 + .long 0 + .long 1072178176 + .long 0 + .long 1072176128 + .long 0 + .long 1072174080 + .long 0 + .long 1072173056 + .long 0 + .long 1072171008 + .long 0 + .long 1072168960 + .long 0 + .long 1072167936 + .long 0 + .long 1072165888 + .long 0 + .long 1072163840 + .long 0 + .long 1072161792 + .long 0 + .long 1072160768 + .long 0 + .long 1072158720 + .long 0 + .long 1072157696 + .long 0 + .long 1072155648 + .long 0 + .long 1072153600 + .long 0 + .long 1072152576 + .long 0 + .long 1072150528 + .long 0 + .long 1072148480 + .long 0 + .long 1072147456 + .long 0 + .long 1072145408 + .long 0 + .long 1072143360 + .long 0 + .long 1072142336 + .long 0 + .long 1072140288 + .long 0 + .long 1072139264 + .long 0 + .long 1072137216 + .long 0 + .long 1072135168 + .long 0 + .long 1072134144 + .long 0 + .long 1072132096 + .long 0 + .long 1072131072 + .long 0 + .long 1072129024 + .long 0 + .long 1072128000 + .long 0 + .long 1072125952 + .long 0 + .long 1072124928 + .long 0 + .long 1072122880 + .long 0 + .long 1072120832 + .long 0 + .long 1072119808 + .long 0 + .long 1072117760 + .long 0 + .long 1072116736 + .long 0 + .long 1072114688 + .long 0 + .long 1072113664 + .long 0 + .long 1072111616 + .long 0 + .long 1072110592 + .long 0 + .long 1072108544 + .long 0 + .long 1072107520 + .long 0 + .long 1072105472 + .long 0 + .long 1072104448 + .long 0 + .long 1072102400 + .long 0 + .long 1072101376 + .long 0 + .long 1072099328 + .long 0 + .long 1072098304 + .long 0 + .long 1072096256 + .long 0 + .long 1072095232 + .long 0 + .long 1072094208 + .long 0 + .long 1072092160 + .long 0 + .long 1072091136 + .long 0 + .long 1072089088 + .long 0 + .long 1072088064 + .long 0 + .long 1072086016 + .long 0 + .long 1072084992 + .long 0 + .long 1072082944 + .long 0 + .long 1072081920 + .long 0 + .long 1072080896 + .long 0 + .long 1072078848 + .long 0 + .long 1072075776 + .long 0 + .long 1072073728 + .long 0 + .long 1072070656 + .long 0 + .long 1072067584 + .long 0 + .long 1072064512 + .long 0 + .long 1072061440 + .long 0 + .long 1072059392 + .long 0 + .long 1072056320 + .long 0 + .long 1072053248 + .long 0 + .long 1072051200 + .long 0 + .long 1072048128 + .long 0 + .long 1072045056 + .long 0 + .long 1072043008 + .long 0 + .long 1072039936 + .long 0 + .long 1072037888 + .long 0 + .long 1072034816 + .long 0 + .long 1072031744 + .long 0 + .long 1072029696 + .long 0 + .long 1072026624 + .long 0 + .long 1072024576 + .long 0 + .long 1072021504 + .long 0 + .long 1072019456 + .long 0 + .long 1072016384 + .long 0 + .long 1072014336 + .long 0 + .long 1072011264 + .long 0 + .long 1072009216 + .long 0 + .long 1072006144 + .long 0 + .long 1072004096 + .long 0 + .long 1072002048 + .long 0 + .long 1071998976 + .long 0 + .long 1071996928 + .long 0 + .long 1071993856 + .long 0 + .long 1071991808 + .long 0 + .long 1071989760 + .long 0 + .long 1071986688 + .long 0 + .long 1071984640 + .long 0 + .long 1071982592 + .long 0 + .long 1071979520 + .long 0 + .long 1071977472 + .long 0 + .long 1071975424 + .long 0 + .long 1071972352 + .long 0 + .long 1071970304 + .long 0 + .long 1071968256 + .long 0 + .long 1071966208 + .long 0 + .long 1071964160 + .long 0 + .long 1071961088 + .long 0 + .long 1071959040 + .long 0 + .long 1071956992 + .long 0 + .long 1071954944 + .long 0 + .long 1071952896 + .long 0 + .long 1071949824 + .long 0 + .long 1071947776 + .long 0 + .long 1071945728 + .long 0 + .long 1071943680 + .long 0 + .long 1071941632 + .long 0 + .long 1071939584 + .long 0 + .long 1071937536 + .long 0 + .long 1071935488 + .long 0 + .long 1071933440 + .long 0 + .long 1071930368 + .long 0 + .long 1071928320 + .long 0 + .long 1071926272 + .long 0 + .long 1071924224 + .long 0 + .long 1071922176 + .long 0 + .long 1071920128 + .long 0 + .long 1071918080 + .long 0 + .long 1071916032 + .long 0 + .long 1071913984 + .long 0 + .long 1071911936 + .long 0 + .long 1071909888 + .long 0 + .long 1071907840 + .long 0 + .long 1071905792 + .long 0 + .long 1071903744 + .long 0 + .long 1071901696 + .long 0 + .long 1071900672 + .long 0 + .long 1071898624 + .long 0 + .long 1071896576 + .long 0 + .long 1071894528 + .long 0 + .long 1071892480 + .long 0 + .long 1071890432 + .long 0 + .long 1071888384 + .long 0 + .long 1071886336 + .long 0 + .long 1071884288 + .long 0 + .long 1071883264 + .long 0 + .long 1071881216 + .long 0 + .long 1071879168 + .long 0 + .long 1071877120 + .long 0 + .long 1071875072 + .long 0 + .long 1071873024 + .long 0 + .long 1071872000 + .long 0 + .long 1071869952 + .long 0 + .long 1071867904 + .long 0 + .long 1071865856 + .long 0 + .long 1071864832 + .long 0 + .long 1071862784 + .long 0 + .long 1071860736 + .long 0 + .long 1071858688 + .long 0 + .long 1071856640 + .long 0 + .long 1071855616 + .long 0 + .long 1071853568 + .long 0 + .long 1071851520 + .long 0 + .long 1071850496 + .long 0 + .long 1071848448 + .long 0 + .long 1071846400 + .long 0 + .long 1071844352 + .long 0 + .long 1071843328 + .long 0 + .long 1071841280 + .long 0 + .long 1071839232 + .long 0 + .long 1071838208 + .long 0 + .long 1071836160 + .long 0 + .long 1071834112 + .long 0 + .long 1071833088 + .long 0 + .long 1071831040 + .long 0 + .long 1071830016 + .long 0 + .long 1071827968 + .long 0 + .long 1071825920 + .long 0 + .long 1071824896 + .long 0 + .long 1071822848 + .long 0 + .long 1071821824 + .long 0 + .long 1071819776 + .long 0 + .long 1071817728 + .long 0 + .long 1071816704 + .long 0 + .long 1071814656 + .long 0 + .long 1071813632 + .long 0 + .long 1071811584 + .long 0 + .long 1071810560 + .long 0 + .long 1071808512 + .long 0 + .long 1071806464 + .long 0 + .long 1071805440 + .long 0 + .long 1071803392 + .long 0 + .long 1071802368 + .long 0 + .long 1071800320 + .long 0 + .long 1071799296 + .long 0 + .long 1071797248 + .long 0 + .long 1071796224 + .long 0 + .long 1071794176 + .long 0 + .long 1071793152 + .long 0 + .long 1071791104 + .long 0 + .long 1071790080 + .long 0 + .long 1071788032 + .long 0 + .long 1071787008 + .long 0 + .long 1071784960 + .long 0 + .long 1071783936 + .long 0 + .long 1071782912 + .long 0 + .long 1071780864 + .long 0 + .long 1071779840 + .long 0 + .long 1071777792 + .long 0 + .long 1071776768 + .long 0 + .long 1071774720 + .long 0 + .long 1071773696 + .long 0 + .long 1071772672 + .long 0 + .long 1071770624 + .long 0 + .long 1071769600 + .long 0 + .long 1071767552 + .long 0 + .long 1071766528 + .long 0 + .long 1071765504 + .long 0 + .long 1071763456 + .long 0 + .long 1071762432 + .long 0 + .long 1071760384 + .long 0 + .long 1071759360 + .long 0 + .long 1071758336 + .long 0 + .long 1071756288 + .long 0 + .long 1071755264 + .long 0 + .long 1071754240 + .long 0 + .long 1071752192 + .long 0 + .long 1071751168 + .long 0 + .long 1071750144 + .long 0 + .long 1071748096 + .long 0 + .long 1071747072 + .long 0 + .long 1071746048 + .long 0 + .long 1071744000 + .long 0 + .long 1071742976 + .long 0 + .long 1071741952 + .long 0 + .long 1071739904 + .long 0 + .long 1071738880 + .long 0 + .long 1071737856 + .long 0 + .long 1071736832 + .long 0 + .long 1071734784 + .long 0 + .long 1071733760 + .long 0 + .long 1071732736 + .long 0 + .long 1071730688 + .long 0 + .long 1071729664 + .long 0 + .long 1071728640 + .long 0 + .long 1071727616 + .long 0 + .long 1071725568 + .long 0 + .long 1071724544 + .long 0 + .long 1071723520 + .long 0 + .long 1071722496 + .long 0 + .long 1071720448 + .long 0 + .long 1071719424 + .long 0 + .long 1071718400 + .long 0 + .long 1071717376 + .long 0 + .long 1071715328 + .long 0 + .long 1071714304 + .long 0 + .long 1071713280 + .long 0 + .long 1071712256 + .long 0 + .long 1071711232 + .long 0 + .long 1071709184 + .long 0 + .long 1071708160 + .long 0 + .long 1071707136 + .long 0 + .long 1071706112 + .long 0 + .long 1071705088 + .long 0 + .long 1071704064 + .long 0 + .long 1071702016 + .long 0 + .long 1071700992 + .long 0 + .long 1071699968 + .long 0 + .long 1071698944 + .long 0 + .long 1071697920 + .long 0 + .long 1071696896 + .long 0 + .long 1071694848 + .long 0 + .long 1071693824 + .long 0 + .long 1071692800 + .long 0 + .long 1071691776 + .long 0 + .long 1071690752 + .long 0 + .long 1071689728 + .long 0 + .long 1071688704 + .long 0 + .long 1071686656 + .long 0 + .long 1071685632 + .long 0 + .long 1071684608 + .long 0 + .long 1071683584 + .long 0 + .long 1071682560 + .long 0 + .long 1071681536 + .long 0 + .long 1071680512 + .long 0 + .long 1071679488 + .long 0 + .long 1071677440 + .long 0 + .long 1071676416 + .long 0 + .long 1071675392 + .long 0 + .long 1071674368 + .long 0 + .long 1071673344 + .long 0 + .long 1071672320 + .long 0 + .long 1071671296 + .long 0 + .long 1071670272 + .long 0 + .long 1071669248 + .long 0 + .long 1071668224 + .long 0 + .long 1071667200 + .long 0 + .long 1071666176 + .long 0 + .long 1071665152 + .long 0 + .long 1071663104 + .long 0 + .long 1071662080 + .long 0 + .long 1071661056 + .long 0 + .long 1071660032 + .long 0 + .long 1071659008 + .long 0 + .long 1071657984 + .long 0 + .long 1071656960 + .long 0 + .long 1071655936 + .long 0 + .long 1071654912 + .long 0 + .long 1071653888 + .long 0 + .long 1071652864 + .long 0 + .long 1071651840 + .long 0 + .long 1071650816 + .long 0 + .long 1071649792 + .long 0 + .long 1071648768 + .long 0 + .long 1071647744 + .long 0 + .long 1071646720 + .long 0 + .long 1071645696 + .long 0 + .long 1071644672 + .long 0 + .long 1101004800 + .long 1073741824 + .long 1095761920 + .long 256 + .long 1118830592 + .long 0 + .long 1017118720 + .long 1413754136 + .long 1073291771 + .long 856972295 + .long 1016178214 + .long 1413754136 + .long 1074340347 + .long 856972295 + .long 1017226790 + .long 0 + .long 1072693248 + .long 0 + .long 1071644672 + .long 0 + .long 0 + .long 1476395008 + .long 1069897045 + .long 1768958041 + .long 3189069141 + .long 805306368 + .long 1068708659 + .long 3580333578 + .long 1040816593 + .long 3067382784 + .long 1067899757 + .long 3397590151 + .long 1067392113 + .long 2939529726 + .long 1066854585 + .long 1423429166 + .long 1066517752 + .long 1775218934 + .long 1066178574 + .long 1185392460 + .long 1065859647 + .long 289998670 + .long 1065577550 + .long 3179807072 + .long 1065648121 + .long 3781007284 + .long 1061576176 + .long 2482106687 + .long 1067019199 + .long 763519713 + .long 3214591591 + .long 3695107454 + .long 1067530646 + .long 0 + .long 1073741824 + .long 1124791109 + .long 1006764147 + .long 1476395008 + .long 1069897045 + .long 1953913876 + .long 3189069141 + .long 805306368 + .long 1067660083 + .long 165110192 + .long 1039768033 + .long 3067304082 + .long 1065802605 + .long 3404727379 + .long 1064246385 + .long 2737480376 + .long 1062660281 + .long 933797922 + .long 1061274873 + .long 1475716730 + .long 1059887095 + .long 1511619763 + .long 1058519827 + .long 556024211 + .long 1057187555 + .long 3482101045 + .long 1056217350 + .long 1174622859 + .long 1050762633 + .long 899668651 + .long 1055506366 + .long 1081094694 + .long 3202035365 + .long 2559814773 + .long 1053906576 + .long 0 + .long 3219128320 + .long 0 + .long 1071120384 + .long 0 + .long 3218341888 + .long 0 + .long 1070694400 + .long 0 + .long 3218046976 + .long 0 + .long 1070391296 + .long 0 + .long 3217739776 + .type _vmldACosHATab,@object + .size _vmldACosHATab,4520 + .space 88, 0x00 + .align 16 + +.FLT_199: + .long 0x00000000,0x80000000,0x00000000,0x00000000 + .type .FLT_199,@object + .size .FLT_199,16 diff --git a/sysdeps/x86_64/fpu/svml_d_acos2_core.S b/sysdeps/x86_64/fpu/svml_d_acos2_core.S new file mode 100644 index 0000000000..9656478b2d --- /dev/null +++ b/sysdeps/x86_64/fpu/svml_d_acos2_core.S @@ -0,0 +1,29 @@ +/* Function acos vectorized with SSE2. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include "svml_d_wrapper_impl.h" + + .text +ENTRY (_ZGVbN2v_acos) +WRAPPER_IMPL_SSE2 acos +END (_ZGVbN2v_acos) + +#ifndef USE_MULTIARCH + libmvec_hidden_def (_ZGVbN2v_acos) +#endif diff --git a/sysdeps/x86_64/fpu/svml_d_acos4_core.S b/sysdeps/x86_64/fpu/svml_d_acos4_core.S new file mode 100644 index 0000000000..e99cb4ae78 --- /dev/null +++ b/sysdeps/x86_64/fpu/svml_d_acos4_core.S @@ -0,0 +1,29 @@ +/* Function acos vectorized with AVX2, wrapper version. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include "svml_d_wrapper_impl.h" + + .text +ENTRY (_ZGVdN4v_acos) +WRAPPER_IMPL_AVX _ZGVbN2v_acos +END (_ZGVdN4v_acos) + +#ifndef USE_MULTIARCH + libmvec_hidden_def (_ZGVdN4v_acos) +#endif diff --git a/sysdeps/x86_64/fpu/svml_d_acos4_core_avx.S b/sysdeps/x86_64/fpu/svml_d_acos4_core_avx.S new file mode 100644 index 0000000000..7cbcbc965c --- /dev/null +++ b/sysdeps/x86_64/fpu/svml_d_acos4_core_avx.S @@ -0,0 +1,25 @@ +/* Function acos vectorized in AVX ISA as wrapper to SSE4 ISA version. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include "svml_d_wrapper_impl.h" + + .text +ENTRY (_ZGVcN4v_acos) +WRAPPER_IMPL_AVX _ZGVbN2v_acos +END (_ZGVcN4v_acos) diff --git a/sysdeps/x86_64/fpu/svml_d_acos8_core.S b/sysdeps/x86_64/fpu/svml_d_acos8_core.S new file mode 100644 index 0000000000..e26b30d81a --- /dev/null +++ b/sysdeps/x86_64/fpu/svml_d_acos8_core.S @@ -0,0 +1,25 @@ +/* Function acos vectorized with AVX-512, wrapper to AVX2. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include "svml_d_wrapper_impl.h" + + .text +ENTRY (_ZGVeN8v_acos) +WRAPPER_IMPL_AVX512 _ZGVdN4v_acos +END (_ZGVeN8v_acos) diff --git a/sysdeps/x86_64/fpu/svml_s_acosf16_core.S b/sysdeps/x86_64/fpu/svml_s_acosf16_core.S new file mode 100644 index 0000000000..70e046d492 --- /dev/null +++ b/sysdeps/x86_64/fpu/svml_s_acosf16_core.S @@ -0,0 +1,25 @@ +/* Function acosf vectorized with AVX-512. Wrapper to AVX2 version. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include "svml_s_wrapper_impl.h" + + .text +ENTRY (_ZGVeN16v_acosf) +WRAPPER_IMPL_AVX512 _ZGVdN8v_acosf +END (_ZGVeN16v_acosf) diff --git a/sysdeps/x86_64/fpu/svml_s_acosf4_core.S b/sysdeps/x86_64/fpu/svml_s_acosf4_core.S new file mode 100644 index 0000000000..36354b32b5 --- /dev/null +++ b/sysdeps/x86_64/fpu/svml_s_acosf4_core.S @@ -0,0 +1,29 @@ +/* Function acosf vectorized with SSE2, wrapper version. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include "svml_s_wrapper_impl.h" + + .text +ENTRY (_ZGVbN4v_acosf) +WRAPPER_IMPL_SSE2 acosf +END (_ZGVbN4v_acosf) + +#ifndef USE_MULTIARCH + libmvec_hidden_def (_ZGVbN4v_acosf) +#endif diff --git a/sysdeps/x86_64/fpu/svml_s_acosf8_core.S b/sysdeps/x86_64/fpu/svml_s_acosf8_core.S new file mode 100644 index 0000000000..f08864a511 --- /dev/null +++ b/sysdeps/x86_64/fpu/svml_s_acosf8_core.S @@ -0,0 +1,29 @@ +/* Function acosf vectorized with AVX2, wrapper version. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include "svml_s_wrapper_impl.h" + + .text +ENTRY (_ZGVdN8v_acosf) +WRAPPER_IMPL_AVX _ZGVbN4v_acosf +END (_ZGVdN8v_acosf) + +#ifndef USE_MULTIARCH + libmvec_hidden_def (_ZGVdN8v_acosf) +#endif diff --git a/sysdeps/x86_64/fpu/svml_s_acosf8_core_avx.S b/sysdeps/x86_64/fpu/svml_s_acosf8_core_avx.S new file mode 100644 index 0000000000..f3ed4d8e78 --- /dev/null +++ b/sysdeps/x86_64/fpu/svml_s_acosf8_core_avx.S @@ -0,0 +1,25 @@ +/* Function acosf vectorized in AVX ISA as wrapper to SSE4 ISA version. + Copyright (C) 2021 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 + <https://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include "svml_s_wrapper_impl.h" + + .text +ENTRY (_ZGVcN8v_acosf) +WRAPPER_IMPL_AVX _ZGVbN4v_acosf +END (_ZGVcN8v_acosf) diff --git a/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx.c b/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx.c new file mode 100644 index 0000000000..4f74b4260a --- /dev/null +++ b/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx.c @@ -0,0 +1 @@ +#include "test-double-libmvec-acos.c" diff --git a/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx2.c b/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx2.c new file mode 100644 index 0000000000..4f74b4260a --- /dev/null +++ b/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx2.c @@ -0,0 +1 @@ +#include "test-double-libmvec-acos.c" diff --git a/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx512f.c b/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx512f.c new file mode 100644 index 0000000000..4f74b4260a --- /dev/null +++ b/sysdeps/x86_64/fpu/test-double-libmvec-acos-avx512f.c @@ -0,0 +1 @@ +#include "test-double-libmvec-acos.c" diff --git a/sysdeps/x86_64/fpu/test-double-libmvec-acos.c b/sysdeps/x86_64/fpu/test-double-libmvec-acos.c new file mode 100644 index 0000000000..e38b8ce821 --- /dev/null +++ b/sysdeps/x86_64/fpu/test-double-libmvec-acos.c @@ -0,0 +1,3 @@ +#define LIBMVEC_TYPE double +#define LIBMVEC_FUNC acos +#include "test-vector-abi-arg1.h" diff --git a/sysdeps/x86_64/fpu/test-double-vlen2-wrappers.c b/sysdeps/x86_64/fpu/test-double-vlen2-wrappers.c index ed932fc98d..0abc7d2021 100644 --- a/sysdeps/x86_64/fpu/test-double-vlen2-wrappers.c +++ b/sysdeps/x86_64/fpu/test-double-vlen2-wrappers.c @@ -27,6 +27,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sin), _ZGVbN2v_sin) VECTOR_WRAPPER (WRAPPER_NAME (log), _ZGVbN2v_log) VECTOR_WRAPPER (WRAPPER_NAME (exp), _ZGVbN2v_exp) VECTOR_WRAPPER_ff (WRAPPER_NAME (pow), _ZGVbN2vv_pow) +VECTOR_WRAPPER (WRAPPER_NAME (acos), _ZGVbN2v_acos) #define VEC_INT_TYPE __m128i diff --git a/sysdeps/x86_64/fpu/test-double-vlen4-avx2-wrappers.c b/sysdeps/x86_64/fpu/test-double-vlen4-avx2-wrappers.c index 3a6e37044f..dda093b914 100644 --- a/sysdeps/x86_64/fpu/test-double-vlen4-avx2-wrappers.c +++ b/sysdeps/x86_64/fpu/test-double-vlen4-avx2-wrappers.c @@ -30,6 +30,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sin), _ZGVdN4v_sin) VECTOR_WRAPPER (WRAPPER_NAME (log), _ZGVdN4v_log) VECTOR_WRAPPER (WRAPPER_NAME (exp), _ZGVdN4v_exp) VECTOR_WRAPPER_ff (WRAPPER_NAME (pow), _ZGVdN4vv_pow) +VECTOR_WRAPPER (WRAPPER_NAME (acos), _ZGVdN4v_acos) #ifndef __ILP32__ # define VEC_INT_TYPE __m256i diff --git a/sysdeps/x86_64/fpu/test-double-vlen4-wrappers.c b/sysdeps/x86_64/fpu/test-double-vlen4-wrappers.c index 99db4e7616..f3230463bb 100644 --- a/sysdeps/x86_64/fpu/test-double-vlen4-wrappers.c +++ b/sysdeps/x86_64/fpu/test-double-vlen4-wrappers.c @@ -27,6 +27,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sin), _ZGVcN4v_sin) VECTOR_WRAPPER (WRAPPER_NAME (log), _ZGVcN4v_log) VECTOR_WRAPPER (WRAPPER_NAME (exp), _ZGVcN4v_exp) VECTOR_WRAPPER_ff (WRAPPER_NAME (pow), _ZGVcN4vv_pow) +VECTOR_WRAPPER (WRAPPER_NAME (acos), _ZGVcN4v_acos) #define VEC_INT_TYPE __m128i diff --git a/sysdeps/x86_64/fpu/test-double-vlen8-wrappers.c b/sysdeps/x86_64/fpu/test-double-vlen8-wrappers.c index 251d429ac0..cf9f52faf0 100644 --- a/sysdeps/x86_64/fpu/test-double-vlen8-wrappers.c +++ b/sysdeps/x86_64/fpu/test-double-vlen8-wrappers.c @@ -27,6 +27,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sin), _ZGVeN8v_sin) VECTOR_WRAPPER (WRAPPER_NAME (log), _ZGVeN8v_log) VECTOR_WRAPPER (WRAPPER_NAME (exp), _ZGVeN8v_exp) VECTOR_WRAPPER_ff (WRAPPER_NAME (pow), _ZGVeN8vv_pow) +VECTOR_WRAPPER (WRAPPER_NAME (acos), _ZGVeN8v_acos) #ifndef __ILP32__ # define VEC_INT_TYPE __m512i diff --git a/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx.c b/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx.c new file mode 100644 index 0000000000..1e6474dfa2 --- /dev/null +++ b/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx.c @@ -0,0 +1 @@ +#include "test-float-libmvec-acosf.c" diff --git a/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx2.c b/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx2.c new file mode 100644 index 0000000000..1e6474dfa2 --- /dev/null +++ b/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx2.c @@ -0,0 +1 @@ +#include "test-float-libmvec-acosf.c" diff --git a/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx512f.c b/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx512f.c new file mode 100644 index 0000000000..1e6474dfa2 --- /dev/null +++ b/sysdeps/x86_64/fpu/test-float-libmvec-acosf-avx512f.c @@ -0,0 +1 @@ +#include "test-float-libmvec-acosf.c" diff --git a/sysdeps/x86_64/fpu/test-float-libmvec-acosf.c b/sysdeps/x86_64/fpu/test-float-libmvec-acosf.c new file mode 100644 index 0000000000..fb47f974fd --- /dev/null +++ b/sysdeps/x86_64/fpu/test-float-libmvec-acosf.c @@ -0,0 +1,3 @@ +#define LIBMVEC_TYPE float +#define LIBMVEC_FUNC acosf +#include "test-vector-abi-arg1.h" diff --git a/sysdeps/x86_64/fpu/test-float-vlen16-wrappers.c b/sysdeps/x86_64/fpu/test-float-vlen16-wrappers.c index c1d14cd79e..abbd3ed870 100644 --- a/sysdeps/x86_64/fpu/test-float-vlen16-wrappers.c +++ b/sysdeps/x86_64/fpu/test-float-vlen16-wrappers.c @@ -27,6 +27,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sinf), _ZGVeN16v_sinf) VECTOR_WRAPPER (WRAPPER_NAME (logf), _ZGVeN16v_logf) VECTOR_WRAPPER (WRAPPER_NAME (expf), _ZGVeN16v_expf) VECTOR_WRAPPER_ff (WRAPPER_NAME (powf), _ZGVeN16vv_powf) +VECTOR_WRAPPER (WRAPPER_NAME (acosf), _ZGVeN16v_acosf) #define VEC_INT_TYPE __m512i diff --git a/sysdeps/x86_64/fpu/test-float-vlen4-wrappers.c b/sysdeps/x86_64/fpu/test-float-vlen4-wrappers.c index d23c372060..8a24027952 100644 --- a/sysdeps/x86_64/fpu/test-float-vlen4-wrappers.c +++ b/sysdeps/x86_64/fpu/test-float-vlen4-wrappers.c @@ -27,6 +27,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sinf), _ZGVbN4v_sinf) VECTOR_WRAPPER (WRAPPER_NAME (logf), _ZGVbN4v_logf) VECTOR_WRAPPER (WRAPPER_NAME (expf), _ZGVbN4v_expf) VECTOR_WRAPPER_ff (WRAPPER_NAME (powf), _ZGVbN4vv_powf) +VECTOR_WRAPPER (WRAPPER_NAME (acosf), _ZGVbN4v_acosf) #define VEC_INT_TYPE __m128i diff --git a/sysdeps/x86_64/fpu/test-float-vlen8-avx2-wrappers.c b/sysdeps/x86_64/fpu/test-float-vlen8-avx2-wrappers.c index 3152cffb0c..aff0442606 100644 --- a/sysdeps/x86_64/fpu/test-float-vlen8-avx2-wrappers.c +++ b/sysdeps/x86_64/fpu/test-float-vlen8-avx2-wrappers.c @@ -30,6 +30,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sinf), _ZGVdN8v_sinf) VECTOR_WRAPPER (WRAPPER_NAME (logf), _ZGVdN8v_logf) VECTOR_WRAPPER (WRAPPER_NAME (expf), _ZGVdN8v_expf) VECTOR_WRAPPER_ff (WRAPPER_NAME (powf), _ZGVdN8vv_powf) +VECTOR_WRAPPER (WRAPPER_NAME (acosf), _ZGVdN8v_acosf) /* Redefinition of wrapper to be compatible with _ZGVdN8vvv_sincosf. */ #undef VECTOR_WRAPPER_fFF diff --git a/sysdeps/x86_64/fpu/test-float-vlen8-wrappers.c b/sysdeps/x86_64/fpu/test-float-vlen8-wrappers.c index a8492abfef..913584d111 100644 --- a/sysdeps/x86_64/fpu/test-float-vlen8-wrappers.c +++ b/sysdeps/x86_64/fpu/test-float-vlen8-wrappers.c @@ -27,6 +27,7 @@ VECTOR_WRAPPER (WRAPPER_NAME (sinf), _ZGVcN8v_sinf) VECTOR_WRAPPER (WRAPPER_NAME (logf), _ZGVcN8v_logf) VECTOR_WRAPPER (WRAPPER_NAME (expf), _ZGVcN8v_expf) VECTOR_WRAPPER_ff (WRAPPER_NAME (powf), _ZGVcN8vv_powf) +VECTOR_WRAPPER (WRAPPER_NAME (acosf), _ZGVcN8v_acosf) #define VEC_INT_TYPE __m128i