[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Minios-devel] [UNIKRAFT/LIBSLEEF PATCH 3/3] Add header files



These headers are generated at build time by sleef.
We add them in our gluecode.

Signed-off-by: Vlad-Andrei Badoiu <vlad_andrei.badoiu@xxxxxx>
---
 include/dispatchdp.h    |  467 +++++
 include/dispatchparam.h |    2 +
 include/sleef.h         | 4384 +++++++++++++++++++++++++++++++++++++++
 3 files changed, 4853 insertions(+)
 create mode 100644 include/dispatchdp.h
 create mode 100644 include/dispatchparam.h
 create mode 100644 include/sleef.h

diff --git a/include/dispatchdp.h b/include/dispatchdp.h
new file mode 100644
index 0000000..5c4d1d7
--- /dev/null
+++ b/include/dispatchdp.h
@@ -0,0 +1,467 @@
+#define MAXBUTWIDTH 4
+
+#define ISAMAX 5
+#define CONFIGMAX 4
+void dft2f_0_vecextdp(real *, const real *, const int);
+void dft2b_0_vecextdp(real *, const real *, const int);
+void tbut2f_0_vecextdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut2b_0_vecextdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but2f_0_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but2b_0_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft4f_0_vecextdp(real *, const real *, const int);
+void dft4b_0_vecextdp(real *, const real *, const int);
+void tbut4f_0_vecextdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut4b_0_vecextdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but4f_0_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but4b_0_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft8f_0_vecextdp(real *, const real *, const int);
+void dft8b_0_vecextdp(real *, const real *, const int);
+void tbut8f_0_vecextdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut8b_0_vecextdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but8f_0_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but8b_0_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft16f_0_vecextdp(real *, const real *, const int);
+void dft16b_0_vecextdp(real *, const real *, const int);
+void tbut16f_0_vecextdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void tbut16b_0_vecextdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void but16f_0_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but16b_0_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft2f_2_vecextdp(real *, const real *, const int);
+void dft2b_2_vecextdp(real *, const real *, const int);
+void tbut2f_2_vecextdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut2b_2_vecextdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but2f_2_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but2b_2_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft4f_2_vecextdp(real *, const real *, const int);
+void dft4b_2_vecextdp(real *, const real *, const int);
+void tbut4f_2_vecextdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut4b_2_vecextdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but4f_2_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but4b_2_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft8f_2_vecextdp(real *, const real *, const int);
+void dft8b_2_vecextdp(real *, const real *, const int);
+void tbut8f_2_vecextdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut8b_2_vecextdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but8f_2_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but8b_2_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft16f_2_vecextdp(real *, const real *, const int);
+void dft16b_2_vecextdp(real *, const real *, const int);
+void tbut16f_2_vecextdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void tbut16b_2_vecextdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void but16f_2_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but16b_2_vecextdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void realSub0_vecextdp(real *, const real *, const int, const real *, const 
real *);
+void realSub1_vecextdp(real *, const real *, const int, const real *, const 
real *, const int);
+int getInt_vecextdp(int);
+const void *getPtr_vecextdp(int);
+void dft2f_0_sse2dp(real *, const real *, const int);
+void dft2b_0_sse2dp(real *, const real *, const int);
+void tbut2f_0_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut2b_0_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but2f_0_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but2b_0_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft4f_0_sse2dp(real *, const real *, const int);
+void dft4b_0_sse2dp(real *, const real *, const int);
+void tbut4f_0_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut4b_0_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but4f_0_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but4b_0_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft8f_0_sse2dp(real *, const real *, const int);
+void dft8b_0_sse2dp(real *, const real *, const int);
+void tbut8f_0_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut8b_0_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but8f_0_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but8b_0_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft16f_0_sse2dp(real *, const real *, const int);
+void dft16b_0_sse2dp(real *, const real *, const int);
+void tbut16f_0_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut16b_0_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but16f_0_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but16b_0_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft2f_2_sse2dp(real *, const real *, const int);
+void dft2b_2_sse2dp(real *, const real *, const int);
+void tbut2f_2_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut2b_2_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but2f_2_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but2b_2_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft4f_2_sse2dp(real *, const real *, const int);
+void dft4b_2_sse2dp(real *, const real *, const int);
+void tbut4f_2_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut4b_2_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but4f_2_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but4b_2_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft8f_2_sse2dp(real *, const real *, const int);
+void dft8b_2_sse2dp(real *, const real *, const int);
+void tbut8f_2_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut8b_2_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but8f_2_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but8b_2_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft16f_2_sse2dp(real *, const real *, const int);
+void dft16b_2_sse2dp(real *, const real *, const int);
+void tbut16f_2_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut16b_2_sse2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but16f_2_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but16b_2_sse2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void realSub0_sse2dp(real *, const real *, const int, const real *, const real 
*);
+void realSub1_sse2dp(real *, const real *, const int, const real *, const real 
*, const int);
+int getInt_sse2dp(int);
+const void *getPtr_sse2dp(int);
+void dft2f_0_avxdp(real *, const real *, const int);
+void dft2b_0_avxdp(real *, const real *, const int);
+void tbut2f_0_avxdp(real *, uint32_t *, const real *, const int, const real *, 
const int);
+void tbut2b_0_avxdp(real *, uint32_t *, const real *, const int, const real *, 
const int);
+void but2f_0_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but2b_0_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft4f_0_avxdp(real *, const real *, const int);
+void dft4b_0_avxdp(real *, const real *, const int);
+void tbut4f_0_avxdp(real *, uint32_t *, const real *, const int, const real *, 
const int);
+void tbut4b_0_avxdp(real *, uint32_t *, const real *, const int, const real *, 
const int);
+void but4f_0_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but4b_0_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft8f_0_avxdp(real *, const real *, const int);
+void dft8b_0_avxdp(real *, const real *, const int);
+void tbut8f_0_avxdp(real *, uint32_t *, const real *, const int, const real *, 
const int);
+void tbut8b_0_avxdp(real *, uint32_t *, const real *, const int, const real *, 
const int);
+void but8f_0_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but8b_0_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft16f_0_avxdp(real *, const real *, const int);
+void dft16b_0_avxdp(real *, const real *, const int);
+void tbut16f_0_avxdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut16b_0_avxdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but16f_0_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but16b_0_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft2f_2_avxdp(real *, const real *, const int);
+void dft2b_2_avxdp(real *, const real *, const int);
+void tbut2f_2_avxdp(real *, uint32_t *, const real *, const int, const real *, 
const int);
+void tbut2b_2_avxdp(real *, uint32_t *, const real *, const int, const real *, 
const int);
+void but2f_2_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but2b_2_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft4f_2_avxdp(real *, const real *, const int);
+void dft4b_2_avxdp(real *, const real *, const int);
+void tbut4f_2_avxdp(real *, uint32_t *, const real *, const int, const real *, 
const int);
+void tbut4b_2_avxdp(real *, uint32_t *, const real *, const int, const real *, 
const int);
+void but4f_2_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but4b_2_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft8f_2_avxdp(real *, const real *, const int);
+void dft8b_2_avxdp(real *, const real *, const int);
+void tbut8f_2_avxdp(real *, uint32_t *, const real *, const int, const real *, 
const int);
+void tbut8b_2_avxdp(real *, uint32_t *, const real *, const int, const real *, 
const int);
+void but8f_2_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but8b_2_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft16f_2_avxdp(real *, const real *, const int);
+void dft16b_2_avxdp(real *, const real *, const int);
+void tbut16f_2_avxdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut16b_2_avxdp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but16f_2_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but16b_2_avxdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void realSub0_avxdp(real *, const real *, const int, const real *, const real 
*);
+void realSub1_avxdp(real *, const real *, const int, const real *, const real 
*, const int);
+int getInt_avxdp(int);
+const void *getPtr_avxdp(int);
+void dft2f_0_avx2dp(real *, const real *, const int);
+void dft2b_0_avx2dp(real *, const real *, const int);
+void tbut2f_0_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut2b_0_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but2f_0_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but2b_0_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft4f_0_avx2dp(real *, const real *, const int);
+void dft4b_0_avx2dp(real *, const real *, const int);
+void tbut4f_0_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut4b_0_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but4f_0_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but4b_0_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft8f_0_avx2dp(real *, const real *, const int);
+void dft8b_0_avx2dp(real *, const real *, const int);
+void tbut8f_0_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut8b_0_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but8f_0_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but8b_0_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft16f_0_avx2dp(real *, const real *, const int);
+void dft16b_0_avx2dp(real *, const real *, const int);
+void tbut16f_0_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut16b_0_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but16f_0_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but16b_0_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft2f_2_avx2dp(real *, const real *, const int);
+void dft2b_2_avx2dp(real *, const real *, const int);
+void tbut2f_2_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut2b_2_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but2f_2_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but2b_2_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft4f_2_avx2dp(real *, const real *, const int);
+void dft4b_2_avx2dp(real *, const real *, const int);
+void tbut4f_2_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut4b_2_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but4f_2_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but4b_2_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft8f_2_avx2dp(real *, const real *, const int);
+void dft8b_2_avx2dp(real *, const real *, const int);
+void tbut8f_2_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut8b_2_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but8f_2_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but8b_2_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft16f_2_avx2dp(real *, const real *, const int);
+void dft16b_2_avx2dp(real *, const real *, const int);
+void tbut16f_2_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void tbut16b_2_avx2dp(real *, uint32_t *, const real *, const int, const real 
*, const int);
+void but16f_2_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but16b_2_avx2dp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void realSub0_avx2dp(real *, const real *, const int, const real *, const real 
*);
+void realSub1_avx2dp(real *, const real *, const int, const real *, const real 
*, const int);
+int getInt_avx2dp(int);
+const void *getPtr_avx2dp(int);
+void dft2f_0_avx512fdp(real *, const real *, const int);
+void dft2b_0_avx512fdp(real *, const real *, const int);
+void tbut2f_0_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void tbut2b_0_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void but2f_0_avx512fdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but2b_0_avx512fdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft4f_0_avx512fdp(real *, const real *, const int);
+void dft4b_0_avx512fdp(real *, const real *, const int);
+void tbut4f_0_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void tbut4b_0_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void but4f_0_avx512fdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but4b_0_avx512fdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft8f_0_avx512fdp(real *, const real *, const int);
+void dft8b_0_avx512fdp(real *, const real *, const int);
+void tbut8f_0_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void tbut8b_0_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void but8f_0_avx512fdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but8b_0_avx512fdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft16f_0_avx512fdp(real *, const real *, const int);
+void dft16b_0_avx512fdp(real *, const real *, const int);
+void tbut16f_0_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void tbut16b_0_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void but16f_0_avx512fdp(real *, uint32_t *, const int, const real *, const 
int, const real *, const int);
+void but16b_0_avx512fdp(real *, uint32_t *, const int, const real *, const 
int, const real *, const int);
+void dft2f_2_avx512fdp(real *, const real *, const int);
+void dft2b_2_avx512fdp(real *, const real *, const int);
+void tbut2f_2_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void tbut2b_2_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void but2f_2_avx512fdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but2b_2_avx512fdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft4f_2_avx512fdp(real *, const real *, const int);
+void dft4b_2_avx512fdp(real *, const real *, const int);
+void tbut4f_2_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void tbut4b_2_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void but4f_2_avx512fdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but4b_2_avx512fdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft8f_2_avx512fdp(real *, const real *, const int);
+void dft8b_2_avx512fdp(real *, const real *, const int);
+void tbut8f_2_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void tbut8b_2_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void but8f_2_avx512fdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void but8b_2_avx512fdp(real *, uint32_t *, const int, const real *, const int, 
const real *, const int);
+void dft16f_2_avx512fdp(real *, const real *, const int);
+void dft16b_2_avx512fdp(real *, const real *, const int);
+void tbut16f_2_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void tbut16b_2_avx512fdp(real *, uint32_t *, const real *, const int, const 
real *, const int);
+void but16f_2_avx512fdp(real *, uint32_t *, const int, const real *, const 
int, const real *, const int);
+void but16b_2_avx512fdp(real *, uint32_t *, const int, const real *, const 
int, const real *, const int);
+void realSub0_avx512fdp(real *, const real *, const int, const real *, const 
real *);
+void realSub1_avx512fdp(real *, const real *, const int, const real *, const 
real *, const int);
+int getInt_avx512fdp(int);
+const void *getPtr_avx512fdp(int);
+
+void (*dftf_double[CONFIGMAX][ISAMAX][MAXBUTWIDTH+1])(real *, const real *, 
const int) = {
+  {
+    {NULL, dft2f_0_vecextdp, dft4f_0_vecextdp, dft8f_0_vecextdp, 
dft16f_0_vecextdp, },
+    {NULL, dft2f_0_sse2dp, dft4f_0_sse2dp, dft8f_0_sse2dp, dft16f_0_sse2dp, },
+    {NULL, dft2f_0_avxdp, dft4f_0_avxdp, dft8f_0_avxdp, dft16f_0_avxdp, },
+    {NULL, dft2f_0_avx2dp, dft4f_0_avx2dp, dft8f_0_avx2dp, dft16f_0_avx2dp, },
+    {NULL, dft2f_0_avx512fdp, dft4f_0_avx512fdp, dft8f_0_avx512fdp, 
dft16f_0_avx512fdp, },
+},
+  {
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+},
+  {
+    {NULL, dft2f_2_vecextdp, dft4f_2_vecextdp, dft8f_2_vecextdp, 
dft16f_2_vecextdp, },
+    {NULL, dft2f_2_sse2dp, dft4f_2_sse2dp, dft8f_2_sse2dp, dft16f_2_sse2dp, },
+    {NULL, dft2f_2_avxdp, dft4f_2_avxdp, dft8f_2_avxdp, dft16f_2_avxdp, },
+    {NULL, dft2f_2_avx2dp, dft4f_2_avx2dp, dft8f_2_avx2dp, dft16f_2_avx2dp, },
+    {NULL, dft2f_2_avx512fdp, dft4f_2_avx512fdp, dft8f_2_avx512fdp, 
dft16f_2_avx512fdp, },
+},
+  {
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+},
+};
+
+void (*dftb_double[CONFIGMAX][ISAMAX][MAXBUTWIDTH+1])(real *, const real *, 
const int) = {
+  {
+    {NULL, dft2f_0_vecextdp, dft4b_0_vecextdp, dft8b_0_vecextdp, 
dft16b_0_vecextdp, },
+    {NULL, dft2f_0_sse2dp, dft4b_0_sse2dp, dft8b_0_sse2dp, dft16b_0_sse2dp, },
+    {NULL, dft2f_0_avxdp, dft4b_0_avxdp, dft8b_0_avxdp, dft16b_0_avxdp, },
+    {NULL, dft2f_0_avx2dp, dft4b_0_avx2dp, dft8b_0_avx2dp, dft16b_0_avx2dp, },
+    {NULL, dft2f_0_avx512fdp, dft4b_0_avx512fdp, dft8b_0_avx512fdp, 
dft16b_0_avx512fdp, },
+},
+  {
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+},
+  {
+    {NULL, dft2f_2_vecextdp, dft4b_2_vecextdp, dft8b_2_vecextdp, 
dft16b_2_vecextdp, },
+    {NULL, dft2f_2_sse2dp, dft4b_2_sse2dp, dft8b_2_sse2dp, dft16b_2_sse2dp, },
+    {NULL, dft2f_2_avxdp, dft4b_2_avxdp, dft8b_2_avxdp, dft16b_2_avxdp, },
+    {NULL, dft2f_2_avx2dp, dft4b_2_avx2dp, dft8b_2_avx2dp, dft16b_2_avx2dp, },
+    {NULL, dft2f_2_avx512fdp, dft4b_2_avx512fdp, dft8b_2_avx512fdp, 
dft16b_2_avx512fdp, },
+},
+  {
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+},
+};
+
+void (*tbutf_double[CONFIGMAX][ISAMAX][MAXBUTWIDTH+1])(real *, uint32_t *, 
const real *, const int, const real *, const int) = {
+  {
+    {NULL, tbut2f_0_vecextdp, tbut4f_0_vecextdp, tbut8f_0_vecextdp, 
tbut16f_0_vecextdp, },
+    {NULL, tbut2f_0_sse2dp, tbut4f_0_sse2dp, tbut8f_0_sse2dp, 
tbut16f_0_sse2dp, },
+    {NULL, tbut2f_0_avxdp, tbut4f_0_avxdp, tbut8f_0_avxdp, tbut16f_0_avxdp, },
+    {NULL, tbut2f_0_avx2dp, tbut4f_0_avx2dp, tbut8f_0_avx2dp, 
tbut16f_0_avx2dp, },
+    {NULL, tbut2f_0_avx512fdp, tbut4f_0_avx512fdp, tbut8f_0_avx512fdp, 
tbut16f_0_avx512fdp, },
+},
+  {
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+},
+  {
+    {NULL, tbut2f_2_vecextdp, tbut4f_2_vecextdp, tbut8f_2_vecextdp, 
tbut16f_2_vecextdp, },
+    {NULL, tbut2f_2_sse2dp, tbut4f_2_sse2dp, tbut8f_2_sse2dp, 
tbut16f_2_sse2dp, },
+    {NULL, tbut2f_2_avxdp, tbut4f_2_avxdp, tbut8f_2_avxdp, tbut16f_2_avxdp, },
+    {NULL, tbut2f_2_avx2dp, tbut4f_2_avx2dp, tbut8f_2_avx2dp, 
tbut16f_2_avx2dp, },
+    {NULL, tbut2f_2_avx512fdp, tbut4f_2_avx512fdp, tbut8f_2_avx512fdp, 
tbut16f_2_avx512fdp, },
+},
+  {
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+},
+};
+
+void (*tbutb_double[CONFIGMAX][ISAMAX][MAXBUTWIDTH+1])(real *, uint32_t *, 
const real *, const int, const real *, const int) = {
+  {
+    {NULL, tbut2b_0_vecextdp, tbut4b_0_vecextdp, tbut8b_0_vecextdp, 
tbut16b_0_vecextdp, },
+    {NULL, tbut2b_0_sse2dp, tbut4b_0_sse2dp, tbut8b_0_sse2dp, 
tbut16b_0_sse2dp, },
+    {NULL, tbut2b_0_avxdp, tbut4b_0_avxdp, tbut8b_0_avxdp, tbut16b_0_avxdp, },
+    {NULL, tbut2b_0_avx2dp, tbut4b_0_avx2dp, tbut8b_0_avx2dp, 
tbut16b_0_avx2dp, },
+    {NULL, tbut2b_0_avx512fdp, tbut4b_0_avx512fdp, tbut8b_0_avx512fdp, 
tbut16b_0_avx512fdp, },
+},
+  {
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+},
+  {
+    {NULL, tbut2b_2_vecextdp, tbut4b_2_vecextdp, tbut8b_2_vecextdp, 
tbut16b_2_vecextdp, },
+    {NULL, tbut2b_2_sse2dp, tbut4b_2_sse2dp, tbut8b_2_sse2dp, 
tbut16b_2_sse2dp, },
+    {NULL, tbut2b_2_avxdp, tbut4b_2_avxdp, tbut8b_2_avxdp, tbut16b_2_avxdp, },
+    {NULL, tbut2b_2_avx2dp, tbut4b_2_avx2dp, tbut8b_2_avx2dp, 
tbut16b_2_avx2dp, },
+    {NULL, tbut2b_2_avx512fdp, tbut4b_2_avx512fdp, tbut8b_2_avx512fdp, 
tbut16b_2_avx512fdp, },
+},
+  {
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+},
+};
+
+void (*butf_double[CONFIGMAX][ISAMAX][MAXBUTWIDTH+1])(real *, uint32_t *, 
const int, const real *, const int, const real *, const int) = {
+  {
+    {NULL, but2f_0_vecextdp, but4f_0_vecextdp, but8f_0_vecextdp, 
but16f_0_vecextdp, },
+    {NULL, but2f_0_sse2dp, but4f_0_sse2dp, but8f_0_sse2dp, but16f_0_sse2dp, },
+    {NULL, but2f_0_avxdp, but4f_0_avxdp, but8f_0_avxdp, but16f_0_avxdp, },
+    {NULL, but2f_0_avx2dp, but4f_0_avx2dp, but8f_0_avx2dp, but16f_0_avx2dp, },
+    {NULL, but2f_0_avx512fdp, but4f_0_avx512fdp, but8f_0_avx512fdp, 
but16f_0_avx512fdp, },
+},
+  {
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+},
+  {
+    {NULL, but2f_2_vecextdp, but4f_2_vecextdp, but8f_2_vecextdp, 
but16f_2_vecextdp, },
+    {NULL, but2f_2_sse2dp, but4f_2_sse2dp, but8f_2_sse2dp, but16f_2_sse2dp, },
+    {NULL, but2f_2_avxdp, but4f_2_avxdp, but8f_2_avxdp, but16f_2_avxdp, },
+    {NULL, but2f_2_avx2dp, but4f_2_avx2dp, but8f_2_avx2dp, but16f_2_avx2dp, },
+    {NULL, but2f_2_avx512fdp, but4f_2_avx512fdp, but8f_2_avx512fdp, 
but16f_2_avx512fdp, },
+},
+  {
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+},
+};
+
+void (*butb_double[CONFIGMAX][ISAMAX][MAXBUTWIDTH+1])(real *, uint32_t *, 
const int, const real *, const int, const real *, const int) = {
+  {
+    {NULL, but2b_0_vecextdp, but4b_0_vecextdp, but8b_0_vecextdp, 
but16b_0_vecextdp, },
+    {NULL, but2b_0_sse2dp, but4b_0_sse2dp, but8b_0_sse2dp, but16b_0_sse2dp, },
+    {NULL, but2b_0_avxdp, but4b_0_avxdp, but8b_0_avxdp, but16b_0_avxdp, },
+    {NULL, but2b_0_avx2dp, but4b_0_avx2dp, but8b_0_avx2dp, but16b_0_avx2dp, },
+    {NULL, but2b_0_avx512fdp, but4b_0_avx512fdp, but8b_0_avx512fdp, 
but16b_0_avx512fdp, },
+},
+  {
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+},
+  {
+    {NULL, but2b_2_vecextdp, but4b_2_vecextdp, but8b_2_vecextdp, 
but16b_2_vecextdp, },
+    {NULL, but2b_2_sse2dp, but4b_2_sse2dp, but8b_2_sse2dp, but16b_2_sse2dp, },
+    {NULL, but2b_2_avxdp, but4b_2_avxdp, but8b_2_avxdp, but16b_2_avxdp, },
+    {NULL, but2b_2_avx2dp, but4b_2_avx2dp, but8b_2_avx2dp, but16b_2_avx2dp, },
+    {NULL, but2b_2_avx512fdp, but4b_2_avx512fdp, but8b_2_avx512fdp, 
but16b_2_avx512fdp, },
+},
+  {
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+    {NULL, NULL, NULL, NULL, NULL, },
+},
+};
+
+void (*realSub0_double[ISAMAX])(real *, const real *, const int, const real *, 
const real *) = {
+  realSub0_vecextdp, realSub0_sse2dp, realSub0_avxdp, realSub0_avx2dp, 
realSub0_avx512fdp, 
+};
+
+void (*realSub1_double[ISAMAX])(real *, const real *, const int, const real *, 
const real *, const int) = {
+  realSub1_vecextdp, realSub1_sse2dp, realSub1_avxdp, realSub1_avx2dp, 
realSub1_avx512fdp, 
+};
+
+int (*getInt_double[16])(int) = {
+  getInt_vecextdp, getInt_sse2dp, getInt_avxdp, getInt_avx2dp, 
getInt_avx512fdp, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 
NULL, 
+};
+
+const void *(*getPtr_double[16])(int) = {
+  getPtr_vecextdp, getPtr_sse2dp, getPtr_avxdp, getPtr_avx2dp, 
getPtr_avx512fdp, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 
NULL, 
+};
+
diff --git a/include/dispatchparam.h b/include/dispatchparam.h
new file mode 100644
index 0000000..01d5adc
--- /dev/null
+++ b/include/dispatchparam.h
@@ -0,0 +1,2 @@
+#define MAXBUTWIDTH 4
+
diff --git a/include/sleef.h b/include/sleef.h
new file mode 100644
index 0000000..23910bb
--- /dev/null
+++ b/include/sleef.h
@@ -0,0 +1,4384 @@
+//          Copyright Naoki Shibata 2010 - 2019.
+// Distributed under the Boost Software License, Version 1.0.
+//    (See accompanying file LICENSE.txt or copy at
+//          http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef __SLEEF_H__
+#define __SLEEF_H__
+
+#include <stddef.h>
+#include <stdint.h>
+
+#if (defined(__GNUC__) || defined(__CLANG__)) && !defined(__INTEL_COMPILER)
+#define CONST const
+#else
+#define CONST
+#endif
+
+#if defined(__AVX2__) || defined(__aarch64__) || defined(__arm__) || 
defined(__powerpc64__)
+#ifndef FP_FAST_FMA
+#define FP_FAST_FMA
+#endif
+#endif
+
+#if defined(_MSC_VER) && !defined(__STDC__)
+#define __STDC__ 1
+#endif
+
+#if (defined(__MINGW32__) || defined(__MINGW64__) || defined(__CYGWIN__) || 
defined(_MSC_VER)) && !defined(SLEEF_STATIC_LIBS)
+#ifdef IMPORT_IS_EXPORT
+#define IMPORT __declspec(dllexport)
+#else // #ifdef IMPORT_IS_EXPORT
+#define IMPORT __declspec(dllimport)
+#if (defined(_MSC_VER))
+#pragma comment(lib,"sleef.lib")
+#endif // #if (defined(_MSC_VER))
+#endif // #ifdef IMPORT_IS_EXPORT
+#else // #if (defined(__MINGW32__) || defined(__MINGW64__) || 
defined(__CYGWIN__) || defined(_MSC_VER)) && !defined(SLEEF_STATIC_LIBS)
+#define IMPORT
+#endif // #if (defined(__MINGW32__) || defined(__MINGW64__) || 
defined(__CYGWIN__) || defined(_MSC_VER)) && !defined(SLEEF_STATIC_LIBS)
+
+#if (defined(__GNUC__) || defined(__CLANG__)) && (defined(__i386__) || 
defined(__x86_64__))
+#include <x86intrin.h>
+#endif
+
+#if (defined(_MSC_VER))
+#include <intrin.h>
+#endif
+
+#if defined(__ARM_NEON__) || defined(__ARM_NEON)
+#include <arm_neon.h>
+#endif
+
+#if defined(__ARM_FEATURE_SVE)
+#include <arm_sve.h>
+#endif
+
+//
+
+#ifndef SLEEF_FP_ILOGB0
+#define SLEEF_FP_ILOGB0 ((int)-2147483648)
+#endif
+
+#ifndef SLEEF_FP_ILOGBNAN
+#define SLEEF_FP_ILOGBNAN ((int)2147483647)
+#endif
+
+//
+
+IMPORT void *Sleef_malloc(size_t z);
+IMPORT void Sleef_free(void *ptr);
+IMPORT uint64_t Sleef_currentTimeMicros();
+
+#if defined(__i386__) || defined(__x86_64__) || defined(_MSC_VER)
+IMPORT void Sleef_x86CpuID(int32_t out[4], uint32_t eax, uint32_t ecx);
+#endif
+
+//
+
+#ifndef Sleef_double2_DEFINED
+#define Sleef_double2_DEFINED
+typedef struct {
+  double x, y;
+} Sleef_double2;
+#endif
+
+#ifndef Sleef_float2_DEFINED
+#define Sleef_float2_DEFINED
+typedef struct {
+  float x, y;
+} Sleef_float2;
+#endif
+
+#ifndef Sleef_longdouble2_DEFINED
+#define Sleef_longdouble2_DEFINED
+typedef struct {
+  long double x, y;
+} Sleef_longdouble2;
+#endif
+
+#if !defined(Sleef_quad_DEFINED)
+#define Sleef_quad_DEFINED
+#if defined(ENABLEFLOAT128)
+typedef __float128 Sleef_quad;
+#else
+typedef struct { uint64_t x, y; } Sleef_quad;
+#endif
+#endif
+
+#if !defined(Sleef_quad2_DEFINED)
+#define Sleef_quad2_DEFINED
+typedef union {
+  struct {
+    Sleef_quad x, y;
+  };
+  Sleef_quad s[2];
+} Sleef_quad2;
+#endif
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+IMPORT CONST double Sleef_sin_u35(double);
+IMPORT CONST double Sleef_cos_u35(double);
+IMPORT CONST Sleef_double2 Sleef_sincos_u35(double);
+IMPORT CONST double Sleef_tan_u35(double);
+IMPORT CONST double Sleef_asin_u35(double);
+IMPORT CONST double Sleef_acos_u35(double);
+IMPORT CONST double Sleef_atan_u35(double);
+IMPORT CONST double Sleef_atan2_u35(double, double);
+IMPORT CONST double Sleef_log_u35(double);
+IMPORT CONST double Sleef_cbrt_u35(double);
+IMPORT CONST double Sleef_sin_u10(double);
+IMPORT CONST double Sleef_cos_u10(double);
+IMPORT CONST Sleef_double2 Sleef_sincos_u10(double);
+IMPORT CONST double Sleef_tan_u10(double);
+IMPORT CONST double Sleef_asin_u10(double);
+IMPORT CONST double Sleef_acos_u10(double);
+IMPORT CONST double Sleef_atan_u10(double);
+IMPORT CONST double Sleef_atan2_u10(double, double);
+IMPORT CONST double Sleef_log_u10(double);
+IMPORT CONST double Sleef_cbrt_u10(double);
+IMPORT CONST double Sleef_exp_u10(double);
+IMPORT CONST double Sleef_pow_u10(double, double);
+IMPORT CONST double Sleef_sinh_u10(double);
+IMPORT CONST double Sleef_cosh_u10(double);
+IMPORT CONST double Sleef_tanh_u10(double);
+IMPORT CONST double Sleef_sinh_u35(double);
+IMPORT CONST double Sleef_cosh_u35(double);
+IMPORT CONST double Sleef_tanh_u35(double);
+IMPORT CONST double Sleef_asinh_u10(double);
+IMPORT CONST double Sleef_acosh_u10(double);
+IMPORT CONST double Sleef_atanh_u10(double);
+IMPORT CONST double Sleef_exp2_u10(double);
+IMPORT CONST double Sleef_exp10_u10(double);
+IMPORT CONST double Sleef_exp2_u35(double);
+IMPORT CONST double Sleef_exp10_u35(double);
+IMPORT CONST double Sleef_expm1_u10(double);
+IMPORT CONST double Sleef_log10_u10(double);
+IMPORT CONST double Sleef_log2_u10(double);
+IMPORT CONST double Sleef_log2_u35(double);
+IMPORT CONST double Sleef_log1p_u10(double);
+IMPORT CONST Sleef_double2 Sleef_sincospi_u05(double);
+IMPORT CONST Sleef_double2 Sleef_sincospi_u35(double);
+IMPORT CONST double Sleef_sinpi_u05(double);
+IMPORT CONST double Sleef_cospi_u05(double);
+IMPORT CONST double Sleef_ldexp(double, int);
+IMPORT CONST int Sleef_ilogb(double);
+IMPORT CONST double Sleef_fma(double, double, double);
+IMPORT CONST double Sleef_sqrt(double);
+IMPORT CONST double Sleef_sqrt_u05(double);
+IMPORT CONST double Sleef_sqrt_u35(double);
+
+IMPORT CONST double Sleef_hypot_u05(double, double);
+IMPORT CONST double Sleef_hypot_u35(double, double);
+
+IMPORT CONST double Sleef_fabs(double);
+IMPORT CONST double Sleef_copysign(double, double);
+IMPORT CONST double Sleef_fmax(double, double);
+IMPORT CONST double Sleef_fmin(double, double);
+IMPORT CONST double Sleef_fdim(double, double);
+IMPORT CONST double Sleef_trunc(double);
+IMPORT CONST double Sleef_floor(double);
+IMPORT CONST double Sleef_ceil(double);
+IMPORT CONST double Sleef_round(double);
+IMPORT CONST double Sleef_rint(double);
+IMPORT CONST double Sleef_nextafter(double, double);
+IMPORT CONST double Sleef_frfrexp(double);
+IMPORT CONST int Sleef_expfrexp(double);
+IMPORT CONST double Sleef_fmod(double, double);
+IMPORT CONST Sleef_double2 Sleef_modf(double);
+
+IMPORT CONST double Sleef_lgamma_u10(double);
+IMPORT CONST double Sleef_tgamma_u10(double);
+IMPORT CONST double Sleef_erf_u10(double);
+IMPORT CONST double Sleef_erfc_u15(double);
+
+IMPORT CONST float Sleef_sinf_u35(float);
+IMPORT CONST float Sleef_cosf_u35(float);
+IMPORT CONST Sleef_float2 Sleef_sincosf_u35(float);
+IMPORT CONST float Sleef_tanf_u35(float);
+IMPORT CONST float Sleef_asinf_u35(float);
+IMPORT CONST float Sleef_acosf_u35(float);
+IMPORT CONST float Sleef_atanf_u35(float);
+IMPORT CONST float Sleef_atan2f_u35(float, float);
+IMPORT CONST float Sleef_logf_u35(float);
+IMPORT CONST float Sleef_cbrtf_u35(float);
+IMPORT CONST float Sleef_sinf_u10(float);
+IMPORT CONST float Sleef_cosf_u10(float);
+IMPORT CONST Sleef_float2 Sleef_sincosf_u10(float);
+IMPORT CONST float Sleef_fastsinf_u3500(float);
+IMPORT CONST float Sleef_fastcosf_u3500(float);
+IMPORT CONST float Sleef_tanf_u10(float);
+IMPORT CONST float Sleef_asinf_u10(float);
+IMPORT CONST float Sleef_acosf_u10(float);
+IMPORT CONST float Sleef_atanf_u10(float);
+IMPORT CONST float Sleef_atan2f_u10(float, float);
+IMPORT CONST float Sleef_logf_u10(float);
+IMPORT CONST float Sleef_cbrtf_u10(float);
+IMPORT CONST float Sleef_expf_u10(float);
+IMPORT CONST float Sleef_powf_u10(float, float);
+IMPORT CONST float Sleef_fastpowf_u3500(float, float);
+IMPORT CONST float Sleef_sinhf_u10(float);
+IMPORT CONST float Sleef_coshf_u10(float);
+IMPORT CONST float Sleef_tanhf_u10(float);
+IMPORT CONST float Sleef_sinhf_u35(float);
+IMPORT CONST float Sleef_coshf_u35(float);
+IMPORT CONST float Sleef_tanhf_u35(float);
+IMPORT CONST float Sleef_asinhf_u10(float);
+IMPORT CONST float Sleef_acoshf_u10(float);
+IMPORT CONST float Sleef_atanhf_u10(float);
+IMPORT CONST float Sleef_exp2f_u10(float);
+IMPORT CONST float Sleef_exp10f_u10(float);
+IMPORT CONST float Sleef_exp2f_u35(float);
+IMPORT CONST float Sleef_exp10f_u35(float);
+IMPORT CONST float Sleef_expm1f_u10(float);
+IMPORT CONST float Sleef_log10f_u10(float);
+IMPORT CONST float Sleef_log2f_u10(float);
+IMPORT CONST float Sleef_log2f_u35(float);
+IMPORT CONST float Sleef_log1pf_u10(float);
+IMPORT CONST Sleef_float2 Sleef_sincospif_u05(float);
+IMPORT CONST Sleef_float2 Sleef_sincospif_u35(float);
+IMPORT CONST float Sleef_sinpif_u05(float d);
+IMPORT CONST float Sleef_cospif_u05(float d);
+IMPORT CONST float Sleef_ldexpf(float, int);
+IMPORT CONST int Sleef_ilogbf(float);
+IMPORT CONST float Sleef_fmaf(float, float, float);
+IMPORT CONST float Sleef_sqrtf(float);
+IMPORT CONST float Sleef_sqrtf_u05(float);
+IMPORT CONST float Sleef_sqrtf_u35(float);
+
+IMPORT CONST float Sleef_hypotf_u05(float, float);
+IMPORT CONST float Sleef_hypotf_u35(float, float);
+
+IMPORT CONST float Sleef_fabsf(float);
+IMPORT CONST float Sleef_copysignf(float, float);
+IMPORT CONST float Sleef_fmaxf(float, float);
+IMPORT CONST float Sleef_fminf(float, float);
+IMPORT CONST float Sleef_fdimf(float, float);
+IMPORT CONST float Sleef_truncf(float);
+IMPORT CONST float Sleef_floorf(float);
+IMPORT CONST float Sleef_ceilf(float);
+IMPORT CONST float Sleef_roundf(float);
+IMPORT CONST float Sleef_rintf(float);
+IMPORT CONST float Sleef_nextafterf(float, float);
+IMPORT CONST float Sleef_frfrexpf(float);
+IMPORT CONST int Sleef_expfrexpf(float);
+IMPORT CONST float Sleef_fmodf(float, float);
+IMPORT CONST Sleef_float2 Sleef_modff(float);
+
+IMPORT CONST float Sleef_lgammaf_u10(float);
+IMPORT CONST float Sleef_tgammaf_u10(float);
+IMPORT CONST float Sleef_erff_u10(float);
+IMPORT CONST float Sleef_erfcf_u15(float);
+
+IMPORT CONST Sleef_longdouble2 Sleef_sincospil_u05(long double);
+IMPORT CONST Sleef_longdouble2 Sleef_sincospil_u35(long double);
+
+#if defined(Sleef_quad2_DEFINED)
+IMPORT CONST Sleef_quad2 Sleef_sincospiq_u05(Sleef_quad);
+IMPORT CONST Sleef_quad2 Sleef_sincospiq_u35(Sleef_quad);
+#endif
+#ifdef __SSE2__
+#define STRUCT_KEYWORD___SSE2__ struct
+
+#ifndef Sleef___m128d_2_DEFINED
+typedef STRUCT_KEYWORD___SSE2__ {
+  __m128d x, y;
+} Sleef___m128d_2;
+#define Sleef___m128d_2_DEFINED
+#endif
+
+IMPORT CONST __m128d Sleef_sind2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sind2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cosd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cinz_cosd2_u35(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincosd2_u35(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_cinz_sincosd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_tand2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cinz_tand2_u35(__m128d);
+IMPORT CONST __m128d Sleef_asind2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cinz_asind2_u35(__m128d);
+IMPORT CONST __m128d Sleef_acosd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cinz_acosd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_atand2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cinz_atand2_u35(__m128d);
+IMPORT CONST __m128d Sleef_atan2d2_u35(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_atan2d2_u35(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_logd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cinz_logd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cbrtd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cinz_cbrtd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_sind2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sind2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cosd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_cosd2_u10(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincosd2_u10(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_cinz_sincosd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_tand2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_tand2_u10(__m128d);
+IMPORT CONST __m128d Sleef_asind2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_asind2_u10(__m128d);
+IMPORT CONST __m128d Sleef_acosd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_acosd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_atand2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_atand2_u10(__m128d);
+IMPORT CONST __m128d Sleef_atan2d2_u10(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_atan2d2_u10(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_logd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_logd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cbrtd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_cbrtd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_expd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_expd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_powd2_u10(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_powd2_u10(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_sinhd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sinhd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_coshd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_coshd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_tanhd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_tanhd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_sinhd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sinhd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_coshd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cinz_coshd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_tanhd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cinz_tanhd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_fastsind2_u3500(__m128d);
+IMPORT CONST __m128d Sleef_cinz_fastsind2_u3500(__m128d);
+IMPORT CONST __m128d Sleef_fastcosd2_u3500(__m128d);
+IMPORT CONST __m128d Sleef_cinz_fastcosd2_u3500(__m128d);
+IMPORT CONST __m128d Sleef_fastpowd2_u3500(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fastpowd2_u3500(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_asinhd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_asinhd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_acoshd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_acoshd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_atanhd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_atanhd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_exp2d2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_exp2d2_u10(__m128d);
+IMPORT CONST __m128d Sleef_exp2d2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cinz_exp2d2_u35(__m128d);
+IMPORT CONST __m128d Sleef_exp10d2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_exp10d2_u10(__m128d);
+IMPORT CONST __m128d Sleef_exp10d2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cinz_exp10d2_u35(__m128d);
+IMPORT CONST __m128d Sleef_expm1d2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_expm1d2_u10(__m128d);
+IMPORT CONST __m128d Sleef_log10d2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_log10d2_u10(__m128d);
+IMPORT CONST __m128d Sleef_log2d2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_log2d2_u10(__m128d);
+IMPORT CONST __m128d Sleef_log2d2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cinz_log2d2_u35(__m128d);
+IMPORT CONST __m128d Sleef_log1pd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_log1pd2_u10(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincospid2_u05(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_cinz_sincospid2_u05(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincospid2_u35(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_cinz_sincospid2_u35(__m128d);
+IMPORT CONST __m128d Sleef_sinpid2_u05(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sinpid2_u05(__m128d);
+IMPORT CONST __m128d Sleef_cospid2_u05(__m128d);
+IMPORT CONST __m128d Sleef_cinz_cospid2_u05(__m128d);
+IMPORT CONST __m128d Sleef_ldexpd2(__m128d, __m128i);
+IMPORT CONST __m128d Sleef_cinz_ldexpd2(__m128d, __m128i);
+IMPORT CONST __m128i Sleef_ilogbd2(__m128d);
+IMPORT CONST __m128i Sleef_cinz_ilogbd2(__m128d);
+IMPORT CONST __m128d Sleef_fmad2(__m128d, __m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fmad2(__m128d, __m128d, __m128d);
+IMPORT CONST __m128d Sleef_sqrtd2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sqrtd2(__m128d);
+IMPORT CONST __m128d Sleef_sqrtd2_u05(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sqrtd2_u05(__m128d);
+IMPORT CONST __m128d Sleef_sqrtd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sqrtd2_u35(__m128d);
+IMPORT CONST __m128d Sleef_hypotd2_u05(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_hypotd2_u05(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_hypotd2_u35(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_hypotd2_u35(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fabsd2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_fabsd2(__m128d);
+IMPORT CONST __m128d Sleef_copysignd2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_copysignd2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fmaxd2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fmaxd2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fmind2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fmind2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fdimd2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fdimd2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_truncd2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_truncd2(__m128d);
+IMPORT CONST __m128d Sleef_floord2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_floord2(__m128d);
+IMPORT CONST __m128d Sleef_ceild2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_ceild2(__m128d);
+IMPORT CONST __m128d Sleef_roundd2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_roundd2(__m128d);
+IMPORT CONST __m128d Sleef_rintd2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_rintd2(__m128d);
+IMPORT CONST __m128d Sleef_nextafterd2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_nextafterd2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_frfrexpd2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_frfrexpd2(__m128d);
+IMPORT CONST __m128i Sleef_expfrexpd2(__m128d);
+IMPORT CONST __m128i Sleef_cinz_expfrexpd2(__m128d);
+IMPORT CONST __m128d Sleef_fmodd2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fmodd2(__m128d, __m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_modfd2(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_cinz_modfd2(__m128d);
+IMPORT CONST __m128d Sleef_lgammad2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_lgammad2_u10(__m128d);
+IMPORT CONST __m128d Sleef_tgammad2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_tgammad2_u10(__m128d);
+IMPORT CONST __m128d Sleef_erfd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_cinz_erfd2_u10(__m128d);
+IMPORT CONST __m128d Sleef_erfcd2_u15(__m128d);
+IMPORT CONST __m128d Sleef_cinz_erfcd2_u15(__m128d);
+IMPORT CONST int Sleef_getIntd2(int);
+IMPORT CONST void *Sleef_getPtrd2(int);
+
+#ifndef Sleef___m128_2_DEFINED
+typedef STRUCT_KEYWORD___SSE2__ {
+  __m128 x, y;
+} Sleef___m128_2;
+#define Sleef___m128_2_DEFINED
+#endif
+
+IMPORT CONST __m128 Sleef_sinf4_u35(__m128);
+IMPORT CONST __m128 Sleef_cinz_sinf4_u35(__m128);
+IMPORT CONST __m128 Sleef_cosf4_u35(__m128);
+IMPORT CONST __m128 Sleef_cinz_cosf4_u35(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincosf4_u35(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_cinz_sincosf4_u35(__m128);
+IMPORT CONST __m128 Sleef_tanf4_u35(__m128);
+IMPORT CONST __m128 Sleef_cinz_tanf4_u35(__m128);
+IMPORT CONST __m128 Sleef_asinf4_u35(__m128);
+IMPORT CONST __m128 Sleef_cinz_asinf4_u35(__m128);
+IMPORT CONST __m128 Sleef_acosf4_u35(__m128);
+IMPORT CONST __m128 Sleef_cinz_acosf4_u35(__m128);
+IMPORT CONST __m128 Sleef_atanf4_u35(__m128);
+IMPORT CONST __m128 Sleef_cinz_atanf4_u35(__m128);
+IMPORT CONST __m128 Sleef_atan2f4_u35(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_atan2f4_u35(__m128, __m128);
+IMPORT CONST __m128 Sleef_logf4_u35(__m128);
+IMPORT CONST __m128 Sleef_cinz_logf4_u35(__m128);
+IMPORT CONST __m128 Sleef_cbrtf4_u35(__m128);
+IMPORT CONST __m128 Sleef_cinz_cbrtf4_u35(__m128);
+IMPORT CONST __m128 Sleef_sinf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_sinf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cosf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_cosf4_u10(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincosf4_u10(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_cinz_sincosf4_u10(__m128);
+IMPORT CONST __m128 Sleef_tanf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_tanf4_u10(__m128);
+IMPORT CONST __m128 Sleef_asinf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_asinf4_u10(__m128);
+IMPORT CONST __m128 Sleef_acosf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_acosf4_u10(__m128);
+IMPORT CONST __m128 Sleef_atanf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_atanf4_u10(__m128);
+IMPORT CONST __m128 Sleef_atan2f4_u10(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_atan2f4_u10(__m128, __m128);
+IMPORT CONST __m128 Sleef_logf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_logf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cbrtf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_cbrtf4_u10(__m128);
+IMPORT CONST __m128 Sleef_expf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_expf4_u10(__m128);
+IMPORT CONST __m128 Sleef_powf4_u10(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_powf4_u10(__m128, __m128);
+IMPORT CONST __m128 Sleef_sinhf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_sinhf4_u10(__m128);
+IMPORT CONST __m128 Sleef_coshf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_coshf4_u10(__m128);
+IMPORT CONST __m128 Sleef_tanhf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_tanhf4_u10(__m128);
+IMPORT CONST __m128 Sleef_sinhf4_u35(__m128);
+IMPORT CONST __m128 Sleef_cinz_sinhf4_u35(__m128);
+IMPORT CONST __m128 Sleef_coshf4_u35(__m128);
+IMPORT CONST __m128 Sleef_cinz_coshf4_u35(__m128);
+IMPORT CONST __m128 Sleef_tanhf4_u35(__m128);
+IMPORT CONST __m128 Sleef_cinz_tanhf4_u35(__m128);
+IMPORT CONST __m128 Sleef_fastsinf4_u3500(__m128);
+IMPORT CONST __m128 Sleef_cinz_fastsinf4_u3500(__m128);
+IMPORT CONST __m128 Sleef_fastcosf4_u3500(__m128);
+IMPORT CONST __m128 Sleef_cinz_fastcosf4_u3500(__m128);
+IMPORT CONST __m128 Sleef_fastpowf4_u3500(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fastpowf4_u3500(__m128, __m128);
+IMPORT CONST __m128 Sleef_asinhf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_asinhf4_u10(__m128);
+IMPORT CONST __m128 Sleef_acoshf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_acoshf4_u10(__m128);
+IMPORT CONST __m128 Sleef_atanhf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_atanhf4_u10(__m128);
+IMPORT CONST __m128 Sleef_exp2f4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_exp2f4_u10(__m128);
+IMPORT CONST __m128 Sleef_exp2f4_u35(__m128);
+IMPORT CONST __m128 Sleef_cinz_exp2f4_u35(__m128);
+IMPORT CONST __m128 Sleef_exp10f4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_exp10f4_u10(__m128);
+IMPORT CONST __m128 Sleef_exp10f4_u35(__m128);
+IMPORT CONST __m128 Sleef_cinz_exp10f4_u35(__m128);
+IMPORT CONST __m128 Sleef_expm1f4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_expm1f4_u10(__m128);
+IMPORT CONST __m128 Sleef_log10f4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_log10f4_u10(__m128);
+IMPORT CONST __m128 Sleef_log2f4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_log2f4_u10(__m128);
+IMPORT CONST __m128 Sleef_log2f4_u35(__m128);
+IMPORT CONST __m128 Sleef_cinz_log2f4_u35(__m128);
+IMPORT CONST __m128 Sleef_log1pf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_log1pf4_u10(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincospif4_u05(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_cinz_sincospif4_u05(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincospif4_u35(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_cinz_sincospif4_u35(__m128);
+IMPORT CONST __m128 Sleef_sinpif4_u05(__m128);
+IMPORT CONST __m128 Sleef_cinz_sinpif4_u05(__m128);
+IMPORT CONST __m128 Sleef_cospif4_u05(__m128);
+IMPORT CONST __m128 Sleef_cinz_cospif4_u05(__m128);
+IMPORT CONST __m128 Sleef_fmaf4(__m128, __m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fmaf4(__m128, __m128, __m128);
+IMPORT CONST __m128 Sleef_sqrtf4(__m128);
+IMPORT CONST __m128 Sleef_cinz_sqrtf4(__m128);
+IMPORT CONST __m128 Sleef_sqrtf4_u05(__m128);
+IMPORT CONST __m128 Sleef_cinz_sqrtf4_u05(__m128);
+IMPORT CONST __m128 Sleef_sqrtf4_u35(__m128);
+IMPORT CONST __m128 Sleef_cinz_sqrtf4_u35(__m128);
+IMPORT CONST __m128 Sleef_hypotf4_u05(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_hypotf4_u05(__m128, __m128);
+IMPORT CONST __m128 Sleef_hypotf4_u35(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_hypotf4_u35(__m128, __m128);
+IMPORT CONST __m128 Sleef_fabsf4(__m128);
+IMPORT CONST __m128 Sleef_cinz_fabsf4(__m128);
+IMPORT CONST __m128 Sleef_copysignf4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_copysignf4(__m128, __m128);
+IMPORT CONST __m128 Sleef_fmaxf4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fmaxf4(__m128, __m128);
+IMPORT CONST __m128 Sleef_fminf4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fminf4(__m128, __m128);
+IMPORT CONST __m128 Sleef_fdimf4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fdimf4(__m128, __m128);
+IMPORT CONST __m128 Sleef_truncf4(__m128);
+IMPORT CONST __m128 Sleef_cinz_truncf4(__m128);
+IMPORT CONST __m128 Sleef_floorf4(__m128);
+IMPORT CONST __m128 Sleef_cinz_floorf4(__m128);
+IMPORT CONST __m128 Sleef_ceilf4(__m128);
+IMPORT CONST __m128 Sleef_cinz_ceilf4(__m128);
+IMPORT CONST __m128 Sleef_roundf4(__m128);
+IMPORT CONST __m128 Sleef_cinz_roundf4(__m128);
+IMPORT CONST __m128 Sleef_rintf4(__m128);
+IMPORT CONST __m128 Sleef_cinz_rintf4(__m128);
+IMPORT CONST __m128 Sleef_nextafterf4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_nextafterf4(__m128, __m128);
+IMPORT CONST __m128 Sleef_frfrexpf4(__m128);
+IMPORT CONST __m128 Sleef_cinz_frfrexpf4(__m128);
+IMPORT CONST __m128 Sleef_fmodf4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fmodf4(__m128, __m128);
+IMPORT CONST Sleef___m128_2 Sleef_modff4(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_cinz_modff4(__m128);
+IMPORT CONST __m128 Sleef_lgammaf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_lgammaf4_u10(__m128);
+IMPORT CONST __m128 Sleef_tgammaf4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_tgammaf4_u10(__m128);
+IMPORT CONST __m128 Sleef_erff4_u10(__m128);
+IMPORT CONST __m128 Sleef_cinz_erff4_u10(__m128);
+IMPORT CONST __m128 Sleef_erfcf4_u15(__m128);
+IMPORT CONST __m128 Sleef_cinz_erfcf4_u15(__m128);
+IMPORT CONST int Sleef_getIntf4(int);
+IMPORT CONST int Sleef_cinz_getIntf4(int);
+IMPORT CONST void *Sleef_getPtrf4(int);
+IMPORT CONST void *Sleef_cinz_getPtrf4(int);
+#endif
+#ifdef __SSE2__
+#define STRUCT_KEYWORD___SSE2__ struct
+
+#ifndef Sleef___m128d_2_DEFINED
+typedef STRUCT_KEYWORD___SSE2__ {
+  __m128d x, y;
+} Sleef___m128d_2;
+#define Sleef___m128d_2_DEFINED
+#endif
+
+IMPORT CONST __m128d Sleef_sind2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sind2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cosd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_cosd2_u35sse2(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincosd2_u35sse2(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_cinz_sincosd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_tand2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_tand2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_asind2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_asind2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_acosd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_acosd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_atand2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_atand2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_atan2d2_u35sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_atan2d2_u35sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_logd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_logd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cbrtd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_cbrtd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_sind2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sind2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cosd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_cosd2_u10sse2(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincosd2_u10sse2(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_cinz_sincosd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_tand2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_tand2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_asind2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_asind2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_acosd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_acosd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_atand2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_atand2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_atan2d2_u10sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_atan2d2_u10sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_logd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_logd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cbrtd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_cbrtd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_expd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_expd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_powd2_u10sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_powd2_u10sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_sinhd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sinhd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_coshd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_coshd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_tanhd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_tanhd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_sinhd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sinhd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_coshd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_coshd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_tanhd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_tanhd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_fastsind2_u3500sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_fastsind2_u3500sse2(__m128d);
+IMPORT CONST __m128d Sleef_fastcosd2_u3500sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_fastcosd2_u3500sse2(__m128d);
+IMPORT CONST __m128d Sleef_fastpowd2_u3500sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fastpowd2_u3500sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_asinhd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_asinhd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_acoshd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_acoshd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_atanhd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_atanhd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_exp2d2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_exp2d2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_exp2d2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_exp2d2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_exp10d2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_exp10d2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_exp10d2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_exp10d2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_expm1d2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_expm1d2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_log10d2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_log10d2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_log2d2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_log2d2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_log2d2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_log2d2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_log1pd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_log1pd2_u10sse2(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincospid2_u05sse2(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_cinz_sincospid2_u05sse2(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincospid2_u35sse2(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_cinz_sincospid2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_sinpid2_u05sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sinpid2_u05sse2(__m128d);
+IMPORT CONST __m128d Sleef_cospid2_u05sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_cospid2_u05sse2(__m128d);
+IMPORT CONST __m128d Sleef_ldexpd2_sse2(__m128d, __m128i);
+IMPORT CONST __m128d Sleef_cinz_ldexpd2_sse2(__m128d, __m128i);
+IMPORT CONST __m128i Sleef_ilogbd2_sse2(__m128d);
+IMPORT CONST __m128i Sleef_cinz_ilogbd2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_fmad2_sse2(__m128d, __m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fmad2_sse2(__m128d, __m128d, __m128d);
+IMPORT CONST __m128d Sleef_sqrtd2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sqrtd2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_sqrtd2_u05sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sqrtd2_u05sse2(__m128d);
+IMPORT CONST __m128d Sleef_sqrtd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sqrtd2_u35sse2(__m128d);
+IMPORT CONST __m128d Sleef_hypotd2_u05sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_hypotd2_u05sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_hypotd2_u35sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_hypotd2_u35sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fabsd2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_fabsd2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_copysignd2_sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_copysignd2_sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fmaxd2_sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fmaxd2_sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fmind2_sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fmind2_sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fdimd2_sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fdimd2_sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_truncd2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_truncd2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_floord2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_floord2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_ceild2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_ceild2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_roundd2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_roundd2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_rintd2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_rintd2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_nextafterd2_sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_nextafterd2_sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_frfrexpd2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_frfrexpd2_sse2(__m128d);
+IMPORT CONST __m128i Sleef_expfrexpd2_sse2(__m128d);
+IMPORT CONST __m128i Sleef_cinz_expfrexpd2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_fmodd2_sse2(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fmodd2_sse2(__m128d, __m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_modfd2_sse2(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_cinz_modfd2_sse2(__m128d);
+IMPORT CONST __m128d Sleef_lgammad2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_lgammad2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_tgammad2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_tgammad2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_erfd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_erfd2_u10sse2(__m128d);
+IMPORT CONST __m128d Sleef_erfcd2_u15sse2(__m128d);
+IMPORT CONST __m128d Sleef_cinz_erfcd2_u15sse2(__m128d);
+IMPORT CONST int Sleef_getIntd2_sse2(int);
+IMPORT CONST void *Sleef_getPtrd2_sse2(int);
+
+#ifndef Sleef___m128_2_DEFINED
+typedef STRUCT_KEYWORD___SSE2__ {
+  __m128 x, y;
+} Sleef___m128_2;
+#define Sleef___m128_2_DEFINED
+#endif
+
+IMPORT CONST __m128 Sleef_sinf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_sinf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cosf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_cosf4_u35sse2(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincosf4_u35sse2(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_cinz_sincosf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_tanf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_tanf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_asinf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_asinf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_acosf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_acosf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_atanf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_atanf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_atan2f4_u35sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_atan2f4_u35sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_logf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_logf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cbrtf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_cbrtf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_sinf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_sinf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cosf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_cosf4_u10sse2(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincosf4_u10sse2(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_cinz_sincosf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_tanf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_tanf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_asinf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_asinf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_acosf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_acosf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_atanf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_atanf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_atan2f4_u10sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_atan2f4_u10sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_logf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_logf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cbrtf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_cbrtf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_expf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_expf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_powf4_u10sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_powf4_u10sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_sinhf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_sinhf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_coshf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_coshf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_tanhf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_tanhf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_sinhf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_sinhf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_coshf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_coshf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_tanhf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_tanhf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_fastsinf4_u3500sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_fastsinf4_u3500sse2(__m128);
+IMPORT CONST __m128 Sleef_fastcosf4_u3500sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_fastcosf4_u3500sse2(__m128);
+IMPORT CONST __m128 Sleef_fastpowf4_u3500sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fastpowf4_u3500sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_asinhf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_asinhf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_acoshf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_acoshf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_atanhf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_atanhf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_exp2f4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_exp2f4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_exp2f4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_exp2f4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_exp10f4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_exp10f4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_exp10f4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_exp10f4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_expm1f4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_expm1f4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_log10f4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_log10f4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_log2f4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_log2f4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_log2f4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_log2f4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_log1pf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_log1pf4_u10sse2(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincospif4_u05sse2(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_cinz_sincospif4_u05sse2(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincospif4_u35sse2(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_cinz_sincospif4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_sinpif4_u05sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_sinpif4_u05sse2(__m128);
+IMPORT CONST __m128 Sleef_cospif4_u05sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_cospif4_u05sse2(__m128);
+IMPORT CONST __m128 Sleef_fmaf4_sse2(__m128, __m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fmaf4_sse2(__m128, __m128, __m128);
+IMPORT CONST __m128 Sleef_sqrtf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_sqrtf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_sqrtf4_u05sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_sqrtf4_u05sse2(__m128);
+IMPORT CONST __m128 Sleef_sqrtf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_sqrtf4_u35sse2(__m128);
+IMPORT CONST __m128 Sleef_hypotf4_u05sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_hypotf4_u05sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_hypotf4_u35sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_hypotf4_u35sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_fabsf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_fabsf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_copysignf4_sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_copysignf4_sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_fmaxf4_sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fmaxf4_sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_fminf4_sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fminf4_sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_fdimf4_sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fdimf4_sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_truncf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_truncf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_floorf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_floorf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_ceilf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_ceilf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_roundf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_roundf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_rintf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_rintf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_nextafterf4_sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_nextafterf4_sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_frfrexpf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_frfrexpf4_sse2(__m128);
+IMPORT CONST __m128 Sleef_fmodf4_sse2(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fmodf4_sse2(__m128, __m128);
+IMPORT CONST Sleef___m128_2 Sleef_modff4_sse2(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_cinz_modff4_sse2(__m128);
+IMPORT CONST __m128 Sleef_lgammaf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_lgammaf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_tgammaf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_tgammaf4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_erff4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_erff4_u10sse2(__m128);
+IMPORT CONST __m128 Sleef_erfcf4_u15sse2(__m128);
+IMPORT CONST __m128 Sleef_cinz_erfcf4_u15sse2(__m128);
+IMPORT CONST int Sleef_getIntf4_sse2(int);
+IMPORT CONST int Sleef_cinz_getIntf4_sse2(int);
+IMPORT CONST void *Sleef_getPtrf4_sse2(int);
+IMPORT CONST void *Sleef_cinz_getPtrf4_sse2(int);
+#endif
+#ifdef __SSE2__
+#define STRUCT_KEYWORD___SSE2__ struct
+
+#ifndef Sleef___m128d_2_DEFINED
+typedef STRUCT_KEYWORD___SSE2__ {
+  __m128d x, y;
+} Sleef___m128d_2;
+#define Sleef___m128d_2_DEFINED
+#endif
+
+IMPORT CONST __m128d Sleef_sind2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sind2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cosd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_cosd2_u35sse4(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincosd2_u35sse4(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_cinz_sincosd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_tand2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_tand2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_asind2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_asind2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_acosd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_acosd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_atand2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_atand2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_atan2d2_u35sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_atan2d2_u35sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_logd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_logd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cbrtd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_cbrtd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_sind2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sind2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cosd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_cosd2_u10sse4(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincosd2_u10sse4(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_cinz_sincosd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_tand2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_tand2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_asind2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_asind2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_acosd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_acosd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_atand2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_atand2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_atan2d2_u10sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_atan2d2_u10sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_logd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_logd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cbrtd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_cbrtd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_expd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_expd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_powd2_u10sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_powd2_u10sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_sinhd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sinhd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_coshd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_coshd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_tanhd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_tanhd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_sinhd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sinhd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_coshd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_coshd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_tanhd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_tanhd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_fastsind2_u3500sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_fastsind2_u3500sse4(__m128d);
+IMPORT CONST __m128d Sleef_fastcosd2_u3500sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_fastcosd2_u3500sse4(__m128d);
+IMPORT CONST __m128d Sleef_fastpowd2_u3500sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fastpowd2_u3500sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_asinhd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_asinhd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_acoshd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_acoshd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_atanhd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_atanhd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_exp2d2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_exp2d2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_exp2d2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_exp2d2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_exp10d2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_exp10d2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_exp10d2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_exp10d2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_expm1d2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_expm1d2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_log10d2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_log10d2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_log2d2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_log2d2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_log2d2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_log2d2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_log1pd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_log1pd2_u10sse4(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincospid2_u05sse4(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_cinz_sincospid2_u05sse4(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincospid2_u35sse4(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_cinz_sincospid2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_sinpid2_u05sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sinpid2_u05sse4(__m128d);
+IMPORT CONST __m128d Sleef_cospid2_u05sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_cospid2_u05sse4(__m128d);
+IMPORT CONST __m128d Sleef_ldexpd2_sse4(__m128d, __m128i);
+IMPORT CONST __m128d Sleef_cinz_ldexpd2_sse4(__m128d, __m128i);
+IMPORT CONST __m128i Sleef_ilogbd2_sse4(__m128d);
+IMPORT CONST __m128i Sleef_cinz_ilogbd2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_fmad2_sse4(__m128d, __m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fmad2_sse4(__m128d, __m128d, __m128d);
+IMPORT CONST __m128d Sleef_sqrtd2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sqrtd2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_sqrtd2_u05sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sqrtd2_u05sse4(__m128d);
+IMPORT CONST __m128d Sleef_sqrtd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_sqrtd2_u35sse4(__m128d);
+IMPORT CONST __m128d Sleef_hypotd2_u05sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_hypotd2_u05sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_hypotd2_u35sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_hypotd2_u35sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fabsd2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_fabsd2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_copysignd2_sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_copysignd2_sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fmaxd2_sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fmaxd2_sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fmind2_sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fmind2_sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fdimd2_sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fdimd2_sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_truncd2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_truncd2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_floord2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_floord2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_ceild2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_ceild2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_roundd2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_roundd2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_rintd2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_rintd2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_nextafterd2_sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_nextafterd2_sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_frfrexpd2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_frfrexpd2_sse4(__m128d);
+IMPORT CONST __m128i Sleef_expfrexpd2_sse4(__m128d);
+IMPORT CONST __m128i Sleef_cinz_expfrexpd2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_fmodd2_sse4(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_cinz_fmodd2_sse4(__m128d, __m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_modfd2_sse4(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_cinz_modfd2_sse4(__m128d);
+IMPORT CONST __m128d Sleef_lgammad2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_lgammad2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_tgammad2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_tgammad2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_erfd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_erfd2_u10sse4(__m128d);
+IMPORT CONST __m128d Sleef_erfcd2_u15sse4(__m128d);
+IMPORT CONST __m128d Sleef_cinz_erfcd2_u15sse4(__m128d);
+IMPORT CONST int Sleef_getIntd2_sse4(int);
+IMPORT CONST void *Sleef_getPtrd2_sse4(int);
+
+#ifndef Sleef___m128_2_DEFINED
+typedef STRUCT_KEYWORD___SSE2__ {
+  __m128 x, y;
+} Sleef___m128_2;
+#define Sleef___m128_2_DEFINED
+#endif
+
+IMPORT CONST __m128 Sleef_sinf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_sinf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cosf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_cosf4_u35sse4(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincosf4_u35sse4(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_cinz_sincosf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_tanf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_tanf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_asinf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_asinf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_acosf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_acosf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_atanf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_atanf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_atan2f4_u35sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_atan2f4_u35sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_logf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_logf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cbrtf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_cbrtf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_sinf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_sinf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cosf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_cosf4_u10sse4(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincosf4_u10sse4(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_cinz_sincosf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_tanf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_tanf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_asinf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_asinf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_acosf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_acosf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_atanf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_atanf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_atan2f4_u10sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_atan2f4_u10sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_logf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_logf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cbrtf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_cbrtf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_expf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_expf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_powf4_u10sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_powf4_u10sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_sinhf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_sinhf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_coshf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_coshf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_tanhf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_tanhf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_sinhf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_sinhf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_coshf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_coshf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_tanhf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_tanhf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_fastsinf4_u3500sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_fastsinf4_u3500sse4(__m128);
+IMPORT CONST __m128 Sleef_fastcosf4_u3500sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_fastcosf4_u3500sse4(__m128);
+IMPORT CONST __m128 Sleef_fastpowf4_u3500sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fastpowf4_u3500sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_asinhf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_asinhf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_acoshf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_acoshf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_atanhf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_atanhf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_exp2f4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_exp2f4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_exp2f4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_exp2f4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_exp10f4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_exp10f4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_exp10f4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_exp10f4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_expm1f4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_expm1f4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_log10f4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_log10f4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_log2f4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_log2f4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_log2f4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_log2f4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_log1pf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_log1pf4_u10sse4(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincospif4_u05sse4(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_cinz_sincospif4_u05sse4(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincospif4_u35sse4(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_cinz_sincospif4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_sinpif4_u05sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_sinpif4_u05sse4(__m128);
+IMPORT CONST __m128 Sleef_cospif4_u05sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_cospif4_u05sse4(__m128);
+IMPORT CONST __m128 Sleef_fmaf4_sse4(__m128, __m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fmaf4_sse4(__m128, __m128, __m128);
+IMPORT CONST __m128 Sleef_sqrtf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_sqrtf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_sqrtf4_u05sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_sqrtf4_u05sse4(__m128);
+IMPORT CONST __m128 Sleef_sqrtf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_sqrtf4_u35sse4(__m128);
+IMPORT CONST __m128 Sleef_hypotf4_u05sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_hypotf4_u05sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_hypotf4_u35sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_hypotf4_u35sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_fabsf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_fabsf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_copysignf4_sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_copysignf4_sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_fmaxf4_sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fmaxf4_sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_fminf4_sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fminf4_sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_fdimf4_sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fdimf4_sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_truncf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_truncf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_floorf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_floorf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_ceilf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_ceilf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_roundf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_roundf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_rintf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_rintf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_nextafterf4_sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_nextafterf4_sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_frfrexpf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_frfrexpf4_sse4(__m128);
+IMPORT CONST __m128 Sleef_fmodf4_sse4(__m128, __m128);
+IMPORT CONST __m128 Sleef_cinz_fmodf4_sse4(__m128, __m128);
+IMPORT CONST Sleef___m128_2 Sleef_modff4_sse4(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_cinz_modff4_sse4(__m128);
+IMPORT CONST __m128 Sleef_lgammaf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_lgammaf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_tgammaf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_tgammaf4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_erff4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_erff4_u10sse4(__m128);
+IMPORT CONST __m128 Sleef_erfcf4_u15sse4(__m128);
+IMPORT CONST __m128 Sleef_cinz_erfcf4_u15sse4(__m128);
+IMPORT CONST int Sleef_getIntf4_sse4(int);
+IMPORT CONST int Sleef_cinz_getIntf4_sse4(int);
+IMPORT CONST void *Sleef_getPtrf4_sse4(int);
+IMPORT CONST void *Sleef_cinz_getPtrf4_sse4(int);
+#endif
+#ifdef __AVX__
+#define STRUCT_KEYWORD___AVX__ struct
+
+#ifndef Sleef___m256d_2_DEFINED
+typedef STRUCT_KEYWORD___AVX__ {
+  __m256d x, y;
+} Sleef___m256d_2;
+#define Sleef___m256d_2_DEFINED
+#endif
+
+IMPORT CONST __m256d Sleef_sind4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sind4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cosd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cinz_cosd4_u35(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincosd4_u35(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_cinz_sincosd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_tand4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cinz_tand4_u35(__m256d);
+IMPORT CONST __m256d Sleef_asind4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cinz_asind4_u35(__m256d);
+IMPORT CONST __m256d Sleef_acosd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cinz_acosd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_atand4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cinz_atand4_u35(__m256d);
+IMPORT CONST __m256d Sleef_atan2d4_u35(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_atan2d4_u35(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_logd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cinz_logd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cbrtd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cinz_cbrtd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_sind4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sind4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cosd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_cosd4_u10(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincosd4_u10(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_cinz_sincosd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_tand4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_tand4_u10(__m256d);
+IMPORT CONST __m256d Sleef_asind4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_asind4_u10(__m256d);
+IMPORT CONST __m256d Sleef_acosd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_acosd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_atand4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_atand4_u10(__m256d);
+IMPORT CONST __m256d Sleef_atan2d4_u10(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_atan2d4_u10(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_logd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_logd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cbrtd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_cbrtd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_expd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_expd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_powd4_u10(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_powd4_u10(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_sinhd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sinhd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_coshd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_coshd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_tanhd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_tanhd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_sinhd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sinhd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_coshd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cinz_coshd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_tanhd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cinz_tanhd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_fastsind4_u3500(__m256d);
+IMPORT CONST __m256d Sleef_cinz_fastsind4_u3500(__m256d);
+IMPORT CONST __m256d Sleef_fastcosd4_u3500(__m256d);
+IMPORT CONST __m256d Sleef_cinz_fastcosd4_u3500(__m256d);
+IMPORT CONST __m256d Sleef_fastpowd4_u3500(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_fastpowd4_u3500(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_asinhd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_asinhd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_acoshd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_acoshd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_atanhd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_atanhd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_exp2d4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_exp2d4_u10(__m256d);
+IMPORT CONST __m256d Sleef_exp2d4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cinz_exp2d4_u35(__m256d);
+IMPORT CONST __m256d Sleef_exp10d4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_exp10d4_u10(__m256d);
+IMPORT CONST __m256d Sleef_exp10d4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cinz_exp10d4_u35(__m256d);
+IMPORT CONST __m256d Sleef_expm1d4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_expm1d4_u10(__m256d);
+IMPORT CONST __m256d Sleef_log10d4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_log10d4_u10(__m256d);
+IMPORT CONST __m256d Sleef_log2d4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_log2d4_u10(__m256d);
+IMPORT CONST __m256d Sleef_log2d4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cinz_log2d4_u35(__m256d);
+IMPORT CONST __m256d Sleef_log1pd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_log1pd4_u10(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincospid4_u05(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_cinz_sincospid4_u05(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincospid4_u35(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_cinz_sincospid4_u35(__m256d);
+IMPORT CONST __m256d Sleef_sinpid4_u05(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sinpid4_u05(__m256d);
+IMPORT CONST __m256d Sleef_cospid4_u05(__m256d);
+IMPORT CONST __m256d Sleef_cinz_cospid4_u05(__m256d);
+IMPORT CONST __m256d Sleef_ldexpd4(__m256d, __m128i);
+IMPORT CONST __m256d Sleef_cinz_ldexpd4(__m256d, __m128i);
+IMPORT CONST __m128i Sleef_ilogbd4(__m256d);
+IMPORT CONST __m128i Sleef_cinz_ilogbd4(__m256d);
+IMPORT CONST __m256d Sleef_fmad4(__m256d, __m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_fmad4(__m256d, __m256d, __m256d);
+IMPORT CONST __m256d Sleef_sqrtd4(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sqrtd4(__m256d);
+IMPORT CONST __m256d Sleef_sqrtd4_u05(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sqrtd4_u05(__m256d);
+IMPORT CONST __m256d Sleef_sqrtd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sqrtd4_u35(__m256d);
+IMPORT CONST __m256d Sleef_hypotd4_u05(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_hypotd4_u05(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_hypotd4_u35(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_hypotd4_u35(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fabsd4(__m256d);
+IMPORT CONST __m256d Sleef_cinz_fabsd4(__m256d);
+IMPORT CONST __m256d Sleef_copysignd4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_copysignd4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fmaxd4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_fmaxd4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fmind4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_fmind4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fdimd4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_fdimd4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_truncd4(__m256d);
+IMPORT CONST __m256d Sleef_cinz_truncd4(__m256d);
+IMPORT CONST __m256d Sleef_floord4(__m256d);
+IMPORT CONST __m256d Sleef_cinz_floord4(__m256d);
+IMPORT CONST __m256d Sleef_ceild4(__m256d);
+IMPORT CONST __m256d Sleef_cinz_ceild4(__m256d);
+IMPORT CONST __m256d Sleef_roundd4(__m256d);
+IMPORT CONST __m256d Sleef_cinz_roundd4(__m256d);
+IMPORT CONST __m256d Sleef_rintd4(__m256d);
+IMPORT CONST __m256d Sleef_cinz_rintd4(__m256d);
+IMPORT CONST __m256d Sleef_nextafterd4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_nextafterd4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_frfrexpd4(__m256d);
+IMPORT CONST __m256d Sleef_cinz_frfrexpd4(__m256d);
+IMPORT CONST __m128i Sleef_expfrexpd4(__m256d);
+IMPORT CONST __m128i Sleef_cinz_expfrexpd4(__m256d);
+IMPORT CONST __m256d Sleef_fmodd4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_fmodd4(__m256d, __m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_modfd4(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_cinz_modfd4(__m256d);
+IMPORT CONST __m256d Sleef_lgammad4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_lgammad4_u10(__m256d);
+IMPORT CONST __m256d Sleef_tgammad4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_tgammad4_u10(__m256d);
+IMPORT CONST __m256d Sleef_erfd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_cinz_erfd4_u10(__m256d);
+IMPORT CONST __m256d Sleef_erfcd4_u15(__m256d);
+IMPORT CONST __m256d Sleef_cinz_erfcd4_u15(__m256d);
+IMPORT CONST int Sleef_getIntd4(int);
+IMPORT CONST void *Sleef_getPtrd4(int);
+
+#ifndef Sleef___m256_2_DEFINED
+typedef STRUCT_KEYWORD___AVX__ {
+  __m256 x, y;
+} Sleef___m256_2;
+#define Sleef___m256_2_DEFINED
+#endif
+
+IMPORT CONST __m256 Sleef_sinf8_u35(__m256);
+IMPORT CONST __m256 Sleef_cinz_sinf8_u35(__m256);
+IMPORT CONST __m256 Sleef_cosf8_u35(__m256);
+IMPORT CONST __m256 Sleef_cinz_cosf8_u35(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincosf8_u35(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_cinz_sincosf8_u35(__m256);
+IMPORT CONST __m256 Sleef_tanf8_u35(__m256);
+IMPORT CONST __m256 Sleef_cinz_tanf8_u35(__m256);
+IMPORT CONST __m256 Sleef_asinf8_u35(__m256);
+IMPORT CONST __m256 Sleef_cinz_asinf8_u35(__m256);
+IMPORT CONST __m256 Sleef_acosf8_u35(__m256);
+IMPORT CONST __m256 Sleef_cinz_acosf8_u35(__m256);
+IMPORT CONST __m256 Sleef_atanf8_u35(__m256);
+IMPORT CONST __m256 Sleef_cinz_atanf8_u35(__m256);
+IMPORT CONST __m256 Sleef_atan2f8_u35(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_atan2f8_u35(__m256, __m256);
+IMPORT CONST __m256 Sleef_logf8_u35(__m256);
+IMPORT CONST __m256 Sleef_cinz_logf8_u35(__m256);
+IMPORT CONST __m256 Sleef_cbrtf8_u35(__m256);
+IMPORT CONST __m256 Sleef_cinz_cbrtf8_u35(__m256);
+IMPORT CONST __m256 Sleef_sinf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_sinf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cosf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_cosf8_u10(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincosf8_u10(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_cinz_sincosf8_u10(__m256);
+IMPORT CONST __m256 Sleef_tanf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_tanf8_u10(__m256);
+IMPORT CONST __m256 Sleef_asinf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_asinf8_u10(__m256);
+IMPORT CONST __m256 Sleef_acosf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_acosf8_u10(__m256);
+IMPORT CONST __m256 Sleef_atanf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_atanf8_u10(__m256);
+IMPORT CONST __m256 Sleef_atan2f8_u10(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_atan2f8_u10(__m256, __m256);
+IMPORT CONST __m256 Sleef_logf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_logf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cbrtf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_cbrtf8_u10(__m256);
+IMPORT CONST __m256 Sleef_expf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_expf8_u10(__m256);
+IMPORT CONST __m256 Sleef_powf8_u10(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_powf8_u10(__m256, __m256);
+IMPORT CONST __m256 Sleef_sinhf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_sinhf8_u10(__m256);
+IMPORT CONST __m256 Sleef_coshf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_coshf8_u10(__m256);
+IMPORT CONST __m256 Sleef_tanhf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_tanhf8_u10(__m256);
+IMPORT CONST __m256 Sleef_sinhf8_u35(__m256);
+IMPORT CONST __m256 Sleef_cinz_sinhf8_u35(__m256);
+IMPORT CONST __m256 Sleef_coshf8_u35(__m256);
+IMPORT CONST __m256 Sleef_cinz_coshf8_u35(__m256);
+IMPORT CONST __m256 Sleef_tanhf8_u35(__m256);
+IMPORT CONST __m256 Sleef_cinz_tanhf8_u35(__m256);
+IMPORT CONST __m256 Sleef_fastsinf8_u3500(__m256);
+IMPORT CONST __m256 Sleef_cinz_fastsinf8_u3500(__m256);
+IMPORT CONST __m256 Sleef_fastcosf8_u3500(__m256);
+IMPORT CONST __m256 Sleef_cinz_fastcosf8_u3500(__m256);
+IMPORT CONST __m256 Sleef_fastpowf8_u3500(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_fastpowf8_u3500(__m256, __m256);
+IMPORT CONST __m256 Sleef_asinhf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_asinhf8_u10(__m256);
+IMPORT CONST __m256 Sleef_acoshf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_acoshf8_u10(__m256);
+IMPORT CONST __m256 Sleef_atanhf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_atanhf8_u10(__m256);
+IMPORT CONST __m256 Sleef_exp2f8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_exp2f8_u10(__m256);
+IMPORT CONST __m256 Sleef_exp2f8_u35(__m256);
+IMPORT CONST __m256 Sleef_cinz_exp2f8_u35(__m256);
+IMPORT CONST __m256 Sleef_exp10f8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_exp10f8_u10(__m256);
+IMPORT CONST __m256 Sleef_exp10f8_u35(__m256);
+IMPORT CONST __m256 Sleef_cinz_exp10f8_u35(__m256);
+IMPORT CONST __m256 Sleef_expm1f8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_expm1f8_u10(__m256);
+IMPORT CONST __m256 Sleef_log10f8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_log10f8_u10(__m256);
+IMPORT CONST __m256 Sleef_log2f8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_log2f8_u10(__m256);
+IMPORT CONST __m256 Sleef_log2f8_u35(__m256);
+IMPORT CONST __m256 Sleef_cinz_log2f8_u35(__m256);
+IMPORT CONST __m256 Sleef_log1pf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_log1pf8_u10(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincospif8_u05(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_cinz_sincospif8_u05(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincospif8_u35(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_cinz_sincospif8_u35(__m256);
+IMPORT CONST __m256 Sleef_sinpif8_u05(__m256);
+IMPORT CONST __m256 Sleef_cinz_sinpif8_u05(__m256);
+IMPORT CONST __m256 Sleef_cospif8_u05(__m256);
+IMPORT CONST __m256 Sleef_cinz_cospif8_u05(__m256);
+IMPORT CONST __m256 Sleef_fmaf8(__m256, __m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_fmaf8(__m256, __m256, __m256);
+IMPORT CONST __m256 Sleef_sqrtf8(__m256);
+IMPORT CONST __m256 Sleef_cinz_sqrtf8(__m256);
+IMPORT CONST __m256 Sleef_sqrtf8_u05(__m256);
+IMPORT CONST __m256 Sleef_cinz_sqrtf8_u05(__m256);
+IMPORT CONST __m256 Sleef_sqrtf8_u35(__m256);
+IMPORT CONST __m256 Sleef_cinz_sqrtf8_u35(__m256);
+IMPORT CONST __m256 Sleef_hypotf8_u05(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_hypotf8_u05(__m256, __m256);
+IMPORT CONST __m256 Sleef_hypotf8_u35(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_hypotf8_u35(__m256, __m256);
+IMPORT CONST __m256 Sleef_fabsf8(__m256);
+IMPORT CONST __m256 Sleef_cinz_fabsf8(__m256);
+IMPORT CONST __m256 Sleef_copysignf8(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_copysignf8(__m256, __m256);
+IMPORT CONST __m256 Sleef_fmaxf8(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_fmaxf8(__m256, __m256);
+IMPORT CONST __m256 Sleef_fminf8(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_fminf8(__m256, __m256);
+IMPORT CONST __m256 Sleef_fdimf8(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_fdimf8(__m256, __m256);
+IMPORT CONST __m256 Sleef_truncf8(__m256);
+IMPORT CONST __m256 Sleef_cinz_truncf8(__m256);
+IMPORT CONST __m256 Sleef_floorf8(__m256);
+IMPORT CONST __m256 Sleef_cinz_floorf8(__m256);
+IMPORT CONST __m256 Sleef_ceilf8(__m256);
+IMPORT CONST __m256 Sleef_cinz_ceilf8(__m256);
+IMPORT CONST __m256 Sleef_roundf8(__m256);
+IMPORT CONST __m256 Sleef_cinz_roundf8(__m256);
+IMPORT CONST __m256 Sleef_rintf8(__m256);
+IMPORT CONST __m256 Sleef_cinz_rintf8(__m256);
+IMPORT CONST __m256 Sleef_nextafterf8(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_nextafterf8(__m256, __m256);
+IMPORT CONST __m256 Sleef_frfrexpf8(__m256);
+IMPORT CONST __m256 Sleef_cinz_frfrexpf8(__m256);
+IMPORT CONST __m256 Sleef_fmodf8(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_fmodf8(__m256, __m256);
+IMPORT CONST Sleef___m256_2 Sleef_modff8(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_cinz_modff8(__m256);
+IMPORT CONST __m256 Sleef_lgammaf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_lgammaf8_u10(__m256);
+IMPORT CONST __m256 Sleef_tgammaf8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_tgammaf8_u10(__m256);
+IMPORT CONST __m256 Sleef_erff8_u10(__m256);
+IMPORT CONST __m256 Sleef_cinz_erff8_u10(__m256);
+IMPORT CONST __m256 Sleef_erfcf8_u15(__m256);
+IMPORT CONST __m256 Sleef_cinz_erfcf8_u15(__m256);
+IMPORT CONST int Sleef_getIntf8(int);
+IMPORT CONST int Sleef_cinz_getIntf8(int);
+IMPORT CONST void *Sleef_getPtrf8(int);
+IMPORT CONST void *Sleef_cinz_getPtrf8(int);
+#endif
+#ifdef __AVX__
+#define STRUCT_KEYWORD___AVX__ struct
+
+#ifndef Sleef___m256d_2_DEFINED
+typedef STRUCT_KEYWORD___AVX__ {
+  __m256d x, y;
+} Sleef___m256d_2;
+#define Sleef___m256d_2_DEFINED
+#endif
+
+IMPORT CONST __m256d Sleef_sind4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sind4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cosd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_cosd4_u35avx(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincosd4_u35avx(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_cinz_sincosd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_tand4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_tand4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_asind4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_asind4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_acosd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_acosd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_atand4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_atand4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_atan2d4_u35avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_atan2d4_u35avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_logd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_logd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cbrtd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_cbrtd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_sind4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sind4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cosd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_cosd4_u10avx(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincosd4_u10avx(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_cinz_sincosd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_tand4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_tand4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_asind4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_asind4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_acosd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_acosd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_atand4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_atand4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_atan2d4_u10avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_atan2d4_u10avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_logd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_logd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cbrtd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_cbrtd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_expd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_expd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_powd4_u10avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_powd4_u10avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_sinhd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sinhd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_coshd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_coshd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_tanhd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_tanhd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_sinhd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sinhd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_coshd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_coshd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_tanhd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_tanhd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_fastsind4_u3500avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_fastsind4_u3500avx(__m256d);
+IMPORT CONST __m256d Sleef_fastcosd4_u3500avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_fastcosd4_u3500avx(__m256d);
+IMPORT CONST __m256d Sleef_fastpowd4_u3500avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_fastpowd4_u3500avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_asinhd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_asinhd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_acoshd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_acoshd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_atanhd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_atanhd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_exp2d4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_exp2d4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_exp2d4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_exp2d4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_exp10d4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_exp10d4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_exp10d4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_exp10d4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_expm1d4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_expm1d4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_log10d4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_log10d4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_log2d4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_log2d4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_log2d4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_log2d4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_log1pd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_log1pd4_u10avx(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincospid4_u05avx(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_cinz_sincospid4_u05avx(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincospid4_u35avx(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_cinz_sincospid4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_sinpid4_u05avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sinpid4_u05avx(__m256d);
+IMPORT CONST __m256d Sleef_cospid4_u05avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_cospid4_u05avx(__m256d);
+IMPORT CONST __m256d Sleef_ldexpd4_avx(__m256d, __m128i);
+IMPORT CONST __m256d Sleef_cinz_ldexpd4_avx(__m256d, __m128i);
+IMPORT CONST __m128i Sleef_ilogbd4_avx(__m256d);
+IMPORT CONST __m128i Sleef_cinz_ilogbd4_avx(__m256d);
+IMPORT CONST __m256d Sleef_fmad4_avx(__m256d, __m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_fmad4_avx(__m256d, __m256d, __m256d);
+IMPORT CONST __m256d Sleef_sqrtd4_avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sqrtd4_avx(__m256d);
+IMPORT CONST __m256d Sleef_sqrtd4_u05avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sqrtd4_u05avx(__m256d);
+IMPORT CONST __m256d Sleef_sqrtd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_sqrtd4_u35avx(__m256d);
+IMPORT CONST __m256d Sleef_hypotd4_u05avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_hypotd4_u05avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_hypotd4_u35avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_hypotd4_u35avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fabsd4_avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_fabsd4_avx(__m256d);
+IMPORT CONST __m256d Sleef_copysignd4_avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_copysignd4_avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fmaxd4_avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_fmaxd4_avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fmind4_avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_fmind4_avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fdimd4_avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_fdimd4_avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_truncd4_avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_truncd4_avx(__m256d);
+IMPORT CONST __m256d Sleef_floord4_avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_floord4_avx(__m256d);
+IMPORT CONST __m256d Sleef_ceild4_avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_ceild4_avx(__m256d);
+IMPORT CONST __m256d Sleef_roundd4_avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_roundd4_avx(__m256d);
+IMPORT CONST __m256d Sleef_rintd4_avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_rintd4_avx(__m256d);
+IMPORT CONST __m256d Sleef_nextafterd4_avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_nextafterd4_avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_frfrexpd4_avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_frfrexpd4_avx(__m256d);
+IMPORT CONST __m128i Sleef_expfrexpd4_avx(__m256d);
+IMPORT CONST __m128i Sleef_cinz_expfrexpd4_avx(__m256d);
+IMPORT CONST __m256d Sleef_fmodd4_avx(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_cinz_fmodd4_avx(__m256d, __m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_modfd4_avx(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_cinz_modfd4_avx(__m256d);
+IMPORT CONST __m256d Sleef_lgammad4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_lgammad4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_tgammad4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_tgammad4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_erfd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_erfd4_u10avx(__m256d);
+IMPORT CONST __m256d Sleef_erfcd4_u15avx(__m256d);
+IMPORT CONST __m256d Sleef_cinz_erfcd4_u15avx(__m256d);
+IMPORT CONST int Sleef_getIntd4_avx(int);
+IMPORT CONST void *Sleef_getPtrd4_avx(int);
+
+#ifndef Sleef___m256_2_DEFINED
+typedef STRUCT_KEYWORD___AVX__ {
+  __m256 x, y;
+} Sleef___m256_2;
+#define Sleef___m256_2_DEFINED
+#endif
+
+IMPORT CONST __m256 Sleef_sinf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_sinf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cosf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_cosf8_u35avx(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincosf8_u35avx(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_cinz_sincosf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_tanf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_tanf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_asinf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_asinf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_acosf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_acosf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_atanf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_atanf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_atan2f8_u35avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_atan2f8_u35avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_logf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_logf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cbrtf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_cbrtf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_sinf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_sinf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cosf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_cosf8_u10avx(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincosf8_u10avx(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_cinz_sincosf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_tanf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_tanf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_asinf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_asinf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_acosf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_acosf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_atanf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_atanf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_atan2f8_u10avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_atan2f8_u10avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_logf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_logf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cbrtf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_cbrtf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_expf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_expf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_powf8_u10avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_powf8_u10avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_sinhf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_sinhf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_coshf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_coshf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_tanhf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_tanhf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_sinhf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_sinhf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_coshf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_coshf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_tanhf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_tanhf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_fastsinf8_u3500avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_fastsinf8_u3500avx(__m256);
+IMPORT CONST __m256 Sleef_fastcosf8_u3500avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_fastcosf8_u3500avx(__m256);
+IMPORT CONST __m256 Sleef_fastpowf8_u3500avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_fastpowf8_u3500avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_asinhf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_asinhf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_acoshf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_acoshf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_atanhf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_atanhf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_exp2f8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_exp2f8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_exp2f8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_exp2f8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_exp10f8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_exp10f8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_exp10f8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_exp10f8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_expm1f8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_expm1f8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_log10f8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_log10f8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_log2f8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_log2f8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_log2f8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_log2f8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_log1pf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_log1pf8_u10avx(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincospif8_u05avx(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_cinz_sincospif8_u05avx(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincospif8_u35avx(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_cinz_sincospif8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_sinpif8_u05avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_sinpif8_u05avx(__m256);
+IMPORT CONST __m256 Sleef_cospif8_u05avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_cospif8_u05avx(__m256);
+IMPORT CONST __m256 Sleef_fmaf8_avx(__m256, __m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_fmaf8_avx(__m256, __m256, __m256);
+IMPORT CONST __m256 Sleef_sqrtf8_avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_sqrtf8_avx(__m256);
+IMPORT CONST __m256 Sleef_sqrtf8_u05avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_sqrtf8_u05avx(__m256);
+IMPORT CONST __m256 Sleef_sqrtf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_sqrtf8_u35avx(__m256);
+IMPORT CONST __m256 Sleef_hypotf8_u05avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_hypotf8_u05avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_hypotf8_u35avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_hypotf8_u35avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_fabsf8_avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_fabsf8_avx(__m256);
+IMPORT CONST __m256 Sleef_copysignf8_avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_copysignf8_avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_fmaxf8_avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_fmaxf8_avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_fminf8_avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_fminf8_avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_fdimf8_avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_fdimf8_avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_truncf8_avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_truncf8_avx(__m256);
+IMPORT CONST __m256 Sleef_floorf8_avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_floorf8_avx(__m256);
+IMPORT CONST __m256 Sleef_ceilf8_avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_ceilf8_avx(__m256);
+IMPORT CONST __m256 Sleef_roundf8_avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_roundf8_avx(__m256);
+IMPORT CONST __m256 Sleef_rintf8_avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_rintf8_avx(__m256);
+IMPORT CONST __m256 Sleef_nextafterf8_avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_nextafterf8_avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_frfrexpf8_avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_frfrexpf8_avx(__m256);
+IMPORT CONST __m256 Sleef_fmodf8_avx(__m256, __m256);
+IMPORT CONST __m256 Sleef_cinz_fmodf8_avx(__m256, __m256);
+IMPORT CONST Sleef___m256_2 Sleef_modff8_avx(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_cinz_modff8_avx(__m256);
+IMPORT CONST __m256 Sleef_lgammaf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_lgammaf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_tgammaf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_tgammaf8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_erff8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_erff8_u10avx(__m256);
+IMPORT CONST __m256 Sleef_erfcf8_u15avx(__m256);
+IMPORT CONST __m256 Sleef_cinz_erfcf8_u15avx(__m256);
+IMPORT CONST int Sleef_getIntf8_avx(int);
+IMPORT CONST int Sleef_cinz_getIntf8_avx(int);
+IMPORT CONST void *Sleef_getPtrf8_avx(int);
+IMPORT CONST void *Sleef_cinz_getPtrf8_avx(int);
+#endif
+#ifdef __AVX__
+#define STRUCT_KEYWORD___AVX__ struct
+
+#ifndef Sleef___m256d_2_DEFINED
+typedef STRUCT_KEYWORD___AVX__ {
+  __m256d x, y;
+} Sleef___m256d_2;
+#define Sleef___m256d_2_DEFINED
+#endif
+
+IMPORT CONST __m256d Sleef_sind4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_sind4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_cosd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_cosd4_u35fma4(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincosd4_u35fma4(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_finz_sincosd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_tand4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_tand4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_asind4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_asind4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_acosd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_acosd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_atand4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_atand4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_atan2d4_u35fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_atan2d4_u35fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_logd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_logd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_cbrtd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_cbrtd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_sind4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_sind4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_cosd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_cosd4_u10fma4(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincosd4_u10fma4(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_finz_sincosd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_tand4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_tand4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_asind4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_asind4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_acosd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_acosd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_atand4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_atand4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_atan2d4_u10fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_atan2d4_u10fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_logd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_logd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_cbrtd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_cbrtd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_expd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_expd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_powd4_u10fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_powd4_u10fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_sinhd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_sinhd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_coshd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_coshd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_tanhd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_tanhd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_sinhd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_sinhd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_coshd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_coshd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_tanhd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_tanhd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_fastsind4_u3500fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_fastsind4_u3500fma4(__m256d);
+IMPORT CONST __m256d Sleef_fastcosd4_u3500fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_fastcosd4_u3500fma4(__m256d);
+IMPORT CONST __m256d Sleef_fastpowd4_u3500fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_fastpowd4_u3500fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_asinhd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_asinhd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_acoshd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_acoshd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_atanhd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_atanhd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_exp2d4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_exp2d4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_exp2d4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_exp2d4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_exp10d4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_exp10d4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_exp10d4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_exp10d4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_expm1d4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_expm1d4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_log10d4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_log10d4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_log2d4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_log2d4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_log2d4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_log2d4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_log1pd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_log1pd4_u10fma4(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincospid4_u05fma4(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_finz_sincospid4_u05fma4(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincospid4_u35fma4(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_finz_sincospid4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_sinpid4_u05fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_sinpid4_u05fma4(__m256d);
+IMPORT CONST __m256d Sleef_cospid4_u05fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_cospid4_u05fma4(__m256d);
+IMPORT CONST __m256d Sleef_ldexpd4_fma4(__m256d, __m128i);
+IMPORT CONST __m256d Sleef_finz_ldexpd4_fma4(__m256d, __m128i);
+IMPORT CONST __m128i Sleef_ilogbd4_fma4(__m256d);
+IMPORT CONST __m128i Sleef_finz_ilogbd4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_fmad4_fma4(__m256d, __m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_fmad4_fma4(__m256d, __m256d, __m256d);
+IMPORT CONST __m256d Sleef_sqrtd4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_sqrtd4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_sqrtd4_u05fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_sqrtd4_u05fma4(__m256d);
+IMPORT CONST __m256d Sleef_sqrtd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_sqrtd4_u35fma4(__m256d);
+IMPORT CONST __m256d Sleef_hypotd4_u05fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_hypotd4_u05fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_hypotd4_u35fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_hypotd4_u35fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fabsd4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_fabsd4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_copysignd4_fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_copysignd4_fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fmaxd4_fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_fmaxd4_fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fmind4_fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_fmind4_fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fdimd4_fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_fdimd4_fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_truncd4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_truncd4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_floord4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_floord4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_ceild4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_ceild4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_roundd4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_roundd4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_rintd4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_rintd4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_nextafterd4_fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_nextafterd4_fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_frfrexpd4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_frfrexpd4_fma4(__m256d);
+IMPORT CONST __m128i Sleef_expfrexpd4_fma4(__m256d);
+IMPORT CONST __m128i Sleef_finz_expfrexpd4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_fmodd4_fma4(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_fmodd4_fma4(__m256d, __m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_modfd4_fma4(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_finz_modfd4_fma4(__m256d);
+IMPORT CONST __m256d Sleef_lgammad4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_lgammad4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_tgammad4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_tgammad4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_erfd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_erfd4_u10fma4(__m256d);
+IMPORT CONST __m256d Sleef_erfcd4_u15fma4(__m256d);
+IMPORT CONST __m256d Sleef_finz_erfcd4_u15fma4(__m256d);
+IMPORT CONST int Sleef_getIntd4_fma4(int);
+IMPORT CONST void *Sleef_getPtrd4_fma4(int);
+
+#ifndef Sleef___m256_2_DEFINED
+typedef STRUCT_KEYWORD___AVX__ {
+  __m256 x, y;
+} Sleef___m256_2;
+#define Sleef___m256_2_DEFINED
+#endif
+
+IMPORT CONST __m256 Sleef_sinf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_sinf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_cosf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_cosf8_u35fma4(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincosf8_u35fma4(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_finz_sincosf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_tanf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_tanf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_asinf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_asinf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_acosf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_acosf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_atanf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_atanf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_atan2f8_u35fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_atan2f8_u35fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_logf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_logf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_cbrtf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_cbrtf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_sinf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_sinf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_cosf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_cosf8_u10fma4(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincosf8_u10fma4(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_finz_sincosf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_tanf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_tanf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_asinf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_asinf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_acosf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_acosf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_atanf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_atanf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_atan2f8_u10fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_atan2f8_u10fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_logf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_logf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_cbrtf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_cbrtf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_expf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_expf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_powf8_u10fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_powf8_u10fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_sinhf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_sinhf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_coshf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_coshf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_tanhf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_tanhf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_sinhf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_sinhf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_coshf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_coshf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_tanhf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_tanhf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_fastsinf8_u3500fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_fastsinf8_u3500fma4(__m256);
+IMPORT CONST __m256 Sleef_fastcosf8_u3500fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_fastcosf8_u3500fma4(__m256);
+IMPORT CONST __m256 Sleef_fastpowf8_u3500fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_fastpowf8_u3500fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_asinhf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_asinhf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_acoshf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_acoshf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_atanhf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_atanhf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_exp2f8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_exp2f8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_exp2f8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_exp2f8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_exp10f8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_exp10f8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_exp10f8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_exp10f8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_expm1f8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_expm1f8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_log10f8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_log10f8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_log2f8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_log2f8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_log2f8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_log2f8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_log1pf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_log1pf8_u10fma4(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincospif8_u05fma4(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_finz_sincospif8_u05fma4(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincospif8_u35fma4(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_finz_sincospif8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_sinpif8_u05fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_sinpif8_u05fma4(__m256);
+IMPORT CONST __m256 Sleef_cospif8_u05fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_cospif8_u05fma4(__m256);
+IMPORT CONST __m256 Sleef_fmaf8_fma4(__m256, __m256, __m256);
+IMPORT CONST __m256 Sleef_finz_fmaf8_fma4(__m256, __m256, __m256);
+IMPORT CONST __m256 Sleef_sqrtf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_sqrtf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_sqrtf8_u05fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_sqrtf8_u05fma4(__m256);
+IMPORT CONST __m256 Sleef_sqrtf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_sqrtf8_u35fma4(__m256);
+IMPORT CONST __m256 Sleef_hypotf8_u05fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_hypotf8_u05fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_hypotf8_u35fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_hypotf8_u35fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_fabsf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_fabsf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_copysignf8_fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_copysignf8_fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_fmaxf8_fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_fmaxf8_fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_fminf8_fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_fminf8_fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_fdimf8_fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_fdimf8_fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_truncf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_truncf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_floorf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_floorf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_ceilf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_ceilf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_roundf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_roundf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_rintf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_rintf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_nextafterf8_fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_nextafterf8_fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_frfrexpf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_frfrexpf8_fma4(__m256);
+IMPORT CONST __m256 Sleef_fmodf8_fma4(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_fmodf8_fma4(__m256, __m256);
+IMPORT CONST Sleef___m256_2 Sleef_modff8_fma4(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_finz_modff8_fma4(__m256);
+IMPORT CONST __m256 Sleef_lgammaf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_lgammaf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_tgammaf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_tgammaf8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_erff8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_erff8_u10fma4(__m256);
+IMPORT CONST __m256 Sleef_erfcf8_u15fma4(__m256);
+IMPORT CONST __m256 Sleef_finz_erfcf8_u15fma4(__m256);
+IMPORT CONST int Sleef_getIntf8_fma4(int);
+IMPORT CONST int Sleef_finz_getIntf8_fma4(int);
+IMPORT CONST void *Sleef_getPtrf8_fma4(int);
+IMPORT CONST void *Sleef_finz_getPtrf8_fma4(int);
+#endif
+#ifdef __AVX__
+#define STRUCT_KEYWORD___AVX__ struct
+
+#ifndef Sleef___m256d_2_DEFINED
+typedef STRUCT_KEYWORD___AVX__ {
+  __m256d x, y;
+} Sleef___m256d_2;
+#define Sleef___m256d_2_DEFINED
+#endif
+
+IMPORT CONST __m256d Sleef_sind4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_sind4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_cosd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_cosd4_u35avx2(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincosd4_u35avx2(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_finz_sincosd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_tand4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_tand4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_asind4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_asind4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_acosd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_acosd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_atand4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_atand4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_atan2d4_u35avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_atan2d4_u35avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_logd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_logd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_cbrtd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_cbrtd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_sind4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_sind4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_cosd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_cosd4_u10avx2(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincosd4_u10avx2(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_finz_sincosd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_tand4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_tand4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_asind4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_asind4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_acosd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_acosd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_atand4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_atand4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_atan2d4_u10avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_atan2d4_u10avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_logd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_logd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_cbrtd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_cbrtd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_expd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_expd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_powd4_u10avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_powd4_u10avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_sinhd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_sinhd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_coshd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_coshd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_tanhd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_tanhd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_sinhd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_sinhd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_coshd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_coshd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_tanhd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_tanhd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_fastsind4_u3500avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_fastsind4_u3500avx2(__m256d);
+IMPORT CONST __m256d Sleef_fastcosd4_u3500avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_fastcosd4_u3500avx2(__m256d);
+IMPORT CONST __m256d Sleef_fastpowd4_u3500avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_fastpowd4_u3500avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_asinhd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_asinhd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_acoshd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_acoshd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_atanhd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_atanhd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_exp2d4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_exp2d4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_exp2d4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_exp2d4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_exp10d4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_exp10d4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_exp10d4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_exp10d4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_expm1d4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_expm1d4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_log10d4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_log10d4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_log2d4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_log2d4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_log2d4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_log2d4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_log1pd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_log1pd4_u10avx2(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincospid4_u05avx2(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_finz_sincospid4_u05avx2(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_sincospid4_u35avx2(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_finz_sincospid4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_sinpid4_u05avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_sinpid4_u05avx2(__m256d);
+IMPORT CONST __m256d Sleef_cospid4_u05avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_cospid4_u05avx2(__m256d);
+IMPORT CONST __m256d Sleef_ldexpd4_avx2(__m256d, __m128i);
+IMPORT CONST __m256d Sleef_finz_ldexpd4_avx2(__m256d, __m128i);
+IMPORT CONST __m128i Sleef_ilogbd4_avx2(__m256d);
+IMPORT CONST __m128i Sleef_finz_ilogbd4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_fmad4_avx2(__m256d, __m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_fmad4_avx2(__m256d, __m256d, __m256d);
+IMPORT CONST __m256d Sleef_sqrtd4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_sqrtd4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_sqrtd4_u05avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_sqrtd4_u05avx2(__m256d);
+IMPORT CONST __m256d Sleef_sqrtd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_sqrtd4_u35avx2(__m256d);
+IMPORT CONST __m256d Sleef_hypotd4_u05avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_hypotd4_u05avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_hypotd4_u35avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_hypotd4_u35avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fabsd4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_fabsd4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_copysignd4_avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_copysignd4_avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fmaxd4_avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_fmaxd4_avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fmind4_avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_fmind4_avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_fdimd4_avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_fdimd4_avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_truncd4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_truncd4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_floord4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_floord4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_ceild4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_ceild4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_roundd4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_roundd4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_rintd4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_rintd4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_nextafterd4_avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_nextafterd4_avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_frfrexpd4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_frfrexpd4_avx2(__m256d);
+IMPORT CONST __m128i Sleef_expfrexpd4_avx2(__m256d);
+IMPORT CONST __m128i Sleef_finz_expfrexpd4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_fmodd4_avx2(__m256d, __m256d);
+IMPORT CONST __m256d Sleef_finz_fmodd4_avx2(__m256d, __m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_modfd4_avx2(__m256d);
+IMPORT CONST Sleef___m256d_2 Sleef_finz_modfd4_avx2(__m256d);
+IMPORT CONST __m256d Sleef_lgammad4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_lgammad4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_tgammad4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_tgammad4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_erfd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_erfd4_u10avx2(__m256d);
+IMPORT CONST __m256d Sleef_erfcd4_u15avx2(__m256d);
+IMPORT CONST __m256d Sleef_finz_erfcd4_u15avx2(__m256d);
+IMPORT CONST int Sleef_getIntd4_avx2(int);
+IMPORT CONST void *Sleef_getPtrd4_avx2(int);
+
+#ifndef Sleef___m256_2_DEFINED
+typedef STRUCT_KEYWORD___AVX__ {
+  __m256 x, y;
+} Sleef___m256_2;
+#define Sleef___m256_2_DEFINED
+#endif
+
+IMPORT CONST __m256 Sleef_sinf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_sinf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_cosf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_cosf8_u35avx2(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincosf8_u35avx2(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_finz_sincosf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_tanf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_tanf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_asinf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_asinf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_acosf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_acosf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_atanf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_atanf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_atan2f8_u35avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_atan2f8_u35avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_logf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_logf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_cbrtf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_cbrtf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_sinf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_sinf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_cosf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_cosf8_u10avx2(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincosf8_u10avx2(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_finz_sincosf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_tanf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_tanf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_asinf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_asinf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_acosf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_acosf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_atanf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_atanf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_atan2f8_u10avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_atan2f8_u10avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_logf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_logf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_cbrtf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_cbrtf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_expf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_expf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_powf8_u10avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_powf8_u10avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_sinhf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_sinhf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_coshf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_coshf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_tanhf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_tanhf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_sinhf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_sinhf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_coshf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_coshf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_tanhf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_tanhf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_fastsinf8_u3500avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_fastsinf8_u3500avx2(__m256);
+IMPORT CONST __m256 Sleef_fastcosf8_u3500avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_fastcosf8_u3500avx2(__m256);
+IMPORT CONST __m256 Sleef_fastpowf8_u3500avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_fastpowf8_u3500avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_asinhf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_asinhf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_acoshf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_acoshf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_atanhf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_atanhf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_exp2f8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_exp2f8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_exp2f8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_exp2f8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_exp10f8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_exp10f8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_exp10f8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_exp10f8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_expm1f8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_expm1f8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_log10f8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_log10f8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_log2f8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_log2f8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_log2f8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_log2f8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_log1pf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_log1pf8_u10avx2(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincospif8_u05avx2(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_finz_sincospif8_u05avx2(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_sincospif8_u35avx2(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_finz_sincospif8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_sinpif8_u05avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_sinpif8_u05avx2(__m256);
+IMPORT CONST __m256 Sleef_cospif8_u05avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_cospif8_u05avx2(__m256);
+IMPORT CONST __m256 Sleef_fmaf8_avx2(__m256, __m256, __m256);
+IMPORT CONST __m256 Sleef_finz_fmaf8_avx2(__m256, __m256, __m256);
+IMPORT CONST __m256 Sleef_sqrtf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_sqrtf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_sqrtf8_u05avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_sqrtf8_u05avx2(__m256);
+IMPORT CONST __m256 Sleef_sqrtf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_sqrtf8_u35avx2(__m256);
+IMPORT CONST __m256 Sleef_hypotf8_u05avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_hypotf8_u05avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_hypotf8_u35avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_hypotf8_u35avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_fabsf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_fabsf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_copysignf8_avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_copysignf8_avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_fmaxf8_avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_fmaxf8_avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_fminf8_avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_fminf8_avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_fdimf8_avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_fdimf8_avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_truncf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_truncf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_floorf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_floorf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_ceilf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_ceilf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_roundf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_roundf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_rintf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_rintf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_nextafterf8_avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_nextafterf8_avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_frfrexpf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_frfrexpf8_avx2(__m256);
+IMPORT CONST __m256 Sleef_fmodf8_avx2(__m256, __m256);
+IMPORT CONST __m256 Sleef_finz_fmodf8_avx2(__m256, __m256);
+IMPORT CONST Sleef___m256_2 Sleef_modff8_avx2(__m256);
+IMPORT CONST Sleef___m256_2 Sleef_finz_modff8_avx2(__m256);
+IMPORT CONST __m256 Sleef_lgammaf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_lgammaf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_tgammaf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_tgammaf8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_erff8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_erff8_u10avx2(__m256);
+IMPORT CONST __m256 Sleef_erfcf8_u15avx2(__m256);
+IMPORT CONST __m256 Sleef_finz_erfcf8_u15avx2(__m256);
+IMPORT CONST int Sleef_getIntf8_avx2(int);
+IMPORT CONST int Sleef_finz_getIntf8_avx2(int);
+IMPORT CONST void *Sleef_getPtrf8_avx2(int);
+IMPORT CONST void *Sleef_finz_getPtrf8_avx2(int);
+#endif
+#ifdef __SSE2__
+#define STRUCT_KEYWORD___SSE2__ struct
+
+#ifndef Sleef___m128d_2_DEFINED
+typedef STRUCT_KEYWORD___SSE2__ {
+  __m128d x, y;
+} Sleef___m128d_2;
+#define Sleef___m128d_2_DEFINED
+#endif
+
+IMPORT CONST __m128d Sleef_sind2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_sind2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_cosd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_cosd2_u35avx2128(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincosd2_u35avx2128(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_finz_sincosd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_tand2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_tand2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_asind2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_asind2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_acosd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_acosd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_atand2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_atand2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_atan2d2_u35avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_finz_atan2d2_u35avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_logd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_logd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_cbrtd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_cbrtd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_sind2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_sind2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_cosd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_cosd2_u10avx2128(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincosd2_u10avx2128(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_finz_sincosd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_tand2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_tand2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_asind2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_asind2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_acosd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_acosd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_atand2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_atand2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_atan2d2_u10avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_finz_atan2d2_u10avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_logd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_logd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_cbrtd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_cbrtd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_expd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_expd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_powd2_u10avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_finz_powd2_u10avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_sinhd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_sinhd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_coshd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_coshd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_tanhd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_tanhd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_sinhd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_sinhd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_coshd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_coshd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_tanhd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_tanhd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_fastsind2_u3500avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_fastsind2_u3500avx2128(__m128d);
+IMPORT CONST __m128d Sleef_fastcosd2_u3500avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_fastcosd2_u3500avx2128(__m128d);
+IMPORT CONST __m128d Sleef_fastpowd2_u3500avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_finz_fastpowd2_u3500avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_asinhd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_asinhd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_acoshd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_acoshd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_atanhd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_atanhd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_exp2d2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_exp2d2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_exp2d2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_exp2d2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_exp10d2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_exp10d2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_exp10d2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_exp10d2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_expm1d2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_expm1d2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_log10d2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_log10d2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_log2d2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_log2d2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_log2d2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_log2d2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_log1pd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_log1pd2_u10avx2128(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincospid2_u05avx2128(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_finz_sincospid2_u05avx2128(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_sincospid2_u35avx2128(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_finz_sincospid2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_sinpid2_u05avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_sinpid2_u05avx2128(__m128d);
+IMPORT CONST __m128d Sleef_cospid2_u05avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_cospid2_u05avx2128(__m128d);
+IMPORT CONST __m128d Sleef_ldexpd2_avx2128(__m128d, __m128i);
+IMPORT CONST __m128d Sleef_finz_ldexpd2_avx2128(__m128d, __m128i);
+IMPORT CONST __m128i Sleef_ilogbd2_avx2128(__m128d);
+IMPORT CONST __m128i Sleef_finz_ilogbd2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_fmad2_avx2128(__m128d, __m128d, __m128d);
+IMPORT CONST __m128d Sleef_finz_fmad2_avx2128(__m128d, __m128d, __m128d);
+IMPORT CONST __m128d Sleef_sqrtd2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_sqrtd2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_sqrtd2_u05avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_sqrtd2_u05avx2128(__m128d);
+IMPORT CONST __m128d Sleef_sqrtd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_sqrtd2_u35avx2128(__m128d);
+IMPORT CONST __m128d Sleef_hypotd2_u05avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_finz_hypotd2_u05avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_hypotd2_u35avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_finz_hypotd2_u35avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fabsd2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_fabsd2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_copysignd2_avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_finz_copysignd2_avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fmaxd2_avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_finz_fmaxd2_avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fmind2_avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_finz_fmind2_avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_fdimd2_avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_finz_fdimd2_avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_truncd2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_truncd2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_floord2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_floord2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_ceild2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_ceild2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_roundd2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_roundd2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_rintd2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_rintd2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_nextafterd2_avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_finz_nextafterd2_avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_frfrexpd2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_frfrexpd2_avx2128(__m128d);
+IMPORT CONST __m128i Sleef_expfrexpd2_avx2128(__m128d);
+IMPORT CONST __m128i Sleef_finz_expfrexpd2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_fmodd2_avx2128(__m128d, __m128d);
+IMPORT CONST __m128d Sleef_finz_fmodd2_avx2128(__m128d, __m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_modfd2_avx2128(__m128d);
+IMPORT CONST Sleef___m128d_2 Sleef_finz_modfd2_avx2128(__m128d);
+IMPORT CONST __m128d Sleef_lgammad2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_lgammad2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_tgammad2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_tgammad2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_erfd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_erfd2_u10avx2128(__m128d);
+IMPORT CONST __m128d Sleef_erfcd2_u15avx2128(__m128d);
+IMPORT CONST __m128d Sleef_finz_erfcd2_u15avx2128(__m128d);
+IMPORT CONST int Sleef_getIntd2_avx2128(int);
+IMPORT CONST void *Sleef_getPtrd2_avx2128(int);
+
+#ifndef Sleef___m128_2_DEFINED
+typedef STRUCT_KEYWORD___SSE2__ {
+  __m128 x, y;
+} Sleef___m128_2;
+#define Sleef___m128_2_DEFINED
+#endif
+
+IMPORT CONST __m128 Sleef_sinf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_sinf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_cosf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_cosf4_u35avx2128(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincosf4_u35avx2128(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_finz_sincosf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_tanf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_tanf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_asinf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_asinf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_acosf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_acosf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_atanf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_atanf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_atan2f4_u35avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_finz_atan2f4_u35avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_logf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_logf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_cbrtf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_cbrtf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_sinf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_sinf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_cosf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_cosf4_u10avx2128(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincosf4_u10avx2128(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_finz_sincosf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_tanf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_tanf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_asinf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_asinf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_acosf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_acosf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_atanf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_atanf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_atan2f4_u10avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_finz_atan2f4_u10avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_logf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_logf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_cbrtf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_cbrtf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_expf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_expf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_powf4_u10avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_finz_powf4_u10avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_sinhf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_sinhf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_coshf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_coshf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_tanhf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_tanhf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_sinhf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_sinhf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_coshf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_coshf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_tanhf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_tanhf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_fastsinf4_u3500avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_fastsinf4_u3500avx2128(__m128);
+IMPORT CONST __m128 Sleef_fastcosf4_u3500avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_fastcosf4_u3500avx2128(__m128);
+IMPORT CONST __m128 Sleef_fastpowf4_u3500avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_finz_fastpowf4_u3500avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_asinhf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_asinhf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_acoshf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_acoshf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_atanhf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_atanhf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_exp2f4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_exp2f4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_exp2f4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_exp2f4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_exp10f4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_exp10f4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_exp10f4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_exp10f4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_expm1f4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_expm1f4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_log10f4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_log10f4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_log2f4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_log2f4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_log2f4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_log2f4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_log1pf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_log1pf4_u10avx2128(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincospif4_u05avx2128(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_finz_sincospif4_u05avx2128(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_sincospif4_u35avx2128(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_finz_sincospif4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_sinpif4_u05avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_sinpif4_u05avx2128(__m128);
+IMPORT CONST __m128 Sleef_cospif4_u05avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_cospif4_u05avx2128(__m128);
+IMPORT CONST __m128 Sleef_fmaf4_avx2128(__m128, __m128, __m128);
+IMPORT CONST __m128 Sleef_finz_fmaf4_avx2128(__m128, __m128, __m128);
+IMPORT CONST __m128 Sleef_sqrtf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_sqrtf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_sqrtf4_u05avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_sqrtf4_u05avx2128(__m128);
+IMPORT CONST __m128 Sleef_sqrtf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_sqrtf4_u35avx2128(__m128);
+IMPORT CONST __m128 Sleef_hypotf4_u05avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_finz_hypotf4_u05avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_hypotf4_u35avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_finz_hypotf4_u35avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_fabsf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_fabsf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_copysignf4_avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_finz_copysignf4_avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_fmaxf4_avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_finz_fmaxf4_avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_fminf4_avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_finz_fminf4_avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_fdimf4_avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_finz_fdimf4_avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_truncf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_truncf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_floorf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_floorf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_ceilf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_ceilf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_roundf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_roundf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_rintf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_rintf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_nextafterf4_avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_finz_nextafterf4_avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_frfrexpf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_frfrexpf4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_fmodf4_avx2128(__m128, __m128);
+IMPORT CONST __m128 Sleef_finz_fmodf4_avx2128(__m128, __m128);
+IMPORT CONST Sleef___m128_2 Sleef_modff4_avx2128(__m128);
+IMPORT CONST Sleef___m128_2 Sleef_finz_modff4_avx2128(__m128);
+IMPORT CONST __m128 Sleef_lgammaf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_lgammaf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_tgammaf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_tgammaf4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_erff4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_erff4_u10avx2128(__m128);
+IMPORT CONST __m128 Sleef_erfcf4_u15avx2128(__m128);
+IMPORT CONST __m128 Sleef_finz_erfcf4_u15avx2128(__m128);
+IMPORT CONST int Sleef_getIntf4_avx2128(int);
+IMPORT CONST int Sleef_finz_getIntf4_avx2128(int);
+IMPORT CONST void *Sleef_getPtrf4_avx2128(int);
+IMPORT CONST void *Sleef_finz_getPtrf4_avx2128(int);
+#endif
+#ifdef __AVX512F__
+#define STRUCT_KEYWORD___AVX512F__ struct
+
+#ifndef Sleef___m512d_2_DEFINED
+typedef STRUCT_KEYWORD___AVX512F__ {
+  __m512d x, y;
+} Sleef___m512d_2;
+#define Sleef___m512d_2_DEFINED
+#endif
+
+IMPORT CONST __m512d Sleef_sind8_u35(__m512d);
+IMPORT CONST __m512d Sleef_finz_sind8_u35(__m512d);
+IMPORT CONST __m512d Sleef_cosd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_finz_cosd8_u35(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_sincosd8_u35(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_finz_sincosd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_tand8_u35(__m512d);
+IMPORT CONST __m512d Sleef_finz_tand8_u35(__m512d);
+IMPORT CONST __m512d Sleef_asind8_u35(__m512d);
+IMPORT CONST __m512d Sleef_finz_asind8_u35(__m512d);
+IMPORT CONST __m512d Sleef_acosd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_finz_acosd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_atand8_u35(__m512d);
+IMPORT CONST __m512d Sleef_finz_atand8_u35(__m512d);
+IMPORT CONST __m512d Sleef_atan2d8_u35(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_atan2d8_u35(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_logd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_finz_logd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_cbrtd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_finz_cbrtd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_sind8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_sind8_u10(__m512d);
+IMPORT CONST __m512d Sleef_cosd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_cosd8_u10(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_sincosd8_u10(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_finz_sincosd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_tand8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_tand8_u10(__m512d);
+IMPORT CONST __m512d Sleef_asind8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_asind8_u10(__m512d);
+IMPORT CONST __m512d Sleef_acosd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_acosd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_atand8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_atand8_u10(__m512d);
+IMPORT CONST __m512d Sleef_atan2d8_u10(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_atan2d8_u10(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_logd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_logd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_cbrtd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_cbrtd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_expd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_expd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_powd8_u10(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_powd8_u10(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_sinhd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_sinhd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_coshd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_coshd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_tanhd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_tanhd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_sinhd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_finz_sinhd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_coshd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_finz_coshd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_tanhd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_finz_tanhd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_fastsind8_u3500(__m512d);
+IMPORT CONST __m512d Sleef_finz_fastsind8_u3500(__m512d);
+IMPORT CONST __m512d Sleef_fastcosd8_u3500(__m512d);
+IMPORT CONST __m512d Sleef_finz_fastcosd8_u3500(__m512d);
+IMPORT CONST __m512d Sleef_fastpowd8_u3500(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_fastpowd8_u3500(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_asinhd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_asinhd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_acoshd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_acoshd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_atanhd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_atanhd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_exp2d8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_exp2d8_u10(__m512d);
+IMPORT CONST __m512d Sleef_exp2d8_u35(__m512d);
+IMPORT CONST __m512d Sleef_finz_exp2d8_u35(__m512d);
+IMPORT CONST __m512d Sleef_exp10d8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_exp10d8_u10(__m512d);
+IMPORT CONST __m512d Sleef_exp10d8_u35(__m512d);
+IMPORT CONST __m512d Sleef_finz_exp10d8_u35(__m512d);
+IMPORT CONST __m512d Sleef_expm1d8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_expm1d8_u10(__m512d);
+IMPORT CONST __m512d Sleef_log10d8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_log10d8_u10(__m512d);
+IMPORT CONST __m512d Sleef_log2d8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_log2d8_u10(__m512d);
+IMPORT CONST __m512d Sleef_log2d8_u35(__m512d);
+IMPORT CONST __m512d Sleef_finz_log2d8_u35(__m512d);
+IMPORT CONST __m512d Sleef_log1pd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_log1pd8_u10(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_sincospid8_u05(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_finz_sincospid8_u05(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_sincospid8_u35(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_finz_sincospid8_u35(__m512d);
+IMPORT CONST __m512d Sleef_sinpid8_u05(__m512d);
+IMPORT CONST __m512d Sleef_finz_sinpid8_u05(__m512d);
+IMPORT CONST __m512d Sleef_cospid8_u05(__m512d);
+IMPORT CONST __m512d Sleef_finz_cospid8_u05(__m512d);
+IMPORT CONST __m512d Sleef_ldexpd8(__m512d, __m256i);
+IMPORT CONST __m512d Sleef_finz_ldexpd8(__m512d, __m256i);
+IMPORT CONST __m256i Sleef_ilogbd8(__m512d);
+IMPORT CONST __m256i Sleef_finz_ilogbd8(__m512d);
+IMPORT CONST __m512d Sleef_fmad8(__m512d, __m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_fmad8(__m512d, __m512d, __m512d);
+IMPORT CONST __m512d Sleef_sqrtd8(__m512d);
+IMPORT CONST __m512d Sleef_finz_sqrtd8(__m512d);
+IMPORT CONST __m512d Sleef_sqrtd8_u05(__m512d);
+IMPORT CONST __m512d Sleef_finz_sqrtd8_u05(__m512d);
+IMPORT CONST __m512d Sleef_sqrtd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_finz_sqrtd8_u35(__m512d);
+IMPORT CONST __m512d Sleef_hypotd8_u05(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_hypotd8_u05(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_hypotd8_u35(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_hypotd8_u35(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_fabsd8(__m512d);
+IMPORT CONST __m512d Sleef_finz_fabsd8(__m512d);
+IMPORT CONST __m512d Sleef_copysignd8(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_copysignd8(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_fmaxd8(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_fmaxd8(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_fmind8(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_fmind8(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_fdimd8(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_fdimd8(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_truncd8(__m512d);
+IMPORT CONST __m512d Sleef_finz_truncd8(__m512d);
+IMPORT CONST __m512d Sleef_floord8(__m512d);
+IMPORT CONST __m512d Sleef_finz_floord8(__m512d);
+IMPORT CONST __m512d Sleef_ceild8(__m512d);
+IMPORT CONST __m512d Sleef_finz_ceild8(__m512d);
+IMPORT CONST __m512d Sleef_roundd8(__m512d);
+IMPORT CONST __m512d Sleef_finz_roundd8(__m512d);
+IMPORT CONST __m512d Sleef_rintd8(__m512d);
+IMPORT CONST __m512d Sleef_finz_rintd8(__m512d);
+IMPORT CONST __m512d Sleef_nextafterd8(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_nextafterd8(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_frfrexpd8(__m512d);
+IMPORT CONST __m512d Sleef_finz_frfrexpd8(__m512d);
+IMPORT CONST __m256i Sleef_expfrexpd8(__m512d);
+IMPORT CONST __m256i Sleef_finz_expfrexpd8(__m512d);
+IMPORT CONST __m512d Sleef_fmodd8(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_fmodd8(__m512d, __m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_modfd8(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_finz_modfd8(__m512d);
+IMPORT CONST __m512d Sleef_lgammad8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_lgammad8_u10(__m512d);
+IMPORT CONST __m512d Sleef_tgammad8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_tgammad8_u10(__m512d);
+IMPORT CONST __m512d Sleef_erfd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_finz_erfd8_u10(__m512d);
+IMPORT CONST __m512d Sleef_erfcd8_u15(__m512d);
+IMPORT CONST __m512d Sleef_finz_erfcd8_u15(__m512d);
+IMPORT CONST int Sleef_getIntd8(int);
+IMPORT CONST void *Sleef_getPtrd8(int);
+
+#ifndef Sleef___m512_2_DEFINED
+typedef STRUCT_KEYWORD___AVX512F__ {
+  __m512 x, y;
+} Sleef___m512_2;
+#define Sleef___m512_2_DEFINED
+#endif
+
+IMPORT CONST __m512 Sleef_sinf16_u35(__m512);
+IMPORT CONST __m512 Sleef_finz_sinf16_u35(__m512);
+IMPORT CONST __m512 Sleef_cosf16_u35(__m512);
+IMPORT CONST __m512 Sleef_finz_cosf16_u35(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_sincosf16_u35(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_finz_sincosf16_u35(__m512);
+IMPORT CONST __m512 Sleef_tanf16_u35(__m512);
+IMPORT CONST __m512 Sleef_finz_tanf16_u35(__m512);
+IMPORT CONST __m512 Sleef_asinf16_u35(__m512);
+IMPORT CONST __m512 Sleef_finz_asinf16_u35(__m512);
+IMPORT CONST __m512 Sleef_acosf16_u35(__m512);
+IMPORT CONST __m512 Sleef_finz_acosf16_u35(__m512);
+IMPORT CONST __m512 Sleef_atanf16_u35(__m512);
+IMPORT CONST __m512 Sleef_finz_atanf16_u35(__m512);
+IMPORT CONST __m512 Sleef_atan2f16_u35(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_atan2f16_u35(__m512, __m512);
+IMPORT CONST __m512 Sleef_logf16_u35(__m512);
+IMPORT CONST __m512 Sleef_finz_logf16_u35(__m512);
+IMPORT CONST __m512 Sleef_cbrtf16_u35(__m512);
+IMPORT CONST __m512 Sleef_finz_cbrtf16_u35(__m512);
+IMPORT CONST __m512 Sleef_sinf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_sinf16_u10(__m512);
+IMPORT CONST __m512 Sleef_cosf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_cosf16_u10(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_sincosf16_u10(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_finz_sincosf16_u10(__m512);
+IMPORT CONST __m512 Sleef_tanf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_tanf16_u10(__m512);
+IMPORT CONST __m512 Sleef_asinf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_asinf16_u10(__m512);
+IMPORT CONST __m512 Sleef_acosf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_acosf16_u10(__m512);
+IMPORT CONST __m512 Sleef_atanf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_atanf16_u10(__m512);
+IMPORT CONST __m512 Sleef_atan2f16_u10(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_atan2f16_u10(__m512, __m512);
+IMPORT CONST __m512 Sleef_logf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_logf16_u10(__m512);
+IMPORT CONST __m512 Sleef_cbrtf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_cbrtf16_u10(__m512);
+IMPORT CONST __m512 Sleef_expf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_expf16_u10(__m512);
+IMPORT CONST __m512 Sleef_powf16_u10(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_powf16_u10(__m512, __m512);
+IMPORT CONST __m512 Sleef_sinhf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_sinhf16_u10(__m512);
+IMPORT CONST __m512 Sleef_coshf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_coshf16_u10(__m512);
+IMPORT CONST __m512 Sleef_tanhf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_tanhf16_u10(__m512);
+IMPORT CONST __m512 Sleef_sinhf16_u35(__m512);
+IMPORT CONST __m512 Sleef_finz_sinhf16_u35(__m512);
+IMPORT CONST __m512 Sleef_coshf16_u35(__m512);
+IMPORT CONST __m512 Sleef_finz_coshf16_u35(__m512);
+IMPORT CONST __m512 Sleef_tanhf16_u35(__m512);
+IMPORT CONST __m512 Sleef_finz_tanhf16_u35(__m512);
+IMPORT CONST __m512 Sleef_fastsinf16_u3500(__m512);
+IMPORT CONST __m512 Sleef_finz_fastsinf16_u3500(__m512);
+IMPORT CONST __m512 Sleef_fastcosf16_u3500(__m512);
+IMPORT CONST __m512 Sleef_finz_fastcosf16_u3500(__m512);
+IMPORT CONST __m512 Sleef_fastpowf16_u3500(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_fastpowf16_u3500(__m512, __m512);
+IMPORT CONST __m512 Sleef_asinhf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_asinhf16_u10(__m512);
+IMPORT CONST __m512 Sleef_acoshf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_acoshf16_u10(__m512);
+IMPORT CONST __m512 Sleef_atanhf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_atanhf16_u10(__m512);
+IMPORT CONST __m512 Sleef_exp2f16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_exp2f16_u10(__m512);
+IMPORT CONST __m512 Sleef_exp2f16_u35(__m512);
+IMPORT CONST __m512 Sleef_finz_exp2f16_u35(__m512);
+IMPORT CONST __m512 Sleef_exp10f16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_exp10f16_u10(__m512);
+IMPORT CONST __m512 Sleef_exp10f16_u35(__m512);
+IMPORT CONST __m512 Sleef_finz_exp10f16_u35(__m512);
+IMPORT CONST __m512 Sleef_expm1f16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_expm1f16_u10(__m512);
+IMPORT CONST __m512 Sleef_log10f16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_log10f16_u10(__m512);
+IMPORT CONST __m512 Sleef_log2f16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_log2f16_u10(__m512);
+IMPORT CONST __m512 Sleef_log2f16_u35(__m512);
+IMPORT CONST __m512 Sleef_finz_log2f16_u35(__m512);
+IMPORT CONST __m512 Sleef_log1pf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_log1pf16_u10(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_sincospif16_u05(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_finz_sincospif16_u05(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_sincospif16_u35(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_finz_sincospif16_u35(__m512);
+IMPORT CONST __m512 Sleef_sinpif16_u05(__m512);
+IMPORT CONST __m512 Sleef_finz_sinpif16_u05(__m512);
+IMPORT CONST __m512 Sleef_cospif16_u05(__m512);
+IMPORT CONST __m512 Sleef_finz_cospif16_u05(__m512);
+IMPORT CONST __m512 Sleef_fmaf16(__m512, __m512, __m512);
+IMPORT CONST __m512 Sleef_finz_fmaf16(__m512, __m512, __m512);
+IMPORT CONST __m512 Sleef_sqrtf16(__m512);
+IMPORT CONST __m512 Sleef_finz_sqrtf16(__m512);
+IMPORT CONST __m512 Sleef_sqrtf16_u05(__m512);
+IMPORT CONST __m512 Sleef_finz_sqrtf16_u05(__m512);
+IMPORT CONST __m512 Sleef_sqrtf16_u35(__m512);
+IMPORT CONST __m512 Sleef_finz_sqrtf16_u35(__m512);
+IMPORT CONST __m512 Sleef_hypotf16_u05(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_hypotf16_u05(__m512, __m512);
+IMPORT CONST __m512 Sleef_hypotf16_u35(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_hypotf16_u35(__m512, __m512);
+IMPORT CONST __m512 Sleef_fabsf16(__m512);
+IMPORT CONST __m512 Sleef_finz_fabsf16(__m512);
+IMPORT CONST __m512 Sleef_copysignf16(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_copysignf16(__m512, __m512);
+IMPORT CONST __m512 Sleef_fmaxf16(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_fmaxf16(__m512, __m512);
+IMPORT CONST __m512 Sleef_fminf16(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_fminf16(__m512, __m512);
+IMPORT CONST __m512 Sleef_fdimf16(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_fdimf16(__m512, __m512);
+IMPORT CONST __m512 Sleef_truncf16(__m512);
+IMPORT CONST __m512 Sleef_finz_truncf16(__m512);
+IMPORT CONST __m512 Sleef_floorf16(__m512);
+IMPORT CONST __m512 Sleef_finz_floorf16(__m512);
+IMPORT CONST __m512 Sleef_ceilf16(__m512);
+IMPORT CONST __m512 Sleef_finz_ceilf16(__m512);
+IMPORT CONST __m512 Sleef_roundf16(__m512);
+IMPORT CONST __m512 Sleef_finz_roundf16(__m512);
+IMPORT CONST __m512 Sleef_rintf16(__m512);
+IMPORT CONST __m512 Sleef_finz_rintf16(__m512);
+IMPORT CONST __m512 Sleef_nextafterf16(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_nextafterf16(__m512, __m512);
+IMPORT CONST __m512 Sleef_frfrexpf16(__m512);
+IMPORT CONST __m512 Sleef_finz_frfrexpf16(__m512);
+IMPORT CONST __m512 Sleef_fmodf16(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_fmodf16(__m512, __m512);
+IMPORT CONST Sleef___m512_2 Sleef_modff16(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_finz_modff16(__m512);
+IMPORT CONST __m512 Sleef_lgammaf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_lgammaf16_u10(__m512);
+IMPORT CONST __m512 Sleef_tgammaf16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_tgammaf16_u10(__m512);
+IMPORT CONST __m512 Sleef_erff16_u10(__m512);
+IMPORT CONST __m512 Sleef_finz_erff16_u10(__m512);
+IMPORT CONST __m512 Sleef_erfcf16_u15(__m512);
+IMPORT CONST __m512 Sleef_finz_erfcf16_u15(__m512);
+IMPORT CONST int Sleef_getIntf16(int);
+IMPORT CONST int Sleef_finz_getIntf16(int);
+IMPORT CONST void *Sleef_getPtrf16(int);
+IMPORT CONST void *Sleef_finz_getPtrf16(int);
+#endif
+#ifdef __AVX512F__
+#define STRUCT_KEYWORD___AVX512F__ struct
+
+#ifndef Sleef___m512d_2_DEFINED
+typedef STRUCT_KEYWORD___AVX512F__ {
+  __m512d x, y;
+} Sleef___m512d_2;
+#define Sleef___m512d_2_DEFINED
+#endif
+
+IMPORT CONST __m512d Sleef_sind8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_sind8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_cosd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_cosd8_u35avx512f(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_sincosd8_u35avx512f(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_finz_sincosd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_tand8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_tand8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_asind8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_asind8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_acosd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_acosd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_atand8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_atand8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_atan2d8_u35avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_atan2d8_u35avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_logd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_logd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_cbrtd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_cbrtd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_sind8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_sind8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_cosd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_cosd8_u10avx512f(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_sincosd8_u10avx512f(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_finz_sincosd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_tand8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_tand8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_asind8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_asind8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_acosd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_acosd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_atand8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_atand8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_atan2d8_u10avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_atan2d8_u10avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_logd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_logd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_cbrtd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_cbrtd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_expd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_expd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_powd8_u10avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_powd8_u10avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_sinhd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_sinhd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_coshd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_coshd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_tanhd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_tanhd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_sinhd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_sinhd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_coshd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_coshd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_tanhd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_tanhd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_fastsind8_u3500avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_fastsind8_u3500avx512f(__m512d);
+IMPORT CONST __m512d Sleef_fastcosd8_u3500avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_fastcosd8_u3500avx512f(__m512d);
+IMPORT CONST __m512d Sleef_fastpowd8_u3500avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_fastpowd8_u3500avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_asinhd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_asinhd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_acoshd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_acoshd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_atanhd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_atanhd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_exp2d8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_exp2d8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_exp2d8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_exp2d8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_exp10d8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_exp10d8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_exp10d8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_exp10d8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_expm1d8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_expm1d8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_log10d8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_log10d8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_log2d8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_log2d8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_log2d8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_log2d8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_log1pd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_log1pd8_u10avx512f(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_sincospid8_u05avx512f(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_finz_sincospid8_u05avx512f(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_sincospid8_u35avx512f(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_finz_sincospid8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_sinpid8_u05avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_sinpid8_u05avx512f(__m512d);
+IMPORT CONST __m512d Sleef_cospid8_u05avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_cospid8_u05avx512f(__m512d);
+IMPORT CONST __m512d Sleef_ldexpd8_avx512f(__m512d, __m256i);
+IMPORT CONST __m512d Sleef_finz_ldexpd8_avx512f(__m512d, __m256i);
+IMPORT CONST __m256i Sleef_ilogbd8_avx512f(__m512d);
+IMPORT CONST __m256i Sleef_finz_ilogbd8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_fmad8_avx512f(__m512d, __m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_fmad8_avx512f(__m512d, __m512d, __m512d);
+IMPORT CONST __m512d Sleef_sqrtd8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_sqrtd8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_sqrtd8_u05avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_sqrtd8_u05avx512f(__m512d);
+IMPORT CONST __m512d Sleef_sqrtd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_sqrtd8_u35avx512f(__m512d);
+IMPORT CONST __m512d Sleef_hypotd8_u05avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_hypotd8_u05avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_hypotd8_u35avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_hypotd8_u35avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_fabsd8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_fabsd8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_copysignd8_avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_copysignd8_avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_fmaxd8_avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_fmaxd8_avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_fmind8_avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_fmind8_avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_fdimd8_avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_fdimd8_avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_truncd8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_truncd8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_floord8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_floord8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_ceild8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_ceild8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_roundd8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_roundd8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_rintd8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_rintd8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_nextafterd8_avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_nextafterd8_avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_frfrexpd8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_frfrexpd8_avx512f(__m512d);
+IMPORT CONST __m256i Sleef_expfrexpd8_avx512f(__m512d);
+IMPORT CONST __m256i Sleef_finz_expfrexpd8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_fmodd8_avx512f(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_finz_fmodd8_avx512f(__m512d, __m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_modfd8_avx512f(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_finz_modfd8_avx512f(__m512d);
+IMPORT CONST __m512d Sleef_lgammad8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_lgammad8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_tgammad8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_tgammad8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_erfd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_erfd8_u10avx512f(__m512d);
+IMPORT CONST __m512d Sleef_erfcd8_u15avx512f(__m512d);
+IMPORT CONST __m512d Sleef_finz_erfcd8_u15avx512f(__m512d);
+IMPORT CONST int Sleef_getIntd8_avx512f(int);
+IMPORT CONST void *Sleef_getPtrd8_avx512f(int);
+
+#ifndef Sleef___m512_2_DEFINED
+typedef STRUCT_KEYWORD___AVX512F__ {
+  __m512 x, y;
+} Sleef___m512_2;
+#define Sleef___m512_2_DEFINED
+#endif
+
+IMPORT CONST __m512 Sleef_sinf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_sinf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_cosf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_cosf16_u35avx512f(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_sincosf16_u35avx512f(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_finz_sincosf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_tanf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_tanf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_asinf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_asinf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_acosf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_acosf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_atanf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_atanf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_atan2f16_u35avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_atan2f16_u35avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_logf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_logf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_cbrtf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_cbrtf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_sinf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_sinf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_cosf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_cosf16_u10avx512f(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_sincosf16_u10avx512f(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_finz_sincosf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_tanf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_tanf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_asinf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_asinf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_acosf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_acosf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_atanf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_atanf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_atan2f16_u10avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_atan2f16_u10avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_logf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_logf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_cbrtf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_cbrtf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_expf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_expf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_powf16_u10avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_powf16_u10avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_sinhf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_sinhf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_coshf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_coshf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_tanhf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_tanhf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_sinhf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_sinhf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_coshf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_coshf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_tanhf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_tanhf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_fastsinf16_u3500avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_fastsinf16_u3500avx512f(__m512);
+IMPORT CONST __m512 Sleef_fastcosf16_u3500avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_fastcosf16_u3500avx512f(__m512);
+IMPORT CONST __m512 Sleef_fastpowf16_u3500avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_fastpowf16_u3500avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_asinhf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_asinhf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_acoshf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_acoshf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_atanhf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_atanhf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_exp2f16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_exp2f16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_exp2f16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_exp2f16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_exp10f16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_exp10f16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_exp10f16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_exp10f16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_expm1f16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_expm1f16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_log10f16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_log10f16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_log2f16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_log2f16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_log2f16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_log2f16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_log1pf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_log1pf16_u10avx512f(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_sincospif16_u05avx512f(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_finz_sincospif16_u05avx512f(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_sincospif16_u35avx512f(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_finz_sincospif16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_sinpif16_u05avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_sinpif16_u05avx512f(__m512);
+IMPORT CONST __m512 Sleef_cospif16_u05avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_cospif16_u05avx512f(__m512);
+IMPORT CONST __m512 Sleef_fmaf16_avx512f(__m512, __m512, __m512);
+IMPORT CONST __m512 Sleef_finz_fmaf16_avx512f(__m512, __m512, __m512);
+IMPORT CONST __m512 Sleef_sqrtf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_sqrtf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_sqrtf16_u05avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_sqrtf16_u05avx512f(__m512);
+IMPORT CONST __m512 Sleef_sqrtf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_sqrtf16_u35avx512f(__m512);
+IMPORT CONST __m512 Sleef_hypotf16_u05avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_hypotf16_u05avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_hypotf16_u35avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_hypotf16_u35avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_fabsf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_fabsf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_copysignf16_avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_copysignf16_avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_fmaxf16_avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_fmaxf16_avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_fminf16_avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_fminf16_avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_fdimf16_avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_fdimf16_avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_truncf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_truncf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_floorf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_floorf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_ceilf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_ceilf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_roundf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_roundf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_rintf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_rintf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_nextafterf16_avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_nextafterf16_avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_frfrexpf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_frfrexpf16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_fmodf16_avx512f(__m512, __m512);
+IMPORT CONST __m512 Sleef_finz_fmodf16_avx512f(__m512, __m512);
+IMPORT CONST Sleef___m512_2 Sleef_modff16_avx512f(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_finz_modff16_avx512f(__m512);
+IMPORT CONST __m512 Sleef_lgammaf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_lgammaf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_tgammaf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_tgammaf16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_erff16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_erff16_u10avx512f(__m512);
+IMPORT CONST __m512 Sleef_erfcf16_u15avx512f(__m512);
+IMPORT CONST __m512 Sleef_finz_erfcf16_u15avx512f(__m512);
+IMPORT CONST int Sleef_getIntf16_avx512f(int);
+IMPORT CONST int Sleef_finz_getIntf16_avx512f(int);
+IMPORT CONST void *Sleef_getPtrf16_avx512f(int);
+IMPORT CONST void *Sleef_finz_getPtrf16_avx512f(int);
+#endif
+#ifdef __AVX512F__
+#define STRUCT_KEYWORD___AVX512F__ struct
+
+#ifndef Sleef___m512d_2_DEFINED
+typedef STRUCT_KEYWORD___AVX512F__ {
+  __m512d x, y;
+} Sleef___m512d_2;
+#define Sleef___m512d_2_DEFINED
+#endif
+
+IMPORT CONST __m512d Sleef_sind8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_sind8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cosd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_cosd8_u35avx512fnofma(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_sincosd8_u35avx512fnofma(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_cinz_sincosd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_tand8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_tand8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_asind8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_asind8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_acosd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_acosd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_atand8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_atand8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_atan2d8_u35avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_cinz_atan2d8_u35avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_logd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_logd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cbrtd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_cbrtd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_sind8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_sind8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cosd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_cosd8_u10avx512fnofma(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_sincosd8_u10avx512fnofma(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_cinz_sincosd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_tand8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_tand8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_asind8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_asind8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_acosd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_acosd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_atand8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_atand8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_atan2d8_u10avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_cinz_atan2d8_u10avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_logd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_logd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cbrtd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_cbrtd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_expd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_expd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_powd8_u10avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_cinz_powd8_u10avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_sinhd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_sinhd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_coshd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_coshd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_tanhd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_tanhd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_sinhd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_sinhd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_coshd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_coshd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_tanhd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_tanhd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_fastsind8_u3500avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_fastsind8_u3500avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_fastcosd8_u3500avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_fastcosd8_u3500avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_fastpowd8_u3500avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_cinz_fastpowd8_u3500avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_asinhd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_asinhd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_acoshd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_acoshd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_atanhd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_atanhd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_exp2d8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_exp2d8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_exp2d8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_exp2d8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_exp10d8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_exp10d8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_exp10d8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_exp10d8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_expm1d8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_expm1d8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_log10d8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_log10d8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_log2d8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_log2d8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_log2d8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_log2d8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_log1pd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_log1pd8_u10avx512fnofma(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_sincospid8_u05avx512fnofma(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_cinz_sincospid8_u05avx512fnofma(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_sincospid8_u35avx512fnofma(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_cinz_sincospid8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_sinpid8_u05avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_sinpid8_u05avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cospid8_u05avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_cospid8_u05avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_ldexpd8_avx512fnofma(__m512d, __m256i);
+IMPORT CONST __m512d Sleef_cinz_ldexpd8_avx512fnofma(__m512d, __m256i);
+IMPORT CONST __m256i Sleef_ilogbd8_avx512fnofma(__m512d);
+IMPORT CONST __m256i Sleef_cinz_ilogbd8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_fmad8_avx512fnofma(__m512d, __m512d, __m512d);
+IMPORT CONST __m512d Sleef_cinz_fmad8_avx512fnofma(__m512d, __m512d, __m512d);
+IMPORT CONST __m512d Sleef_sqrtd8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_sqrtd8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_sqrtd8_u05avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_sqrtd8_u05avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_sqrtd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_sqrtd8_u35avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_hypotd8_u05avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_cinz_hypotd8_u05avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_hypotd8_u35avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_cinz_hypotd8_u35avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_fabsd8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_fabsd8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_copysignd8_avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_cinz_copysignd8_avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_fmaxd8_avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_cinz_fmaxd8_avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_fmind8_avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_cinz_fmind8_avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_fdimd8_avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_cinz_fdimd8_avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_truncd8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_truncd8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_floord8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_floord8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_ceild8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_ceild8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_roundd8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_roundd8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_rintd8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_rintd8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_nextafterd8_avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_cinz_nextafterd8_avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_frfrexpd8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_frfrexpd8_avx512fnofma(__m512d);
+IMPORT CONST __m256i Sleef_expfrexpd8_avx512fnofma(__m512d);
+IMPORT CONST __m256i Sleef_cinz_expfrexpd8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_fmodd8_avx512fnofma(__m512d, __m512d);
+IMPORT CONST __m512d Sleef_cinz_fmodd8_avx512fnofma(__m512d, __m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_modfd8_avx512fnofma(__m512d);
+IMPORT CONST Sleef___m512d_2 Sleef_cinz_modfd8_avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_lgammad8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_lgammad8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_tgammad8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_tgammad8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_erfd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_erfd8_u10avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_erfcd8_u15avx512fnofma(__m512d);
+IMPORT CONST __m512d Sleef_cinz_erfcd8_u15avx512fnofma(__m512d);
+IMPORT CONST int Sleef_getIntd8_avx512fnofma(int);
+IMPORT CONST void *Sleef_getPtrd8_avx512fnofma(int);
+
+#ifndef Sleef___m512_2_DEFINED
+typedef STRUCT_KEYWORD___AVX512F__ {
+  __m512 x, y;
+} Sleef___m512_2;
+#define Sleef___m512_2_DEFINED
+#endif
+
+IMPORT CONST __m512 Sleef_sinf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_sinf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cosf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_cosf16_u35avx512fnofma(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_sincosf16_u35avx512fnofma(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_cinz_sincosf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_tanf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_tanf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_asinf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_asinf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_acosf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_acosf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_atanf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_atanf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_atan2f16_u35avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_cinz_atan2f16_u35avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_logf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_logf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cbrtf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_cbrtf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_sinf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_sinf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cosf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_cosf16_u10avx512fnofma(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_sincosf16_u10avx512fnofma(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_cinz_sincosf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_tanf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_tanf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_asinf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_asinf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_acosf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_acosf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_atanf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_atanf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_atan2f16_u10avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_cinz_atan2f16_u10avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_logf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_logf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cbrtf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_cbrtf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_expf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_expf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_powf16_u10avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_cinz_powf16_u10avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_sinhf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_sinhf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_coshf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_coshf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_tanhf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_tanhf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_sinhf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_sinhf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_coshf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_coshf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_tanhf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_tanhf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_fastsinf16_u3500avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_fastsinf16_u3500avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_fastcosf16_u3500avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_fastcosf16_u3500avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_fastpowf16_u3500avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_cinz_fastpowf16_u3500avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_asinhf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_asinhf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_acoshf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_acoshf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_atanhf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_atanhf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_exp2f16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_exp2f16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_exp2f16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_exp2f16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_exp10f16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_exp10f16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_exp10f16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_exp10f16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_expm1f16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_expm1f16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_log10f16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_log10f16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_log2f16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_log2f16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_log2f16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_log2f16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_log1pf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_log1pf16_u10avx512fnofma(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_sincospif16_u05avx512fnofma(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_cinz_sincospif16_u05avx512fnofma(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_sincospif16_u35avx512fnofma(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_cinz_sincospif16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_sinpif16_u05avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_sinpif16_u05avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cospif16_u05avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_cospif16_u05avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_fmaf16_avx512fnofma(__m512, __m512, __m512);
+IMPORT CONST __m512 Sleef_cinz_fmaf16_avx512fnofma(__m512, __m512, __m512);
+IMPORT CONST __m512 Sleef_sqrtf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_sqrtf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_sqrtf16_u05avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_sqrtf16_u05avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_sqrtf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_sqrtf16_u35avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_hypotf16_u05avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_cinz_hypotf16_u05avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_hypotf16_u35avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_cinz_hypotf16_u35avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_fabsf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_fabsf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_copysignf16_avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_cinz_copysignf16_avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_fmaxf16_avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_cinz_fmaxf16_avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_fminf16_avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_cinz_fminf16_avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_fdimf16_avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_cinz_fdimf16_avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_truncf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_truncf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_floorf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_floorf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_ceilf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_ceilf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_roundf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_roundf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_rintf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_rintf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_nextafterf16_avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_cinz_nextafterf16_avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_frfrexpf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_frfrexpf16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_fmodf16_avx512fnofma(__m512, __m512);
+IMPORT CONST __m512 Sleef_cinz_fmodf16_avx512fnofma(__m512, __m512);
+IMPORT CONST Sleef___m512_2 Sleef_modff16_avx512fnofma(__m512);
+IMPORT CONST Sleef___m512_2 Sleef_cinz_modff16_avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_lgammaf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_lgammaf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_tgammaf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_tgammaf16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_erff16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_erff16_u10avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_erfcf16_u15avx512fnofma(__m512);
+IMPORT CONST __m512 Sleef_cinz_erfcf16_u15avx512fnofma(__m512);
+IMPORT CONST int Sleef_getIntf16_avx512fnofma(int);
+IMPORT CONST int Sleef_cinz_getIntf16_avx512fnofma(int);
+IMPORT CONST void *Sleef_getPtrf16_avx512fnofma(int);
+IMPORT CONST void *Sleef_cinz_getPtrf16_avx512fnofma(int);
+#endif
+#ifdef __STDC__
+#define STRUCT_KEYWORD___STDC__ struct
+
+#ifndef Sleef_double_2_DEFINED
+typedef STRUCT_KEYWORD___STDC__ {
+  double x, y;
+} Sleef_double_2;
+#define Sleef_double_2_DEFINED
+#endif
+
+IMPORT CONST double Sleef_sind1_u35purec(double);
+IMPORT CONST double Sleef_cinz_sind1_u35purec(double);
+IMPORT CONST double Sleef_cosd1_u35purec(double);
+IMPORT CONST double Sleef_cinz_cosd1_u35purec(double);
+IMPORT CONST Sleef_double_2 Sleef_sincosd1_u35purec(double);
+IMPORT CONST Sleef_double_2 Sleef_cinz_sincosd1_u35purec(double);
+IMPORT CONST double Sleef_tand1_u35purec(double);
+IMPORT CONST double Sleef_cinz_tand1_u35purec(double);
+IMPORT CONST double Sleef_asind1_u35purec(double);
+IMPORT CONST double Sleef_cinz_asind1_u35purec(double);
+IMPORT CONST double Sleef_acosd1_u35purec(double);
+IMPORT CONST double Sleef_cinz_acosd1_u35purec(double);
+IMPORT CONST double Sleef_atand1_u35purec(double);
+IMPORT CONST double Sleef_cinz_atand1_u35purec(double);
+IMPORT CONST double Sleef_atan2d1_u35purec(double, double);
+IMPORT CONST double Sleef_cinz_atan2d1_u35purec(double, double);
+IMPORT CONST double Sleef_logd1_u35purec(double);
+IMPORT CONST double Sleef_cinz_logd1_u35purec(double);
+IMPORT CONST double Sleef_cbrtd1_u35purec(double);
+IMPORT CONST double Sleef_cinz_cbrtd1_u35purec(double);
+IMPORT CONST double Sleef_sind1_u10purec(double);
+IMPORT CONST double Sleef_cinz_sind1_u10purec(double);
+IMPORT CONST double Sleef_cosd1_u10purec(double);
+IMPORT CONST double Sleef_cinz_cosd1_u10purec(double);
+IMPORT CONST Sleef_double_2 Sleef_sincosd1_u10purec(double);
+IMPORT CONST Sleef_double_2 Sleef_cinz_sincosd1_u10purec(double);
+IMPORT CONST double Sleef_tand1_u10purec(double);
+IMPORT CONST double Sleef_cinz_tand1_u10purec(double);
+IMPORT CONST double Sleef_asind1_u10purec(double);
+IMPORT CONST double Sleef_cinz_asind1_u10purec(double);
+IMPORT CONST double Sleef_acosd1_u10purec(double);
+IMPORT CONST double Sleef_cinz_acosd1_u10purec(double);
+IMPORT CONST double Sleef_atand1_u10purec(double);
+IMPORT CONST double Sleef_cinz_atand1_u10purec(double);
+IMPORT CONST double Sleef_atan2d1_u10purec(double, double);
+IMPORT CONST double Sleef_cinz_atan2d1_u10purec(double, double);
+IMPORT CONST double Sleef_logd1_u10purec(double);
+IMPORT CONST double Sleef_cinz_logd1_u10purec(double);
+IMPORT CONST double Sleef_cbrtd1_u10purec(double);
+IMPORT CONST double Sleef_cinz_cbrtd1_u10purec(double);
+IMPORT CONST double Sleef_expd1_u10purec(double);
+IMPORT CONST double Sleef_cinz_expd1_u10purec(double);
+IMPORT CONST double Sleef_powd1_u10purec(double, double);
+IMPORT CONST double Sleef_cinz_powd1_u10purec(double, double);
+IMPORT CONST double Sleef_sinhd1_u10purec(double);
+IMPORT CONST double Sleef_cinz_sinhd1_u10purec(double);
+IMPORT CONST double Sleef_coshd1_u10purec(double);
+IMPORT CONST double Sleef_cinz_coshd1_u10purec(double);
+IMPORT CONST double Sleef_tanhd1_u10purec(double);
+IMPORT CONST double Sleef_cinz_tanhd1_u10purec(double);
+IMPORT CONST double Sleef_sinhd1_u35purec(double);
+IMPORT CONST double Sleef_cinz_sinhd1_u35purec(double);
+IMPORT CONST double Sleef_coshd1_u35purec(double);
+IMPORT CONST double Sleef_cinz_coshd1_u35purec(double);
+IMPORT CONST double Sleef_tanhd1_u35purec(double);
+IMPORT CONST double Sleef_cinz_tanhd1_u35purec(double);
+IMPORT CONST double Sleef_fastsind1_u3500purec(double);
+IMPORT CONST double Sleef_cinz_fastsind1_u3500purec(double);
+IMPORT CONST double Sleef_fastcosd1_u3500purec(double);
+IMPORT CONST double Sleef_cinz_fastcosd1_u3500purec(double);
+IMPORT CONST double Sleef_fastpowd1_u3500purec(double, double);
+IMPORT CONST double Sleef_cinz_fastpowd1_u3500purec(double, double);
+IMPORT CONST double Sleef_asinhd1_u10purec(double);
+IMPORT CONST double Sleef_cinz_asinhd1_u10purec(double);
+IMPORT CONST double Sleef_acoshd1_u10purec(double);
+IMPORT CONST double Sleef_cinz_acoshd1_u10purec(double);
+IMPORT CONST double Sleef_atanhd1_u10purec(double);
+IMPORT CONST double Sleef_cinz_atanhd1_u10purec(double);
+IMPORT CONST double Sleef_exp2d1_u10purec(double);
+IMPORT CONST double Sleef_cinz_exp2d1_u10purec(double);
+IMPORT CONST double Sleef_exp2d1_u35purec(double);
+IMPORT CONST double Sleef_cinz_exp2d1_u35purec(double);
+IMPORT CONST double Sleef_exp10d1_u10purec(double);
+IMPORT CONST double Sleef_cinz_exp10d1_u10purec(double);
+IMPORT CONST double Sleef_exp10d1_u35purec(double);
+IMPORT CONST double Sleef_cinz_exp10d1_u35purec(double);
+IMPORT CONST double Sleef_expm1d1_u10purec(double);
+IMPORT CONST double Sleef_cinz_expm1d1_u10purec(double);
+IMPORT CONST double Sleef_log10d1_u10purec(double);
+IMPORT CONST double Sleef_cinz_log10d1_u10purec(double);
+IMPORT CONST double Sleef_log2d1_u10purec(double);
+IMPORT CONST double Sleef_cinz_log2d1_u10purec(double);
+IMPORT CONST double Sleef_log2d1_u35purec(double);
+IMPORT CONST double Sleef_cinz_log2d1_u35purec(double);
+IMPORT CONST double Sleef_log1pd1_u10purec(double);
+IMPORT CONST double Sleef_cinz_log1pd1_u10purec(double);
+IMPORT CONST Sleef_double_2 Sleef_sincospid1_u05purec(double);
+IMPORT CONST Sleef_double_2 Sleef_cinz_sincospid1_u05purec(double);
+IMPORT CONST Sleef_double_2 Sleef_sincospid1_u35purec(double);
+IMPORT CONST Sleef_double_2 Sleef_cinz_sincospid1_u35purec(double);
+IMPORT CONST double Sleef_sinpid1_u05purec(double);
+IMPORT CONST double Sleef_cinz_sinpid1_u05purec(double);
+IMPORT CONST double Sleef_cospid1_u05purec(double);
+IMPORT CONST double Sleef_cinz_cospid1_u05purec(double);
+IMPORT CONST double Sleef_ldexpd1_purec(double, int32_t);
+IMPORT CONST double Sleef_cinz_ldexpd1_purec(double, int32_t);
+IMPORT CONST int32_t Sleef_ilogbd1_purec(double);
+IMPORT CONST int32_t Sleef_cinz_ilogbd1_purec(double);
+IMPORT CONST double Sleef_fmad1_purec(double, double, double);
+IMPORT CONST double Sleef_cinz_fmad1_purec(double, double, double);
+IMPORT CONST double Sleef_sqrtd1_purec(double);
+IMPORT CONST double Sleef_cinz_sqrtd1_purec(double);
+IMPORT CONST double Sleef_sqrtd1_u05purec(double);
+IMPORT CONST double Sleef_cinz_sqrtd1_u05purec(double);
+IMPORT CONST double Sleef_sqrtd1_u35purec(double);
+IMPORT CONST double Sleef_cinz_sqrtd1_u35purec(double);
+IMPORT CONST double Sleef_hypotd1_u05purec(double, double);
+IMPORT CONST double Sleef_cinz_hypotd1_u05purec(double, double);
+IMPORT CONST double Sleef_hypotd1_u35purec(double, double);
+IMPORT CONST double Sleef_cinz_hypotd1_u35purec(double, double);
+IMPORT CONST double Sleef_fabsd1_purec(double);
+IMPORT CONST double Sleef_cinz_fabsd1_purec(double);
+IMPORT CONST double Sleef_copysignd1_purec(double, double);
+IMPORT CONST double Sleef_cinz_copysignd1_purec(double, double);
+IMPORT CONST double Sleef_fmaxd1_purec(double, double);
+IMPORT CONST double Sleef_cinz_fmaxd1_purec(double, double);
+IMPORT CONST double Sleef_fmind1_purec(double, double);
+IMPORT CONST double Sleef_cinz_fmind1_purec(double, double);
+IMPORT CONST double Sleef_fdimd1_purec(double, double);
+IMPORT CONST double Sleef_cinz_fdimd1_purec(double, double);
+IMPORT CONST double Sleef_truncd1_purec(double);
+IMPORT CONST double Sleef_cinz_truncd1_purec(double);
+IMPORT CONST double Sleef_floord1_purec(double);
+IMPORT CONST double Sleef_cinz_floord1_purec(double);
+IMPORT CONST double Sleef_ceild1_purec(double);
+IMPORT CONST double Sleef_cinz_ceild1_purec(double);
+IMPORT CONST double Sleef_roundd1_purec(double);
+IMPORT CONST double Sleef_cinz_roundd1_purec(double);
+IMPORT CONST double Sleef_rintd1_purec(double);
+IMPORT CONST double Sleef_cinz_rintd1_purec(double);
+IMPORT CONST double Sleef_nextafterd1_purec(double, double);
+IMPORT CONST double Sleef_cinz_nextafterd1_purec(double, double);
+IMPORT CONST double Sleef_frfrexpd1_purec(double);
+IMPORT CONST double Sleef_cinz_frfrexpd1_purec(double);
+IMPORT CONST int32_t Sleef_expfrexpd1_purec(double);
+IMPORT CONST int32_t Sleef_cinz_expfrexpd1_purec(double);
+IMPORT CONST double Sleef_fmodd1_purec(double, double);
+IMPORT CONST double Sleef_cinz_fmodd1_purec(double, double);
+IMPORT CONST Sleef_double_2 Sleef_modfd1_purec(double);
+IMPORT CONST Sleef_double_2 Sleef_cinz_modfd1_purec(double);
+IMPORT CONST double Sleef_lgammad1_u10purec(double);
+IMPORT CONST double Sleef_cinz_lgammad1_u10purec(double);
+IMPORT CONST double Sleef_tgammad1_u10purec(double);
+IMPORT CONST double Sleef_cinz_tgammad1_u10purec(double);
+IMPORT CONST double Sleef_erfd1_u10purec(double);
+IMPORT CONST double Sleef_cinz_erfd1_u10purec(double);
+IMPORT CONST double Sleef_erfcd1_u15purec(double);
+IMPORT CONST double Sleef_cinz_erfcd1_u15purec(double);
+IMPORT CONST int Sleef_getIntd1_purec(int);
+IMPORT CONST void *Sleef_getPtrd1_purec(int);
+
+#ifndef Sleef_float_2_DEFINED
+typedef STRUCT_KEYWORD___STDC__ {
+  float x, y;
+} Sleef_float_2;
+#define Sleef_float_2_DEFINED
+#endif
+
+IMPORT CONST float Sleef_sinf1_u35purec(float);
+IMPORT CONST float Sleef_cinz_sinf1_u35purec(float);
+IMPORT CONST float Sleef_cosf1_u35purec(float);
+IMPORT CONST float Sleef_cinz_cosf1_u35purec(float);
+IMPORT CONST Sleef_float_2 Sleef_sincosf1_u35purec(float);
+IMPORT CONST Sleef_float_2 Sleef_cinz_sincosf1_u35purec(float);
+IMPORT CONST float Sleef_tanf1_u35purec(float);
+IMPORT CONST float Sleef_cinz_tanf1_u35purec(float);
+IMPORT CONST float Sleef_asinf1_u35purec(float);
+IMPORT CONST float Sleef_cinz_asinf1_u35purec(float);
+IMPORT CONST float Sleef_acosf1_u35purec(float);
+IMPORT CONST float Sleef_cinz_acosf1_u35purec(float);
+IMPORT CONST float Sleef_atanf1_u35purec(float);
+IMPORT CONST float Sleef_cinz_atanf1_u35purec(float);
+IMPORT CONST float Sleef_atan2f1_u35purec(float, float);
+IMPORT CONST float Sleef_cinz_atan2f1_u35purec(float, float);
+IMPORT CONST float Sleef_logf1_u35purec(float);
+IMPORT CONST float Sleef_cinz_logf1_u35purec(float);
+IMPORT CONST float Sleef_cbrtf1_u35purec(float);
+IMPORT CONST float Sleef_cinz_cbrtf1_u35purec(float);
+IMPORT CONST float Sleef_sinf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_sinf1_u10purec(float);
+IMPORT CONST float Sleef_cosf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_cosf1_u10purec(float);
+IMPORT CONST Sleef_float_2 Sleef_sincosf1_u10purec(float);
+IMPORT CONST Sleef_float_2 Sleef_cinz_sincosf1_u10purec(float);
+IMPORT CONST float Sleef_tanf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_tanf1_u10purec(float);
+IMPORT CONST float Sleef_asinf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_asinf1_u10purec(float);
+IMPORT CONST float Sleef_acosf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_acosf1_u10purec(float);
+IMPORT CONST float Sleef_atanf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_atanf1_u10purec(float);
+IMPORT CONST float Sleef_atan2f1_u10purec(float, float);
+IMPORT CONST float Sleef_cinz_atan2f1_u10purec(float, float);
+IMPORT CONST float Sleef_logf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_logf1_u10purec(float);
+IMPORT CONST float Sleef_cbrtf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_cbrtf1_u10purec(float);
+IMPORT CONST float Sleef_expf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_expf1_u10purec(float);
+IMPORT CONST float Sleef_powf1_u10purec(float, float);
+IMPORT CONST float Sleef_cinz_powf1_u10purec(float, float);
+IMPORT CONST float Sleef_sinhf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_sinhf1_u10purec(float);
+IMPORT CONST float Sleef_coshf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_coshf1_u10purec(float);
+IMPORT CONST float Sleef_tanhf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_tanhf1_u10purec(float);
+IMPORT CONST float Sleef_sinhf1_u35purec(float);
+IMPORT CONST float Sleef_cinz_sinhf1_u35purec(float);
+IMPORT CONST float Sleef_coshf1_u35purec(float);
+IMPORT CONST float Sleef_cinz_coshf1_u35purec(float);
+IMPORT CONST float Sleef_tanhf1_u35purec(float);
+IMPORT CONST float Sleef_cinz_tanhf1_u35purec(float);
+IMPORT CONST float Sleef_fastsinf1_u3500purec(float);
+IMPORT CONST float Sleef_cinz_fastsinf1_u3500purec(float);
+IMPORT CONST float Sleef_fastcosf1_u3500purec(float);
+IMPORT CONST float Sleef_cinz_fastcosf1_u3500purec(float);
+IMPORT CONST float Sleef_fastpowf1_u3500purec(float, float);
+IMPORT CONST float Sleef_cinz_fastpowf1_u3500purec(float, float);
+IMPORT CONST float Sleef_asinhf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_asinhf1_u10purec(float);
+IMPORT CONST float Sleef_acoshf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_acoshf1_u10purec(float);
+IMPORT CONST float Sleef_atanhf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_atanhf1_u10purec(float);
+IMPORT CONST float Sleef_exp2f1_u10purec(float);
+IMPORT CONST float Sleef_cinz_exp2f1_u10purec(float);
+IMPORT CONST float Sleef_exp2f1_u35purec(float);
+IMPORT CONST float Sleef_cinz_exp2f1_u35purec(float);
+IMPORT CONST float Sleef_exp10f1_u10purec(float);
+IMPORT CONST float Sleef_cinz_exp10f1_u10purec(float);
+IMPORT CONST float Sleef_exp10f1_u35purec(float);
+IMPORT CONST float Sleef_cinz_exp10f1_u35purec(float);
+IMPORT CONST float Sleef_expm1f1_u10purec(float);
+IMPORT CONST float Sleef_cinz_expm1f1_u10purec(float);
+IMPORT CONST float Sleef_log10f1_u10purec(float);
+IMPORT CONST float Sleef_cinz_log10f1_u10purec(float);
+IMPORT CONST float Sleef_log2f1_u10purec(float);
+IMPORT CONST float Sleef_cinz_log2f1_u10purec(float);
+IMPORT CONST float Sleef_log2f1_u35purec(float);
+IMPORT CONST float Sleef_cinz_log2f1_u35purec(float);
+IMPORT CONST float Sleef_log1pf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_log1pf1_u10purec(float);
+IMPORT CONST Sleef_float_2 Sleef_sincospif1_u05purec(float);
+IMPORT CONST Sleef_float_2 Sleef_cinz_sincospif1_u05purec(float);
+IMPORT CONST Sleef_float_2 Sleef_sincospif1_u35purec(float);
+IMPORT CONST Sleef_float_2 Sleef_cinz_sincospif1_u35purec(float);
+IMPORT CONST float Sleef_sinpif1_u05purec(float);
+IMPORT CONST float Sleef_cinz_sinpif1_u05purec(float);
+IMPORT CONST float Sleef_cospif1_u05purec(float);
+IMPORT CONST float Sleef_cinz_cospif1_u05purec(float);
+IMPORT CONST float Sleef_fmaf1_purec(float, float, float);
+IMPORT CONST float Sleef_cinz_fmaf1_purec(float, float, float);
+IMPORT CONST float Sleef_sqrtf1_purec(float);
+IMPORT CONST float Sleef_cinz_sqrtf1_purec(float);
+IMPORT CONST float Sleef_sqrtf1_u05purec(float);
+IMPORT CONST float Sleef_cinz_sqrtf1_u05purec(float);
+IMPORT CONST float Sleef_sqrtf1_u35purec(float);
+IMPORT CONST float Sleef_cinz_sqrtf1_u35purec(float);
+IMPORT CONST float Sleef_hypotf1_u05purec(float, float);
+IMPORT CONST float Sleef_cinz_hypotf1_u05purec(float, float);
+IMPORT CONST float Sleef_hypotf1_u35purec(float, float);
+IMPORT CONST float Sleef_cinz_hypotf1_u35purec(float, float);
+IMPORT CONST float Sleef_fabsf1_purec(float);
+IMPORT CONST float Sleef_cinz_fabsf1_purec(float);
+IMPORT CONST float Sleef_copysignf1_purec(float, float);
+IMPORT CONST float Sleef_cinz_copysignf1_purec(float, float);
+IMPORT CONST float Sleef_fmaxf1_purec(float, float);
+IMPORT CONST float Sleef_cinz_fmaxf1_purec(float, float);
+IMPORT CONST float Sleef_fminf1_purec(float, float);
+IMPORT CONST float Sleef_cinz_fminf1_purec(float, float);
+IMPORT CONST float Sleef_fdimf1_purec(float, float);
+IMPORT CONST float Sleef_cinz_fdimf1_purec(float, float);
+IMPORT CONST float Sleef_truncf1_purec(float);
+IMPORT CONST float Sleef_cinz_truncf1_purec(float);
+IMPORT CONST float Sleef_floorf1_purec(float);
+IMPORT CONST float Sleef_cinz_floorf1_purec(float);
+IMPORT CONST float Sleef_ceilf1_purec(float);
+IMPORT CONST float Sleef_cinz_ceilf1_purec(float);
+IMPORT CONST float Sleef_roundf1_purec(float);
+IMPORT CONST float Sleef_cinz_roundf1_purec(float);
+IMPORT CONST float Sleef_rintf1_purec(float);
+IMPORT CONST float Sleef_cinz_rintf1_purec(float);
+IMPORT CONST float Sleef_nextafterf1_purec(float, float);
+IMPORT CONST float Sleef_cinz_nextafterf1_purec(float, float);
+IMPORT CONST float Sleef_frfrexpf1_purec(float);
+IMPORT CONST float Sleef_cinz_frfrexpf1_purec(float);
+IMPORT CONST float Sleef_fmodf1_purec(float, float);
+IMPORT CONST float Sleef_cinz_fmodf1_purec(float, float);
+IMPORT CONST Sleef_float_2 Sleef_modff1_purec(float);
+IMPORT CONST Sleef_float_2 Sleef_cinz_modff1_purec(float);
+IMPORT CONST float Sleef_lgammaf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_lgammaf1_u10purec(float);
+IMPORT CONST float Sleef_tgammaf1_u10purec(float);
+IMPORT CONST float Sleef_cinz_tgammaf1_u10purec(float);
+IMPORT CONST float Sleef_erff1_u10purec(float);
+IMPORT CONST float Sleef_cinz_erff1_u10purec(float);
+IMPORT CONST float Sleef_erfcf1_u15purec(float);
+IMPORT CONST float Sleef_cinz_erfcf1_u15purec(float);
+IMPORT CONST int Sleef_getIntf1_purec(int);
+IMPORT CONST int Sleef_cinz_getIntf1_purec(int);
+IMPORT CONST void *Sleef_getPtrf1_purec(int);
+IMPORT CONST void *Sleef_cinz_getPtrf1_purec(int);
+#endif
+#ifdef FP_FAST_FMA
+#define STRUCT_KEYWORD_FP_FAST_FMA struct
+
+#ifndef Sleef_double_2_DEFINED
+typedef STRUCT_KEYWORD_FP_FAST_FMA {
+  double x, y;
+} Sleef_double_2;
+#define Sleef_double_2_DEFINED
+#endif
+
+IMPORT CONST double Sleef_sind1_u35purecfma(double);
+IMPORT CONST double Sleef_finz_sind1_u35purecfma(double);
+IMPORT CONST double Sleef_cosd1_u35purecfma(double);
+IMPORT CONST double Sleef_finz_cosd1_u35purecfma(double);
+IMPORT CONST Sleef_double_2 Sleef_sincosd1_u35purecfma(double);
+IMPORT CONST Sleef_double_2 Sleef_finz_sincosd1_u35purecfma(double);
+IMPORT CONST double Sleef_tand1_u35purecfma(double);
+IMPORT CONST double Sleef_finz_tand1_u35purecfma(double);
+IMPORT CONST double Sleef_asind1_u35purecfma(double);
+IMPORT CONST double Sleef_finz_asind1_u35purecfma(double);
+IMPORT CONST double Sleef_acosd1_u35purecfma(double);
+IMPORT CONST double Sleef_finz_acosd1_u35purecfma(double);
+IMPORT CONST double Sleef_atand1_u35purecfma(double);
+IMPORT CONST double Sleef_finz_atand1_u35purecfma(double);
+IMPORT CONST double Sleef_atan2d1_u35purecfma(double, double);
+IMPORT CONST double Sleef_finz_atan2d1_u35purecfma(double, double);
+IMPORT CONST double Sleef_logd1_u35purecfma(double);
+IMPORT CONST double Sleef_finz_logd1_u35purecfma(double);
+IMPORT CONST double Sleef_cbrtd1_u35purecfma(double);
+IMPORT CONST double Sleef_finz_cbrtd1_u35purecfma(double);
+IMPORT CONST double Sleef_sind1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_sind1_u10purecfma(double);
+IMPORT CONST double Sleef_cosd1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_cosd1_u10purecfma(double);
+IMPORT CONST Sleef_double_2 Sleef_sincosd1_u10purecfma(double);
+IMPORT CONST Sleef_double_2 Sleef_finz_sincosd1_u10purecfma(double);
+IMPORT CONST double Sleef_tand1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_tand1_u10purecfma(double);
+IMPORT CONST double Sleef_asind1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_asind1_u10purecfma(double);
+IMPORT CONST double Sleef_acosd1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_acosd1_u10purecfma(double);
+IMPORT CONST double Sleef_atand1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_atand1_u10purecfma(double);
+IMPORT CONST double Sleef_atan2d1_u10purecfma(double, double);
+IMPORT CONST double Sleef_finz_atan2d1_u10purecfma(double, double);
+IMPORT CONST double Sleef_logd1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_logd1_u10purecfma(double);
+IMPORT CONST double Sleef_cbrtd1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_cbrtd1_u10purecfma(double);
+IMPORT CONST double Sleef_expd1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_expd1_u10purecfma(double);
+IMPORT CONST double Sleef_powd1_u10purecfma(double, double);
+IMPORT CONST double Sleef_finz_powd1_u10purecfma(double, double);
+IMPORT CONST double Sleef_sinhd1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_sinhd1_u10purecfma(double);
+IMPORT CONST double Sleef_coshd1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_coshd1_u10purecfma(double);
+IMPORT CONST double Sleef_tanhd1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_tanhd1_u10purecfma(double);
+IMPORT CONST double Sleef_sinhd1_u35purecfma(double);
+IMPORT CONST double Sleef_finz_sinhd1_u35purecfma(double);
+IMPORT CONST double Sleef_coshd1_u35purecfma(double);
+IMPORT CONST double Sleef_finz_coshd1_u35purecfma(double);
+IMPORT CONST double Sleef_tanhd1_u35purecfma(double);
+IMPORT CONST double Sleef_finz_tanhd1_u35purecfma(double);
+IMPORT CONST double Sleef_fastsind1_u3500purecfma(double);
+IMPORT CONST double Sleef_finz_fastsind1_u3500purecfma(double);
+IMPORT CONST double Sleef_fastcosd1_u3500purecfma(double);
+IMPORT CONST double Sleef_finz_fastcosd1_u3500purecfma(double);
+IMPORT CONST double Sleef_fastpowd1_u3500purecfma(double, double);
+IMPORT CONST double Sleef_finz_fastpowd1_u3500purecfma(double, double);
+IMPORT CONST double Sleef_asinhd1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_asinhd1_u10purecfma(double);
+IMPORT CONST double Sleef_acoshd1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_acoshd1_u10purecfma(double);
+IMPORT CONST double Sleef_atanhd1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_atanhd1_u10purecfma(double);
+IMPORT CONST double Sleef_exp2d1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_exp2d1_u10purecfma(double);
+IMPORT CONST double Sleef_exp2d1_u35purecfma(double);
+IMPORT CONST double Sleef_finz_exp2d1_u35purecfma(double);
+IMPORT CONST double Sleef_exp10d1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_exp10d1_u10purecfma(double);
+IMPORT CONST double Sleef_exp10d1_u35purecfma(double);
+IMPORT CONST double Sleef_finz_exp10d1_u35purecfma(double);
+IMPORT CONST double Sleef_expm1d1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_expm1d1_u10purecfma(double);
+IMPORT CONST double Sleef_log10d1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_log10d1_u10purecfma(double);
+IMPORT CONST double Sleef_log2d1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_log2d1_u10purecfma(double);
+IMPORT CONST double Sleef_log2d1_u35purecfma(double);
+IMPORT CONST double Sleef_finz_log2d1_u35purecfma(double);
+IMPORT CONST double Sleef_log1pd1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_log1pd1_u10purecfma(double);
+IMPORT CONST Sleef_double_2 Sleef_sincospid1_u05purecfma(double);
+IMPORT CONST Sleef_double_2 Sleef_finz_sincospid1_u05purecfma(double);
+IMPORT CONST Sleef_double_2 Sleef_sincospid1_u35purecfma(double);
+IMPORT CONST Sleef_double_2 Sleef_finz_sincospid1_u35purecfma(double);
+IMPORT CONST double Sleef_sinpid1_u05purecfma(double);
+IMPORT CONST double Sleef_finz_sinpid1_u05purecfma(double);
+IMPORT CONST double Sleef_cospid1_u05purecfma(double);
+IMPORT CONST double Sleef_finz_cospid1_u05purecfma(double);
+IMPORT CONST double Sleef_ldexpd1_purecfma(double, int32_t);
+IMPORT CONST double Sleef_finz_ldexpd1_purecfma(double, int32_t);
+IMPORT CONST int32_t Sleef_ilogbd1_purecfma(double);
+IMPORT CONST int32_t Sleef_finz_ilogbd1_purecfma(double);
+IMPORT CONST double Sleef_fmad1_purecfma(double, double, double);
+IMPORT CONST double Sleef_finz_fmad1_purecfma(double, double, double);
+IMPORT CONST double Sleef_sqrtd1_purecfma(double);
+IMPORT CONST double Sleef_finz_sqrtd1_purecfma(double);
+IMPORT CONST double Sleef_sqrtd1_u05purecfma(double);
+IMPORT CONST double Sleef_finz_sqrtd1_u05purecfma(double);
+IMPORT CONST double Sleef_sqrtd1_u35purecfma(double);
+IMPORT CONST double Sleef_finz_sqrtd1_u35purecfma(double);
+IMPORT CONST double Sleef_hypotd1_u05purecfma(double, double);
+IMPORT CONST double Sleef_finz_hypotd1_u05purecfma(double, double);
+IMPORT CONST double Sleef_hypotd1_u35purecfma(double, double);
+IMPORT CONST double Sleef_finz_hypotd1_u35purecfma(double, double);
+IMPORT CONST double Sleef_fabsd1_purecfma(double);
+IMPORT CONST double Sleef_finz_fabsd1_purecfma(double);
+IMPORT CONST double Sleef_copysignd1_purecfma(double, double);
+IMPORT CONST double Sleef_finz_copysignd1_purecfma(double, double);
+IMPORT CONST double Sleef_fmaxd1_purecfma(double, double);
+IMPORT CONST double Sleef_finz_fmaxd1_purecfma(double, double);
+IMPORT CONST double Sleef_fmind1_purecfma(double, double);
+IMPORT CONST double Sleef_finz_fmind1_purecfma(double, double);
+IMPORT CONST double Sleef_fdimd1_purecfma(double, double);
+IMPORT CONST double Sleef_finz_fdimd1_purecfma(double, double);
+IMPORT CONST double Sleef_truncd1_purecfma(double);
+IMPORT CONST double Sleef_finz_truncd1_purecfma(double);
+IMPORT CONST double Sleef_floord1_purecfma(double);
+IMPORT CONST double Sleef_finz_floord1_purecfma(double);
+IMPORT CONST double Sleef_ceild1_purecfma(double);
+IMPORT CONST double Sleef_finz_ceild1_purecfma(double);
+IMPORT CONST double Sleef_roundd1_purecfma(double);
+IMPORT CONST double Sleef_finz_roundd1_purecfma(double);
+IMPORT CONST double Sleef_rintd1_purecfma(double);
+IMPORT CONST double Sleef_finz_rintd1_purecfma(double);
+IMPORT CONST double Sleef_nextafterd1_purecfma(double, double);
+IMPORT CONST double Sleef_finz_nextafterd1_purecfma(double, double);
+IMPORT CONST double Sleef_frfrexpd1_purecfma(double);
+IMPORT CONST double Sleef_finz_frfrexpd1_purecfma(double);
+IMPORT CONST int32_t Sleef_expfrexpd1_purecfma(double);
+IMPORT CONST int32_t Sleef_finz_expfrexpd1_purecfma(double);
+IMPORT CONST double Sleef_fmodd1_purecfma(double, double);
+IMPORT CONST double Sleef_finz_fmodd1_purecfma(double, double);
+IMPORT CONST Sleef_double_2 Sleef_modfd1_purecfma(double);
+IMPORT CONST Sleef_double_2 Sleef_finz_modfd1_purecfma(double);
+IMPORT CONST double Sleef_lgammad1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_lgammad1_u10purecfma(double);
+IMPORT CONST double Sleef_tgammad1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_tgammad1_u10purecfma(double);
+IMPORT CONST double Sleef_erfd1_u10purecfma(double);
+IMPORT CONST double Sleef_finz_erfd1_u10purecfma(double);
+IMPORT CONST double Sleef_erfcd1_u15purecfma(double);
+IMPORT CONST double Sleef_finz_erfcd1_u15purecfma(double);
+IMPORT CONST int Sleef_getIntd1_purecfma(int);
+IMPORT CONST void *Sleef_getPtrd1_purecfma(int);
+
+#ifndef Sleef_float_2_DEFINED
+typedef STRUCT_KEYWORD_FP_FAST_FMA {
+  float x, y;
+} Sleef_float_2;
+#define Sleef_float_2_DEFINED
+#endif
+
+IMPORT CONST float Sleef_sinf1_u35purecfma(float);
+IMPORT CONST float Sleef_finz_sinf1_u35purecfma(float);
+IMPORT CONST float Sleef_cosf1_u35purecfma(float);
+IMPORT CONST float Sleef_finz_cosf1_u35purecfma(float);
+IMPORT CONST Sleef_float_2 Sleef_sincosf1_u35purecfma(float);
+IMPORT CONST Sleef_float_2 Sleef_finz_sincosf1_u35purecfma(float);
+IMPORT CONST float Sleef_tanf1_u35purecfma(float);
+IMPORT CONST float Sleef_finz_tanf1_u35purecfma(float);
+IMPORT CONST float Sleef_asinf1_u35purecfma(float);
+IMPORT CONST float Sleef_finz_asinf1_u35purecfma(float);
+IMPORT CONST float Sleef_acosf1_u35purecfma(float);
+IMPORT CONST float Sleef_finz_acosf1_u35purecfma(float);
+IMPORT CONST float Sleef_atanf1_u35purecfma(float);
+IMPORT CONST float Sleef_finz_atanf1_u35purecfma(float);
+IMPORT CONST float Sleef_atan2f1_u35purecfma(float, float);
+IMPORT CONST float Sleef_finz_atan2f1_u35purecfma(float, float);
+IMPORT CONST float Sleef_logf1_u35purecfma(float);
+IMPORT CONST float Sleef_finz_logf1_u35purecfma(float);
+IMPORT CONST float Sleef_cbrtf1_u35purecfma(float);
+IMPORT CONST float Sleef_finz_cbrtf1_u35purecfma(float);
+IMPORT CONST float Sleef_sinf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_sinf1_u10purecfma(float);
+IMPORT CONST float Sleef_cosf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_cosf1_u10purecfma(float);
+IMPORT CONST Sleef_float_2 Sleef_sincosf1_u10purecfma(float);
+IMPORT CONST Sleef_float_2 Sleef_finz_sincosf1_u10purecfma(float);
+IMPORT CONST float Sleef_tanf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_tanf1_u10purecfma(float);
+IMPORT CONST float Sleef_asinf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_asinf1_u10purecfma(float);
+IMPORT CONST float Sleef_acosf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_acosf1_u10purecfma(float);
+IMPORT CONST float Sleef_atanf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_atanf1_u10purecfma(float);
+IMPORT CONST float Sleef_atan2f1_u10purecfma(float, float);
+IMPORT CONST float Sleef_finz_atan2f1_u10purecfma(float, float);
+IMPORT CONST float Sleef_logf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_logf1_u10purecfma(float);
+IMPORT CONST float Sleef_cbrtf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_cbrtf1_u10purecfma(float);
+IMPORT CONST float Sleef_expf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_expf1_u10purecfma(float);
+IMPORT CONST float Sleef_powf1_u10purecfma(float, float);
+IMPORT CONST float Sleef_finz_powf1_u10purecfma(float, float);
+IMPORT CONST float Sleef_sinhf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_sinhf1_u10purecfma(float);
+IMPORT CONST float Sleef_coshf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_coshf1_u10purecfma(float);
+IMPORT CONST float Sleef_tanhf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_tanhf1_u10purecfma(float);
+IMPORT CONST float Sleef_sinhf1_u35purecfma(float);
+IMPORT CONST float Sleef_finz_sinhf1_u35purecfma(float);
+IMPORT CONST float Sleef_coshf1_u35purecfma(float);
+IMPORT CONST float Sleef_finz_coshf1_u35purecfma(float);
+IMPORT CONST float Sleef_tanhf1_u35purecfma(float);
+IMPORT CONST float Sleef_finz_tanhf1_u35purecfma(float);
+IMPORT CONST float Sleef_fastsinf1_u3500purecfma(float);
+IMPORT CONST float Sleef_finz_fastsinf1_u3500purecfma(float);
+IMPORT CONST float Sleef_fastcosf1_u3500purecfma(float);
+IMPORT CONST float Sleef_finz_fastcosf1_u3500purecfma(float);
+IMPORT CONST float Sleef_fastpowf1_u3500purecfma(float, float);
+IMPORT CONST float Sleef_finz_fastpowf1_u3500purecfma(float, float);
+IMPORT CONST float Sleef_asinhf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_asinhf1_u10purecfma(float);
+IMPORT CONST float Sleef_acoshf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_acoshf1_u10purecfma(float);
+IMPORT CONST float Sleef_atanhf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_atanhf1_u10purecfma(float);
+IMPORT CONST float Sleef_exp2f1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_exp2f1_u10purecfma(float);
+IMPORT CONST float Sleef_exp2f1_u35purecfma(float);
+IMPORT CONST float Sleef_finz_exp2f1_u35purecfma(float);
+IMPORT CONST float Sleef_exp10f1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_exp10f1_u10purecfma(float);
+IMPORT CONST float Sleef_exp10f1_u35purecfma(float);
+IMPORT CONST float Sleef_finz_exp10f1_u35purecfma(float);
+IMPORT CONST float Sleef_expm1f1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_expm1f1_u10purecfma(float);
+IMPORT CONST float Sleef_log10f1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_log10f1_u10purecfma(float);
+IMPORT CONST float Sleef_log2f1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_log2f1_u10purecfma(float);
+IMPORT CONST float Sleef_log2f1_u35purecfma(float);
+IMPORT CONST float Sleef_finz_log2f1_u35purecfma(float);
+IMPORT CONST float Sleef_log1pf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_log1pf1_u10purecfma(float);
+IMPORT CONST Sleef_float_2 Sleef_sincospif1_u05purecfma(float);
+IMPORT CONST Sleef_float_2 Sleef_finz_sincospif1_u05purecfma(float);
+IMPORT CONST Sleef_float_2 Sleef_sincospif1_u35purecfma(float);
+IMPORT CONST Sleef_float_2 Sleef_finz_sincospif1_u35purecfma(float);
+IMPORT CONST float Sleef_sinpif1_u05purecfma(float);
+IMPORT CONST float Sleef_finz_sinpif1_u05purecfma(float);
+IMPORT CONST float Sleef_cospif1_u05purecfma(float);
+IMPORT CONST float Sleef_finz_cospif1_u05purecfma(float);
+IMPORT CONST float Sleef_fmaf1_purecfma(float, float, float);
+IMPORT CONST float Sleef_finz_fmaf1_purecfma(float, float, float);
+IMPORT CONST float Sleef_sqrtf1_purecfma(float);
+IMPORT CONST float Sleef_finz_sqrtf1_purecfma(float);
+IMPORT CONST float Sleef_sqrtf1_u05purecfma(float);
+IMPORT CONST float Sleef_finz_sqrtf1_u05purecfma(float);
+IMPORT CONST float Sleef_sqrtf1_u35purecfma(float);
+IMPORT CONST float Sleef_finz_sqrtf1_u35purecfma(float);
+IMPORT CONST float Sleef_hypotf1_u05purecfma(float, float);
+IMPORT CONST float Sleef_finz_hypotf1_u05purecfma(float, float);
+IMPORT CONST float Sleef_hypotf1_u35purecfma(float, float);
+IMPORT CONST float Sleef_finz_hypotf1_u35purecfma(float, float);
+IMPORT CONST float Sleef_fabsf1_purecfma(float);
+IMPORT CONST float Sleef_finz_fabsf1_purecfma(float);
+IMPORT CONST float Sleef_copysignf1_purecfma(float, float);
+IMPORT CONST float Sleef_finz_copysignf1_purecfma(float, float);
+IMPORT CONST float Sleef_fmaxf1_purecfma(float, float);
+IMPORT CONST float Sleef_finz_fmaxf1_purecfma(float, float);
+IMPORT CONST float Sleef_fminf1_purecfma(float, float);
+IMPORT CONST float Sleef_finz_fminf1_purecfma(float, float);
+IMPORT CONST float Sleef_fdimf1_purecfma(float, float);
+IMPORT CONST float Sleef_finz_fdimf1_purecfma(float, float);
+IMPORT CONST float Sleef_truncf1_purecfma(float);
+IMPORT CONST float Sleef_finz_truncf1_purecfma(float);
+IMPORT CONST float Sleef_floorf1_purecfma(float);
+IMPORT CONST float Sleef_finz_floorf1_purecfma(float);
+IMPORT CONST float Sleef_ceilf1_purecfma(float);
+IMPORT CONST float Sleef_finz_ceilf1_purecfma(float);
+IMPORT CONST float Sleef_roundf1_purecfma(float);
+IMPORT CONST float Sleef_finz_roundf1_purecfma(float);
+IMPORT CONST float Sleef_rintf1_purecfma(float);
+IMPORT CONST float Sleef_finz_rintf1_purecfma(float);
+IMPORT CONST float Sleef_nextafterf1_purecfma(float, float);
+IMPORT CONST float Sleef_finz_nextafterf1_purecfma(float, float);
+IMPORT CONST float Sleef_frfrexpf1_purecfma(float);
+IMPORT CONST float Sleef_finz_frfrexpf1_purecfma(float);
+IMPORT CONST float Sleef_fmodf1_purecfma(float, float);
+IMPORT CONST float Sleef_finz_fmodf1_purecfma(float, float);
+IMPORT CONST Sleef_float_2 Sleef_modff1_purecfma(float);
+IMPORT CONST Sleef_float_2 Sleef_finz_modff1_purecfma(float);
+IMPORT CONST float Sleef_lgammaf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_lgammaf1_u10purecfma(float);
+IMPORT CONST float Sleef_tgammaf1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_tgammaf1_u10purecfma(float);
+IMPORT CONST float Sleef_erff1_u10purecfma(float);
+IMPORT CONST float Sleef_finz_erff1_u10purecfma(float);
+IMPORT CONST float Sleef_erfcf1_u15purecfma(float);
+IMPORT CONST float Sleef_finz_erfcf1_u15purecfma(float);
+IMPORT CONST int Sleef_getIntf1_purecfma(int);
+IMPORT CONST int Sleef_finz_getIntf1_purecfma(int);
+IMPORT CONST void *Sleef_getPtrf1_purecfma(int);
+IMPORT CONST void *Sleef_finz_getPtrf1_purecfma(int);
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#undef IMPORT
+#endif // #ifndef __SLEEF_H__
-- 
2.20.1


_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.