about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2018-05-11 15:11:38 +0000
committerJoseph Myers <joseph@codesourcery.com>2018-05-11 15:11:38 +0000
commitb4d5b8b02133e0c317e6c836b51bbee3b00877b8 (patch)
tree551bc1826d90c02daa6a3868bceafd831dc34b66
parentfc79706a3233b02909b1a75b1e43e40915eb5a04 (diff)
downloadglibc-b4d5b8b02133e0c317e6c836b51bbee3b00877b8.tar.gz
glibc-b4d5b8b02133e0c317e6c836b51bbee3b00877b8.tar.xz
glibc-b4d5b8b02133e0c317e6c836b51bbee3b00877b8.zip
Do not include math-barriers.h in math_private.h.
This patch continues the math_private.h cleanup by stopping
math_private.h from including math-barriers.h and making the users of
the barrier macros include the latter header directly.  No attempt is
made to remove any math_private.h includes that are now unused, except
in strtod_l.c where that is done to avoid line number changes in
assertions, so that installed stripped shared libraries can be
compared before and after the patch.  (I think the floating-point
environment support in math_private.h should also move out - some
architectures already have fenv_private.h as an architecture-internal
header included from their math_private.h - and after moving that out
might be a better time to identify unused math_private.h includes.)

Tested for x86_64 and x86, and tested with build-many-glibcs.py that
installed stripped shared libraries are unchanged by the patch.

	* sysdeps/generic/math_private.h: Do not include
	<math-barriers.h>.
	* stdlib/strtod_l.c: Include <math-barriers.h> instead of
	<math_private.h>.
	* math/fromfp.h: Include <math-barriers.h>.
	* math/math-narrow.h: Likewise.
	* math/s_nextafter.c: Likewise.
	* math/s_nexttowardf.c: Likewise.
	* sysdeps/aarch64/fpu/s_llrint.c: Likewise.
	* sysdeps/aarch64/fpu/s_llrintf.c: Likewise.
	* sysdeps/aarch64/fpu/s_lrint.c: Likewise.
	* sysdeps/aarch64/fpu/s_lrintf.c: Likewise.
	* sysdeps/i386/fpu/s_nextafterl.c: Likewise.
	* sysdeps/i386/fpu/s_nexttoward.c: Likewise.
	* sysdeps/i386/fpu/s_nexttowardf.c: Likewise.
	* sysdeps/ieee754/dbl-64/e_atan2.c: Likewise.
	* sysdeps/ieee754/dbl-64/e_atanh.c: Likewise.
	* sysdeps/ieee754/dbl-64/e_exp.c: Likewise.
	* sysdeps/ieee754/dbl-64/e_exp2.c: Likewise.
	* sysdeps/ieee754/dbl-64/e_j0.c: Likewise.
	* sysdeps/ieee754/dbl-64/e_sqrt.c: Likewise.
	* sysdeps/ieee754/dbl-64/s_expm1.c: Likewise.
	* sysdeps/ieee754/dbl-64/s_fma.c: Likewise.
	* sysdeps/ieee754/dbl-64/s_fmaf.c: Likewise.
	* sysdeps/ieee754/dbl-64/s_log1p.c: Likewise.
	* sysdeps/ieee754/dbl-64/s_nearbyint.c: Likewise.
	* sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c: Likewise.
	* sysdeps/ieee754/flt-32/e_atanhf.c: Likewise.
	* sysdeps/ieee754/flt-32/e_j0f.c: Likewise.
	* sysdeps/ieee754/flt-32/s_expm1f.c: Likewise.
	* sysdeps/ieee754/flt-32/s_log1pf.c: Likewise.
	* sysdeps/ieee754/flt-32/s_nearbyintf.c: Likewise.
	* sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
	* sysdeps/ieee754/k_standardl.c: Likewise.
	* sysdeps/ieee754/ldbl-128/e_asinl.c: Likewise.
	* sysdeps/ieee754/ldbl-128/e_expl.c: Likewise.
	* sysdeps/ieee754/ldbl-128/e_powl.c: Likewise.
	* sysdeps/ieee754/ldbl-128/s_fmal.c: Likewise.
	* sysdeps/ieee754/ldbl-128/s_nearbyintl.c: Likewise.
	* sysdeps/ieee754/ldbl-128/s_nextafterl.c: Likewise.
	* sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
	* sysdeps/ieee754/ldbl-128/s_nexttowardf.c: Likewise.
	* sysdeps/ieee754/ldbl-128ibm/e_asinl.c: Likewise.
	* sysdeps/ieee754/ldbl-128ibm/s_fmal.c: Likewise.
	* sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c: Likewise.
	* sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c: Likewise.
	* sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c: Likewise.
	* sysdeps/ieee754/ldbl-128ibm/s_rintl.c: Likewise.
	* sysdeps/ieee754/ldbl-96/e_atanhl.c: Likewise.
	* sysdeps/ieee754/ldbl-96/e_j0l.c: Likewise.
	* sysdeps/ieee754/ldbl-96/s_fma.c: Likewise.
	* sysdeps/ieee754/ldbl-96/s_fmal.c: Likewise.
	* sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
	* sysdeps/ieee754/ldbl-96/s_nexttowardf.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c: Likewise.
	* sysdeps/m68k/m680x0/fpu/s_nextafterl.c: Likewise.
