author: kx <kx@radix-linux.su> 2024-12-20 16:11:07 +0300
committer: kx <kx@radix-linux.su> 2024-12-20 16:11:07 +0300
commit: 868b2b66b564b5c00e3a74d10be45db7151627ac
parent: cce2ae8d3312493b7653358bb4af201d3271377b
Commit Summary:
Diffstat:
2 files changed, 50 insertions, 0 deletions
diff --git a/mpu/math/sin/emu00128/ei_sin_001_emu32lsb.dfn b/mpu/math/sin/emu00128/ei_sin_001_emu32lsb.dfn
new file mode 100644
index 0000000..e430d3a
--- /dev/null
+++ b/mpu/math/sin/emu00128/ei_sin_001_emu32lsb.dfn
@@ -0,0 +1,31 @@
+
+#ifndef __REAL_EINTERNAL_SIN_001_32LSB
+#define __REAL_EINTERNAL_SIN_001_32LSB
+
+#if BITS_PER_EMUSHORT == 32
+
+#define N_SIN_S128 12
+
+static EMUSHORT _ei_sin__S_128_[N_SIN_S128][NPIR_128] =
+{
+/* lgw S i g n i f i c a n d hgw Exp Sign */
+/* ========== ================================== ========== ========== ==========*/
+ { 0x00000000, 0x92d2ee04, 0xf6a310d6, 0x9f9e9305, 0x00000000, 0x3fffffab, 0x00000000 }, /* 6.446977471929205979469352962E-26 */
+ { 0x00000000, 0x81a19235, 0x4b7904a3, 0xbb0ddd8e, 0x00000000, 0x3fffffb4, 0xffffffff }, /* -3.868189406018357436728206214E-23 */
+ { 0x00000000, 0x566549bc, 0xdd302c59, 0xb8dc77b6, 0x00000000, 0x3fffffbd, 0x00000000 }, /* 1.957294106313286160860881666E-20 */
+ { 0x00000000, 0x41e5c981, 0xfdc3d453, 0x97a4da33, 0x00000000, 0x3fffffc6, 0xffffffff }, /* -8.220635246469373086707447393E-18 */
+ { 0x00000000, 0x5e99ac3c, 0x856a55d6, 0xca963b81, 0x00000000, 0x3fffffce, 0x00000000 }, /* 2.811457254345520885915621310E-15 */
+ { 0x00000000, 0x0ce30fc5, 0x9dc0fd4e, 0xd73f9f39, 0x00000000, 0x3fffffd6, 0xffffffff }, /* -7.647163731819817075084356900E-13 */
+ { 0x00000000, 0x1b7cc45e, 0x43684be5, 0xb092309d, 0x00000000, 0x3fffffde, 0x00000000 }, /* 1.605904383682161459938935751E-10 */
+ { 0x00000000, 0x387646ec, 0xaa271c7f, 0xd7322b3f, 0x00000000, 0x3fffffe5, 0xffffffff }, /* -2.505210838544171877504084566E-8 */
+ { 0x00000000, 0x560e44bc, 0xb6399c7d, 0xb8ef1d2a, 0x00000000, 0x3fffffec, 0x00000000 }, /* 2.755731922398589065255731926E-6 */
+ { 0x00000000, 0x00d00e27, 0x0d00d00d, 0xd00d00d0, 0x00000000, 0x3ffffff2, 0xffffffff }, /* -1.984126984126984126984126993E-4 */
+ { 0x00000000, 0x88888888, 0x88888888, 0x88888888, 0x00000000, 0x3ffffff8, 0x00000000 }, /* 8.333333333333333333333333333E-3 */
+ { 0x00000000, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0x00000000, 0x3ffffffc, 0xffffffff } /* -1.666666666666666666666666667E-1 */
+};
+
+#else /* BITS_PER_EMUSHORT != 32 */
+#error ei_sin_001_emu32lsb.dfn: ERROR: Failed size of EMUSHORT data type.
+#endif /* BITS_PER_EMUSHORT == 32 */
+
+#endif /* __REAL_EINTERNAL_SIN_001_32LSB */
diff --git a/mpu/math/sin/emu00128/ei_sin_001_emu32msb.dfn b/mpu/math/sin/emu00128/ei_sin_001_emu32msb.dfn
new file mode 100644
index 0000000..9c8cd75
--- /dev/null
+++ b/mpu/math/sin/emu00128/ei_sin_001_emu32msb.dfn
@@ -0,0 +1,31 @@
+
+#ifndef __REAL_EINTERNAL_SIN_001_32MSB
+#define __REAL_EINTERNAL_SIN_001_32MSB
+
+#if BITS_PER_EMUSHORT == 32
+
+#define N_SIN_S128 12
+
+static EMUSHORT _ei_sin__S_128_[N_SIN_S128][NPIR_128] =
+{
+/* Sign Exp hgw S i g n i f i c a n d lgw */
+/* ========== ========== ========== ================================== ==========*/
+ { 0x00000000, 0x3fffffab, 0x00000000, 0x9f9e9305, 0xf6a310d6, 0x92d2ee04, 0x00000000 }, /* 6.446977471929205979469352962E-26 */
+ { 0xffffffff, 0x3fffffb4, 0x00000000, 0xbb0ddd8e, 0x4b7904a3, 0x81a19235, 0x00000000 }, /* -3.868189406018357436728206214E-23 */
+ { 0x00000000, 0x3fffffbd, 0x00000000, 0xb8dc77b6, 0xdd302c59, 0x566549bc, 0x00000000 }, /* 1.957294106313286160860881666E-20 */
+ { 0xffffffff, 0x3fffffc6, 0x00000000, 0x97a4da33, 0xfdc3d453, 0x41e5c981, 0x00000000 }, /* -8.220635246469373086707447393E-18 */
+ { 0x00000000, 0x3fffffce, 0x00000000, 0xca963b81, 0x856a55d6, 0x5e99ac3c, 0x00000000 }, /* 2.811457254345520885915621310E-15 */
+ { 0xffffffff, 0x3fffffd6, 0x00000000, 0xd73f9f39, 0x9dc0fd4e, 0x0ce30fc5, 0x00000000 }, /* -7.647163731819817075084356900E-13 */
+ { 0x00000000, 0x3fffffde, 0x00000000, 0xb092309d, 0x43684be5, 0x1b7cc45e, 0x00000000 }, /* 1.605904383682161459938935751E-10 */
+ { 0xffffffff, 0x3fffffe5, 0x00000000, 0xd7322b3f, 0xaa271c7f, 0x387646ec, 0x00000000 }, /* -2.505210838544171877504084566E-8 */
+ { 0x00000000, 0x3fffffec, 0x00000000, 0xb8ef1d2a, 0xb6399c7d, 0x560e44bc, 0x00000000 }, /* 2.755731922398589065255731926E-6 */
+ { 0xffffffff, 0x3ffffff2, 0x00000000, 0xd00d00d0, 0x0d00d00d, 0x00d00e27, 0x00000000 }, /* -1.984126984126984126984126993E-4 */
+ { 0x00000000, 0x3ffffff8, 0x00000000, 0x88888888, 0x88888888, 0x88888888, 0x00000000 }, /* 8.333333333333333333333333333E-3 */
+ { 0xffffffff, 0x3ffffffc, 0x00000000, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0x00000000 } /* -1.666666666666666666666666667E-1 */
+};
+
+#else /* BITS_PER_EMUSHORT != 32 */
+#error ei_sin_001_emu32msb.dfn: ERROR: Failed size of EMUSHORT data type.
+#endif /* BITS_PER_EMUSHORT == 32 */
+
+#endif /* __REAL_EINTERNAL_SIN_001_32MSB */