diff mbox series

[v2,5/6] math: Fix i386 and m68k exp10 on static build

Message ID 20240321164325.539976-6-adhemerval.zanella@linaro.org
State Superseded
Headers show
Series Math static build fixes | expand

Commit Message

Adhemerval Zanella March 21, 2024, 4:43 p.m. UTC
The commit 08ddd26814 removed the static exp10 on i386 and
m68k with and empty w_exp10.c (required for the ABIs that uses
the newly implementation).  This patch fixes by adding the
required symbols on the arch-specific w_exp{f}_compat.c
implementation.

Checked on i686-linux-gnu and with a build for m68k-linux-gnu.
---
 math/Makefile                            | 4 +++-
 sysdeps/i386/fpu/w_exp10_compat.c        | 9 +++++++--
 sysdeps/m68k/m680x0/fpu/w_exp10_compat.c | 9 +++++++--
 3 files changed, 17 insertions(+), 5 deletions(-)
diff mbox series

Patch

diff --git a/math/Makefile b/math/Makefile
index fbb2987248..ad7fd25995 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -367,7 +367,9 @@  $(libm-test-c-narrow-obj): $(objpfx)libm-test%.c: libm-test%.inc \
 	$(PYTHON) gen-libm-test.py -c $< -a auto-libm-test-out$* -C $@
 
 
-libm-test-funcs-auto-static =
+libm-test-funcs-auto-static = \
+  exp10 \
+  # libm-test-funcs-auto-static
 libm-test-funcs-noauto-static = \
   fmod \
   # libm-test-funcs-noauto-static
diff --git a/sysdeps/i386/fpu/w_exp10_compat.c b/sysdeps/i386/fpu/w_exp10_compat.c
index b53455386e..49a0e03385 100644
--- a/sysdeps/i386/fpu/w_exp10_compat.c
+++ b/sysdeps/i386/fpu/w_exp10_compat.c
@@ -1,3 +1,8 @@ 
 /* i386 provides an optimized __ieee754_exp10.  */
-#define NO_COMPAT_NEEDED 1
-#include <math/w_exp10_compat.c>
+#ifdef SHARED
+# define NO_COMPAT_NEEDED 1
+# include <math/w_exp10_compat.c>
+#else
+# include <math-type-macros-double.h>
+# include <w_exp10_template.c>
+#endif
diff --git a/sysdeps/m68k/m680x0/fpu/w_exp10_compat.c b/sysdeps/m68k/m680x0/fpu/w_exp10_compat.c
index 0d3e718626..350f2e4b4d 100644
--- a/sysdeps/m68k/m680x0/fpu/w_exp10_compat.c
+++ b/sysdeps/m68k/m680x0/fpu/w_exp10_compat.c
@@ -1,3 +1,8 @@ 
 /* m68k provides an optimized __ieee754_exp10.  */
-#define NO_COMPAT_NEEDED 1
-#include <math/w_exp10_compat.c>
+#ifdef SHARED
+# define NO_COMPAT_NEEDED 1
+# include <math/w_exp10_compat.c>
+#else
+# include <math-type-macros-double.h>
+# include <w_exp10_template.c>
+#endif