-rw-r--r--ChangeLog59
-rw-r--r--math/fromfp.h1
-rw-r--r--math/math-narrow.h1
-rw-r--r--math/s_nextafter.c1
-rw-r--r--math/s_nexttowardf.c1
-rw-r--r--stdlib/strtod_l.c2
-rw-r--r--sysdeps/aarch64/fpu/s_llrint.c1
-rw-r--r--sysdeps/aarch64/fpu/s_llrintf.c1
-rw-r--r--sysdeps/aarch64/fpu/s_lrint.c1
-rw-r--r--sysdeps/aarch64/fpu/s_lrintf.c1
-rw-r--r--sysdeps/generic/math_private.h2
-rw-r--r--sysdeps/i386/fpu/s_nextafterl.c1
-rw-r--r--sysdeps/i386/fpu/s_nexttoward.c1
-rw-r--r--sysdeps/i386/fpu/s_nexttowardf.c1
-rw-r--r--sysdeps/ieee754/dbl-64/e_atan2.c1
-rw-r--r--sysdeps/ieee754/dbl-64/e_atanh.c1
-rw-r--r--sysdeps/ieee754/dbl-64/e_exp.c1
-rw-r--r--sysdeps/ieee754/dbl-64/e_exp2.c1
-rw-r--r--sysdeps/ieee754/dbl-64/e_j0.c1
-rw-r--r--sysdeps/ieee754/dbl-64/e_sqrt.c1
-rw-r--r--sysdeps/ieee754/dbl-64/s_expm1.c1
-rw-r--r--sysdeps/ieee754/dbl-64/s_fma.c1
-rw-r--r--sysdeps/ieee754/dbl-64/s_fmaf.c1
-rw-r--r--sysdeps/ieee754/dbl-64/s_log1p.c1
-rw-r--r--sysdeps/ieee754/dbl-64/s_nearbyint.c1
-rw-r--r--sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c1
-rw-r--r--sysdeps/ieee754/flt-32/e_atanhf.c1
-rw-r--r--sysdeps/ieee754/flt-32/e_j0f.c1
-rw-r--r--sysdeps/ieee754/flt-32/s_expm1f.c1
-rw-r--r--sysdeps/ieee754/flt-32/s_log1pf.c1
-rw-r--r--sysdeps/ieee754/flt-32/s_nearbyintf.c1
-rw-r--r--sysdeps/ieee754/flt-32/s_nextafterf.c1
-rw-r--r--sysdeps/ieee754/k_standardl.c1
-rw-r--r--sysdeps/ieee754/ldbl-128/e_asinl.c1
-rw-r--r--sysdeps/ieee754/ldbl-128/e_expl.c1
-rw-r--r--sysdeps/ieee754/ldbl-128/e_powl.c1
-rw-r--r--sysdeps/ieee754/ldbl-128/s_fmal.c1
-rw-r--r--sysdeps/ieee754/ldbl-128/s_nearbyintl.c1
-rw-r--r--sysdeps/ieee754/ldbl-128/s_nextafterl.c1
-rw-r--r--sysdeps/ieee754/ldbl-128/s_nexttoward.c1
-rw-r--r--sysdeps/ieee754/ldbl-128/s_nexttowardf.c1
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_asinl.c1
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_fmal.c1
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c1
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c1
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c1
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_rintl.c1
-rw-r--r--sysdeps/ieee754/ldbl-96/e_atanhl.c1
-rw-r--r--sysdeps/ieee754/ldbl-96/e_j0l.c1
-rw-r--r--sysdeps/ieee754/ldbl-96/s_fma.c1
-rw-r--r--sysdeps/ieee754/ldbl-96/s_fmal.c1
-rw-r--r--sysdeps/ieee754/ldbl-96/s_nexttoward.c1
-rw-r--r--sysdeps/ieee754/ldbl-96/s_nexttowardf.c1
-rw-r--r--sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c1
-rw-r--r--sysdeps/m68k/m680x0/fpu/s_nextafterl.c1
55 files changed, 112 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 5d8c8ad961..f4cf9a1a79 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,62 @@
+2018-05-11  Joseph Myers  <joseph@codesourcery.com>
+
+	* sysdeps/generic/math_private.h: Do not include
+	<math-barriers.h>.
+	* stdlib/strtod_l.c: Include <math-barriers.h> instead of
+	<math_private.h>.
+	* math/fromfp.h: Include <math-barriers.h>.
+	* math/math-narrow.h: Likewise.
+	* math/s_nextafter.c: Likewise.
+	* math/s_nexttowardf.c: Likewise.
+	* sysdeps/aarch64/fpu/s_llrint.c: Likewise.
+	* sysdeps/aarch64/fpu/s_llrintf.c: Likewise.
+	* sysdeps/aarch64/fpu/s_lrint.c: Likewise.
+	* sysdeps/aarch64/fpu/s_lrintf.c: Likewise.
+	* sysdeps/i386/fpu/s_nextafterl.c: Likewise.
+	* sysdeps/i386/fpu/s_nexttoward.c: Likewise.
+	* sysdeps/i386/fpu/s_nexttowardf.c: Likewise.
+	* sysdeps/ieee754/dbl-64/e_atan2.c: Likewise.
+	* sysdeps/ieee754/dbl-64/e_atanh.c: Likewise.
+	* sysdeps/ieee754/dbl-64/e_exp.c: Likewise.
+	* sysdeps/ieee754/dbl-64/e_exp2.c: Likewise.
+	* sysdeps/ieee754/dbl-64/e_j0.c: Likewise.
+	* sysdeps/ieee754/dbl-64/e_sqrt.c: Likewise.
+	* sysdeps/ieee754/dbl-64/s_expm1.c: Likewise.
+	* sysdeps/ieee754/dbl-64/s_fma.c: Likewise.
+	* sysdeps/ieee754/dbl-64/s_fmaf.c: Likewise.
+	* sysdeps/ieee754/dbl-64/s_log1p.c: Likewise.
+	* sysdeps/ieee754/dbl-64/s_nearbyint.c: Likewise.
+	* sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c: Likewise.
+	* sysdeps/ieee754/flt-32/e_atanhf.c: Likewise.
+	* sysdeps/ieee754/flt-32/e_j0f.c: Likewise.
+	* sysdeps/ieee754/flt-32/s_expm1f.c: Likewise.
+	* sysdeps/ieee754/flt-32/s_log1pf.c: Likewise.
+	* sysdeps/ieee754/flt-32/s_nearbyintf.c: Likewise.
+	* sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
+	* sysdeps/ieee754/k_standardl.c: Likewise.
+	* sysdeps/ieee754/ldbl-128/e_asinl.c: Likewise.
+	* sysdeps/ieee754/ldbl-128/e_expl.c: Likewise.
+	* sysdeps/ieee754/ldbl-128/e_powl.c: Likewise.
+	* sysdeps/ieee754/ldbl-128/s_fmal.c: Likewise.
+	* sysdeps/ieee754/ldbl-128/s_nearbyintl.c: Likewise.
+	* sysdeps/ieee754/ldbl-128/s_nextafterl.c: Likewise.
+	* sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
+	* sysdeps/ieee754/ldbl-128/s_nexttowardf.c: Likewise.
+	* sysdeps/ieee754/ldbl-128ibm/e_asinl.c: Likewise.
+	* sysdeps/ieee754/ldbl-128ibm/s_fmal.c: Likewise.
+	* sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c: Likewise.
+	* sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c: Likewise.
+	* sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c: Likewise.
+	* sysdeps/ieee754/ldbl-128ibm/s_rintl.c: Likewise.
+	* sysdeps/ieee754/ldbl-96/e_atanhl.c: Likewise.
+	* sysdeps/ieee754/ldbl-96/e_j0l.c: Likewise.
+	* sysdeps/ieee754/ldbl-96/s_fma.c: Likewise.
+	* sysdeps/ieee754/ldbl-96/s_fmal.c: Likewise.
+	* sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
+	* sysdeps/ieee754/ldbl-96/s_nexttowardf.c: Likewise.
+	* sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c: Likewise.
+	* sysdeps/m68k/m680x0/fpu/s_nextafterl.c: Likewise.
+
 2018-05-11  Florian Weimer  <fweimer@redhat.com>
 
 	Use 64-bit epoch values in the time zone file parser.
diff --git a/math/fromfp.h b/math/fromfp.h
index 5944770598..9d102a635f 100644
--- a/math/fromfp.h
+++ b/math/fromfp.h
@@ -20,6 +20,7 @@
 #include <fenv.h>
 #include <float.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <stdbool.h>
 #include <stdint.h>
diff --git a/math/math-narrow.h b/math/math-narrow.h
index a062b8db05..b6982f2396 100644
--- a/math/math-narrow.h
+++ b/math/math-narrow.h
@@ -24,6 +24,7 @@
 #include <errno.h>
 #include <fenv.h>
 #include <ieee754.h>
+#include <math-barriers.h>
 #include <math_private.h>
 
 /* Carry out a computation using round-to-odd.  The computation is
diff --git a/math/s_nextafter.c b/math/s_nextafter.c
index fbf440e519..792c9d1d78 100644
--- a/math/s_nextafter.c
+++ b/math/s_nextafter.c
@@ -27,6 +27,7 @@ static char rcsid[] = "$NetBSD: s_nextafter.c,v 1.8 1995/05/10 20:47:58 jtc Exp
 
 #include <errno.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <float.h>
 #include <libm-alias-double.h>
diff --git a/math/s_nexttowardf.c b/math/s_nexttowardf.c
index 85d02e863a..cdc06109ca 100644
--- a/math/s_nexttowardf.c
+++ b/math/s_nexttowardf.c
@@ -22,6 +22,7 @@
 
 #include <errno.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <float.h>
 
diff --git a/stdlib/strtod_l.c b/stdlib/strtod_l.c
index 09a40ad173..e1e9c13765 100644
--- a/stdlib/strtod_l.c
+++ b/stdlib/strtod_l.c
@@ -66,8 +66,8 @@ extern double ____strtod_l_internal (const char *, char **, int, locale_t);
 #include <float.h>
 #include "../locale/localeinfo.h"
 #include <math.h>
+#include <math-barriers.h>
 #include <math-narrow-eval.h>
-#include <math_private.h>
 #include <stdlib.h>
 #include <string.h>
 #include <stdint.h>
diff --git a/sysdeps/aarch64/fpu/s_llrint.c b/sysdeps/aarch64/fpu/s_llrint.c
index da78b95743..287dc8974c 100644
--- a/sysdeps/aarch64/fpu/s_llrint.c
+++ b/sysdeps/aarch64/fpu/s_llrint.c
@@ -17,6 +17,7 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-double.h>
 
diff --git a/sysdeps/aarch64/fpu/s_llrintf.c b/sysdeps/aarch64/fpu/s_llrintf.c
index 7b4484052d..70d6c0ca84 100644
--- a/sysdeps/aarch64/fpu/s_llrintf.c
+++ b/sysdeps/aarch64/fpu/s_llrintf.c
@@ -17,6 +17,7 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-float.h>
 
diff --git a/sysdeps/aarch64/fpu/s_lrint.c b/sysdeps/aarch64/fpu/s_lrint.c
index 92791b5ffd..d6ef066e45 100644
--- a/sysdeps/aarch64/fpu/s_lrint.c
+++ b/sysdeps/aarch64/fpu/s_lrint.c
@@ -19,6 +19,7 @@
 #include <math.h>
 #include <get-rounding-mode.h>
 #include <stdint.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-double.h>
 
diff --git a/sysdeps/aarch64/fpu/s_lrintf.c b/sysdeps/aarch64/fpu/s_lrintf.c
index 27e0fe2df8..fa42d68dd1 100644
--- a/sysdeps/aarch64/fpu/s_lrintf.c
+++ b/sysdeps/aarch64/fpu/s_lrintf.c
@@ -17,6 +17,7 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-float.h>
 
diff --git a/sysdeps/generic/math_private.h b/sysdeps/generic/math_private.h
index 9cd0941431..b6612ba6bf 100644
--- a/sysdeps/generic/math_private.h
+++ b/sysdeps/generic/math_private.h
@@ -262,8 +262,6 @@ extern double __mpsin (double __x, double __dx, bool __range_reduce);
 extern double __mpcos (double __x, double __dx, bool __range_reduce);
 extern void __docos (double __x, double __dx, double __v[]);
 
-#include <math-barriers.h>
-
 /* The standards only specify one variant of the fenv.h interfaces.
    But at least for some architectures we can be more efficient if we
    know what operations are going to be performed.  Therefore we
diff --git a/sysdeps/i386/fpu/s_nextafterl.c b/sysdeps/i386/fpu/s_nextafterl.c
index 0ad2ea0366..d6e3025bb2 100644
--- a/sysdeps/i386/fpu/s_nextafterl.c
+++ b/sysdeps/i386/fpu/s_nextafterl.c
@@ -28,6 +28,7 @@ static char rcsid[] = "$NetBSD: $";
 
 #include <errno.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-ldouble.h>
 
diff --git a/sysdeps/i386/fpu/s_nexttoward.c b/sysdeps/i386/fpu/s_nexttoward.c
index 521a4985be..3594db5a4c 100644
--- a/sysdeps/i386/fpu/s_nexttoward.c
+++ b/sysdeps/i386/fpu/s_nexttoward.c
@@ -28,6 +28,7 @@ static char rcsid[] = "$NetBSD: $";
 
 #include <errno.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <float.h>
 
diff --git a/sysdeps/i386/fpu/s_nexttowardf.c b/sysdeps/i386/fpu/s_nexttowardf.c
index f08d63769d..6e11ace223 100644
--- a/sysdeps/i386/fpu/s_nexttowardf.c
+++ b/sysdeps/i386/fpu/s_nexttowardf.c
@@ -20,6 +20,7 @@ static char rcsid[] = "$NetBSD: $";
 
 #include <errno.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <float.h>
 
diff --git a/sysdeps/ieee754/dbl-64/e_atan2.c b/sysdeps/ieee754/dbl-64/e_atan2.c
index b30e2be2a8..7295067507 100644
--- a/sysdeps/ieee754/dbl-64/e_atan2.c
+++ b/sysdeps/ieee754/dbl-64/e_atan2.c
@@ -44,6 +44,7 @@
 #include <fenv.h>
 #include <float.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <stap-probe.h>
 
diff --git a/sysdeps/ieee754/dbl-64/e_atanh.c b/sysdeps/ieee754/dbl-64/e_atanh.c
index df9c8786b2..da4da8270c 100644
--- a/sysdeps/ieee754/dbl-64/e_atanh.c
+++ b/sysdeps/ieee754/dbl-64/e_atanh.c
@@ -38,6 +38,7 @@
 #include <float.h>
 #include <inttypes.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math-underflow.h>
 
diff --git a/sysdeps/ieee754/dbl-64/e_exp.c b/sysdeps/ieee754/dbl-64/e_exp.c
index b5589aabca..ddd2bcb1c2 100644
--- a/sysdeps/ieee754/dbl-64/e_exp.c
+++ b/sysdeps/ieee754/dbl-64/e_exp.c
@@ -37,6 +37,7 @@
 #include "mydefs.h"
 #include "MathLib.h"
 #include "uexp.tbl"
+#include <math-barriers.h>
 #include <math_private.h>
 #include <fenv.h>
 #include <float.h>
diff --git a/sysdeps/ieee754/dbl-64/e_exp2.c b/sysdeps/ieee754/dbl-64/e_exp2.c
index 045cbbb88d..c45bb44744 100644
--- a/sysdeps/ieee754/dbl-64/e_exp2.c
+++ b/sysdeps/ieee754/dbl-64/e_exp2.c
@@ -29,6 +29,7 @@
 #include <math.h>
 #include <fenv.h>
 #include <inttypes.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math-underflow.h>
 
diff --git a/sysdeps/ieee754/dbl-64/e_j0.c b/sysdeps/ieee754/dbl-64/e_j0.c
index 3794fd48fc..7f5919910d 100644
--- a/sysdeps/ieee754/dbl-64/e_j0.c
+++ b/sysdeps/ieee754/dbl-64/e_j0.c
@@ -59,6 +59,7 @@
  */
 
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 
 static double pzero (double), qzero (double);
diff --git a/sysdeps/ieee754/dbl-64/e_sqrt.c b/sysdeps/ieee754/dbl-64/e_sqrt.c
index f29ffac261..f70623e17b 100644
--- a/sysdeps/ieee754/dbl-64/e_sqrt.c
+++ b/sysdeps/ieee754/dbl-64/e_sqrt.c
@@ -37,6 +37,7 @@
 #include <dla.h>
 #include "MathLib.h"
 #include "root.tbl"
+#include <math-barriers.h>
 #include <math_private.h>
 
 /*********************************************************************/
diff --git a/sysdeps/ieee754/dbl-64/s_expm1.c b/sysdeps/ieee754/dbl-64/s_expm1.c
index 8ef74f2196..8f1c95bd04 100644
--- a/sysdeps/ieee754/dbl-64/s_expm1.c
+++ b/sysdeps/ieee754/dbl-64/s_expm1.c
@@ -111,6 +111,7 @@
 #include <errno.h>
 #include <float.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math-underflow.h>
 #include <libm-alias-double.h>
diff --git a/sysdeps/ieee754/dbl-64/s_fma.c b/sysdeps/ieee754/dbl-64/s_fma.c
index 2938e623d8..57c7b5dfc2 100644
--- a/sysdeps/ieee754/dbl-64/s_fma.c
+++ b/sysdeps/ieee754/dbl-64/s_fma.c
@@ -21,6 +21,7 @@
 #include <math.h>
 #include <fenv.h>
 #include <ieee754.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-double.h>
 #include <tininess.h>
diff --git a/sysdeps/ieee754/dbl-64/s_fmaf.c b/sysdeps/ieee754/dbl-64/s_fmaf.c
index b5a56037ff..5c8b22ac16 100644
--- a/sysdeps/ieee754/dbl-64/s_fmaf.c
+++ b/sysdeps/ieee754/dbl-64/s_fmaf.c
@@ -20,6 +20,7 @@
 #include <math.h>
 #include <fenv.h>
 #include <ieee754.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-float.h>
 
diff --git a/sysdeps/ieee754/dbl-64/s_log1p.c b/sysdeps/ieee754/dbl-64/s_log1p.c
index c01f1be93b..e6476a8260 100644
--- a/sysdeps/ieee754/dbl-64/s_log1p.c
+++ b/sysdeps/ieee754/dbl-64/s_log1p.c
@@ -80,6 +80,7 @@
 
 #include <float.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math-underflow.h>
 #include <libc-diag.h>
diff --git a/sysdeps/ieee754/dbl-64/s_nearbyint.c b/sysdeps/ieee754/dbl-64/s_nearbyint.c
index 94d193d1ff..903121d456 100644
--- a/sysdeps/ieee754/dbl-64/s_nearbyint.c
+++ b/sysdeps/ieee754/dbl-64/s_nearbyint.c
@@ -26,6 +26,7 @@ static char rcsid[] = "$NetBSD: s_rint.c,v 1.8 1995/05/10 20:48:04 jtc Exp $";
 
 #include <fenv.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-double.h>
 
diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c
index 5d1f98e471..a4a081724e 100644
--- a/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c
+++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c
@@ -22,6 +22,7 @@
 
 #include <fenv.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-double.h>
 
diff --git a/sysdeps/ieee754/flt-32/e_atanhf.c b/sysdeps/ieee754/flt-32/e_atanhf.c
index 43f11ad1f0..207d759362 100644
--- a/sysdeps/ieee754/flt-32/e_atanhf.c
+++ b/sysdeps/ieee754/flt-32/e_atanhf.c
@@ -38,6 +38,7 @@
 #include <float.h>
 #include <inttypes.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math-underflow.h>
 
diff --git a/sysdeps/ieee754/flt-32/e_j0f.c b/sysdeps/ieee754/flt-32/e_j0f.c
index 105965d06c..0efc646a12 100644
--- a/sysdeps/ieee754/flt-32/e_j0f.c
+++ b/sysdeps/ieee754/flt-32/e_j0f.c
@@ -14,6 +14,7 @@
  */
 
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 
 static float pzerof(float), qzerof(float);
diff --git a/sysdeps/ieee754/flt-32/s_expm1f.c b/sysdeps/ieee754/flt-32/s_expm1f.c
index 3b04ce7751..b72cc0d083 100644
--- a/sysdeps/ieee754/flt-32/s_expm1f.c
+++ b/sysdeps/ieee754/flt-32/s_expm1f.c
@@ -16,6 +16,7 @@
 #include <errno.h>
 #include <float.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math-underflow.h>
 #include <libm-alias-float.h>
diff --git a/sysdeps/ieee754/flt-32/s_log1pf.c b/sysdeps/ieee754/flt-32/s_log1pf.c
index 9d2ef89975..a06190a589 100644
--- a/sysdeps/ieee754/flt-32/s_log1pf.c
+++ b/sysdeps/ieee754/flt-32/s_log1pf.c
@@ -15,6 +15,7 @@
 
 #include <float.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math-underflow.h>
 #include <libc-diag.h>
diff --git a/sysdeps/ieee754/flt-32/s_nearbyintf.c b/sysdeps/ieee754/flt-32/s_nearbyintf.c
index a8af8948ec..4dfe491f27 100644
--- a/sysdeps/ieee754/flt-32/s_nearbyintf.c
+++ b/sysdeps/ieee754/flt-32/s_nearbyintf.c
@@ -17,6 +17,7 @@
 
 #include <fenv.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-float.h>
 
diff --git a/sysdeps/ieee754/flt-32/s_nextafterf.c b/sysdeps/ieee754/flt-32/s_nextafterf.c
index a7a5703245..aa49df5a9e 100644
--- a/sysdeps/ieee754/flt-32/s_nextafterf.c
+++ b/sysdeps/ieee754/flt-32/s_nextafterf.c
@@ -19,6 +19,7 @@ static char rcsid[] = "$NetBSD: s_nextafterf.c,v 1.4 1995/05/10 20:48:01 jtc Exp
 
 #include <errno.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-float.h>
 #include <float.h>
diff --git a/sysdeps/ieee754/k_standardl.c b/sysdeps/ieee754/k_standardl.c
index 0f3b760431..58abc22b6e 100644
--- a/sysdeps/ieee754/k_standardl.c
+++ b/sysdeps/ieee754/k_standardl.c
@@ -31,6 +31,7 @@
  */
 
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math-svid-compat.h>
 #include <fenv.h>
diff --git a/sysdeps/ieee754/ldbl-128/e_asinl.c b/sysdeps/ieee754/ldbl-128/e_asinl.c
index 6021facdfb..4835962db4 100644
--- a/sysdeps/ieee754/ldbl-128/e_asinl.c
+++ b/sysdeps/ieee754/ldbl-128/e_asinl.c
@@ -61,6 +61,7 @@
 
 #include <float.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math-underflow.h>
 
diff --git a/sysdeps/ieee754/ldbl-128/e_expl.c b/sysdeps/ieee754/ldbl-128/e_expl.c
index 735dc9b8d0..b4b21c4957 100644
--- a/sysdeps/ieee754/ldbl-128/e_expl.c
+++ b/sysdeps/ieee754/ldbl-128/e_expl.c
@@ -64,6 +64,7 @@
 #include <math.h>
 #include <fenv.h>
 #include <inttypes.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math-underflow.h>
 #include <stdlib.h>
diff --git a/sysdeps/ieee754/ldbl-128/e_powl.c b/sysdeps/ieee754/ldbl-128/e_powl.c
index 4418ad7c38..dc748c3a0b 100644
--- a/sysdeps/ieee754/ldbl-128/e_powl.c
+++ b/sysdeps/ieee754/ldbl-128/e_powl.c
@@ -65,6 +65,7 @@
  */
 
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 
 static const _Float128 bp[] = {
diff --git a/sysdeps/ieee754/ldbl-128/s_fmal.c b/sysdeps/ieee754/ldbl-128/s_fmal.c
index 829900f9eb..4eba9253df 100644
--- a/sysdeps/ieee754/ldbl-128/s_fmal.c
+++ b/sysdeps/ieee754/ldbl-128/s_fmal.c
@@ -21,6 +21,7 @@
 #include <math.h>
 #include <fenv.h>
 #include <ieee754.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-ldouble.h>
 #include <tininess.h>
diff --git a/sysdeps/ieee754/ldbl-128/s_nearbyintl.c b/sysdeps/ieee754/ldbl-128/s_nearbyintl.c
index 04b657d451..f044cb4334 100644
--- a/sysdeps/ieee754/ldbl-128/s_nearbyintl.c
+++ b/sysdeps/ieee754/ldbl-128/s_nearbyintl.c
@@ -25,6 +25,7 @@
 
 #include <fenv.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-ldouble.h>
 
diff --git a/sysdeps/ieee754/ldbl-128/s_nextafterl.c b/sysdeps/ieee754/ldbl-128/s_nextafterl.c
index d8bf2b6144..60fdae648f 100644
--- a/sysdeps/ieee754/ldbl-128/s_nextafterl.c
+++ b/sysdeps/ieee754/ldbl-128/s_nextafterl.c
@@ -26,6 +26,7 @@ static char rcsid[] = "$NetBSD: $";
 
 #include <errno.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-ldouble.h>
 
diff --git a/sysdeps/ieee754/ldbl-128/s_nexttoward.c b/sysdeps/ieee754/ldbl-128/s_nexttoward.c
index 04d094e44b..6db8b7f15f 100644
--- a/sysdeps/ieee754/ldbl-128/s_nexttoward.c
+++ b/sysdeps/ieee754/ldbl-128/s_nexttoward.c
@@ -27,6 +27,7 @@ static char rcsid[] = "$NetBSD: $";
 
 #include <errno.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <float.h>
 
diff --git a/sysdeps/ieee754/ldbl-128/s_nexttowardf.c b/sysdeps/ieee754/ldbl-128/s_nexttowardf.c
index 6d5121d85d..7840cb382e 100644
--- a/sysdeps/ieee754/ldbl-128/s_nexttowardf.c
+++ b/sysdeps/ieee754/ldbl-128/s_nexttowardf.c
@@ -20,6 +20,7 @@ static char rcsid[] = "$NetBSD: $";
 
 #include <errno.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 
 float __nexttowardf(float x, long double y)
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_asinl.c b/sysdeps/ieee754/ldbl-128ibm/e_asinl.c
index 0d6e313aa8..e8b0221a92 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_asinl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_asinl.c
@@ -61,6 +61,7 @@
 
 #include <float.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math-underflow.h>
 
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_fmal.c b/sysdeps/ieee754/ldbl-128ibm/s_fmal.c
index 08aeb4c0d4..e72a3e4d59 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_fmal.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_fmal.c
@@ -20,6 +20,7 @@
 #include <fenv.h>
 #include <float.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math-underflow.h>
 #include <math_ldbl_opt.h>
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c b/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c
index 0d6469d548..e29f7d60a3 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c
@@ -27,6 +27,7 @@ static char rcsid[] = "$NetBSD: $";
 #include <errno.h>
 #include <float.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math_ldbl_opt.h>
 
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c b/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c
index d8f4fc6523..8456bd5145 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c
@@ -27,6 +27,7 @@ static char rcsid[] = "$NetBSD: $";
 
 #include <errno.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math_ldbl_opt.h>
 #include <float.h>
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c b/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c
index fc49247038..960ffd9aee 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c
@@ -20,6 +20,7 @@ static char rcsid[] = "$NetBSD: $";
 
 #include <errno.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math_ldbl_opt.h>
 #include <float.h>
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_rintl.c b/sysdeps/ieee754/ldbl-128ibm/s_rintl.c
index 73d2b4edfe..f003609d95 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_rintl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_rintl.c
@@ -22,6 +22,7 @@
 
 #include <math.h>
 #include <fenv.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math_ldbl_opt.h>
 #include <float.h>
diff --git a/sysdeps/ieee754/ldbl-96/e_atanhl.c b/sysdeps/ieee754/ldbl-96/e_atanhl.c
index c1f43ff3d7..7312f84329 100644
--- a/sysdeps/ieee754/ldbl-96/e_atanhl.c
+++ b/sysdeps/ieee754/ldbl-96/e_atanhl.c
@@ -34,6 +34,7 @@
 
 #include <float.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math-underflow.h>
 
diff --git a/sysdeps/ieee754/ldbl-96/e_j0l.c b/sysdeps/ieee754/ldbl-96/e_j0l.c
index 799812ae86..e720ae9558 100644
--- a/sysdeps/ieee754/ldbl-96/e_j0l.c
+++ b/sysdeps/ieee754/ldbl-96/e_j0l.c
@@ -72,6 +72,7 @@
  */
 
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 
 static long double pzero (long double), qzero (long double);
diff --git a/sysdeps/ieee754/ldbl-96/s_fma.c b/sysdeps/ieee754/ldbl-96/s_fma.c
index 3299a0081d..f7f4dfd28d 100644
--- a/sysdeps/ieee754/ldbl-96/s_fma.c
+++ b/sysdeps/ieee754/ldbl-96/s_fma.c
@@ -21,6 +21,7 @@
 #include <math.h>
 #include <fenv.h>
 #include <ieee754.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-double.h>
 
diff --git a/sysdeps/ieee754/ldbl-96/s_fmal.c b/sysdeps/ieee754/ldbl-96/s_fmal.c
index 836ca25895..0b261fd17a 100644
--- a/sysdeps/ieee754/ldbl-96/s_fmal.c
+++ b/sysdeps/ieee754/ldbl-96/s_fmal.c
@@ -21,6 +21,7 @@
 #include <math.h>
 #include <fenv.h>
 #include <ieee754.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <libm-alias-ldouble.h>
 #include <tininess.h>
diff --git a/sysdeps/ieee754/ldbl-96/s_nexttoward.c b/sysdeps/ieee754/ldbl-96/s_nexttoward.c
index ed28672afa..1d8d9c7f91 100644
--- a/sysdeps/ieee754/ldbl-96/s_nexttoward.c
+++ b/sysdeps/ieee754/ldbl-96/s_nexttoward.c
@@ -27,6 +27,7 @@ static char rcsid[] = "$NetBSD: $";
 
 #include <errno.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <float.h>
 
diff --git a/sysdeps/ieee754/ldbl-96/s_nexttowardf.c b/sysdeps/ieee754/ldbl-96/s_nexttowardf.c
index 79fd65623d..9a08e1c8ff 100644
--- a/sysdeps/ieee754/ldbl-96/s_nexttowardf.c
+++ b/sysdeps/ieee754/ldbl-96/s_nexttowardf.c
@@ -19,6 +19,7 @@ static char rcsid[] = "$NetBSD: $";
 
 #include <errno.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <float.h>
 
diff --git a/sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c b/sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c
index 7197962b68..d1cdd54c44 100644
--- a/sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c
+++ b/sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c
@@ -22,6 +22,7 @@
 
 #include <errno.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 #include <math_ldbl_opt.h>
 #include <float.h>
diff --git a/sysdeps/m68k/m680x0/fpu/s_nextafterl.c b/sysdeps/m68k/m680x0/fpu/s_nextafterl.c
index 2fb7dc2173..76e900055f 100644
--- a/sysdeps/m68k/m680x0/fpu/s_nextafterl.c
+++ b/sysdeps/m68k/m680x0/fpu/s_nextafterl.c
@@ -28,6 +28,7 @@ static char rcsid[] = "$NetBSD: $";
 
 #include <errno.h>
 #include <math.h>
+#include <math-barriers.h>
 #include <math_private.h>
 
 long double __nextafterl(long double x, long double y)