about summary refs log tree commit diff
path: root/soft-fp
diff options
context:
space:
mode:
authorZack Weinberg <zackw@panix.com>2017-02-26 20:17:52 -0500
committerZack Weinberg <zackw@panix.com>2017-03-01 20:33:46 -0500
commit9090848d0607e93fb08a1d68d9f263846ee33f02 (patch)
treed6cd846fff1640a49ef071cfd0bfabb8efa5352c /soft-fp
parent5e4e10636cf999c251b623c3be143a22156721d6 (diff)
downloadglibc-9090848d0607e93fb08a1d68d9f263846ee33f02.tar.gz
glibc-9090848d0607e93fb08a1d68d9f263846ee33f02.tar.xz
glibc-9090848d0607e93fb08a1d68d9f263846ee33f02.zip
Narrowing the visibility of libc-internal.h even further.
posix/wordexp-test.c used libc-internal.h for PTR_ALIGN_DOWN; similar
to what was done with libc-diag.h, I have split the definitions of
cast_to_integer, ALIGN_UP, ALIGN_DOWN, PTR_ALIGN_UP, and PTR_ALIGN_DOWN
to a new header, libc-pointer-arith.h.

It then occurred to me that the remaining declarations in libc-internal.h
are mostly to do with early initialization, and probably most of the
files including it, even in the core code, don't need it anymore.  Indeed,
only 19 files actually need what remains of libc-internal.h.  23 others
need libc-diag.h instead, and 12 need libc-pointer-arith.h instead.
No file needs more than one of them, and 16 don't need any of them!

So, with this patch, libc-internal.h stops including libc-diag.h as
well as losing the pointer arithmetic macros, and all including files
are adjusted.

        * include/libc-pointer-arith.h: New file.  Define
	cast_to_integer, ALIGN_UP, ALIGN_DOWN, PTR_ALIGN_UP, and
        PTR_ALIGN_DOWN here.
        * include/libc-internal.h: Definitions of above macros
	moved from here.  Don't include libc-diag.h anymore either.
	* posix/wordexp-test.c: Include stdint.h and libc-pointer-arith.h.
        Don't include libc-internal.h.

	* debug/pcprofile.c, elf/dl-tunables.c, elf/soinit.c, io/openat.c
	* io/openat64.c, misc/ptrace.c, nptl/pthread_clock_gettime.c
	* nptl/pthread_clock_settime.c, nptl/pthread_cond_common.c
	* string/strcoll_l.c, sysdeps/nacl/brk.c
	* sysdeps/unix/clock_settime.c
	* sysdeps/unix/sysv/linux/i386/get_clockfreq.c
	* sysdeps/unix/sysv/linux/ia64/get_clockfreq.c
	* sysdeps/unix/sysv/linux/powerpc/get_clockfreq.c
	* sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c:
	Don't include libc-internal.h.

	* elf/get-dynamic-info.h, iconv/loop.c
	* iconvdata/iso-2022-cn-ext.c, locale/weight.h, locale/weightwc.h
	* misc/reboot.c, nis/nis_table.c, nptl_db/thread_dbP.h
	* nscd/connections.c, resolv/res_send.c, soft-fp/fmadf4.c
	* soft-fp/fmasf4.c, soft-fp/fmatf4.c, stdio-common/vfscanf.c
	* sysdeps/ieee754/dbl-64/e_lgamma_r.c
	* sysdeps/ieee754/dbl-64/k_rem_pio2.c
	* sysdeps/ieee754/flt-32/e_lgammaf_r.c
	* sysdeps/ieee754/flt-32/k_rem_pio2f.c
	* sysdeps/ieee754/ldbl-128/k_tanl.c
	* sysdeps/ieee754/ldbl-128ibm/k_tanl.c
	* sysdeps/ieee754/ldbl-96/e_lgammal_r.c
	* sysdeps/ieee754/ldbl-96/k_tanl.c, sysdeps/nptl/futex-internal.h:
	Include libc-diag.h instead of libc-internal.h.

        * elf/dl-load.c, elf/dl-reloc.c, locale/programs/locarchive.c
        * nptl/nptl-init.c, string/strcspn.c, string/strspn.c
	* malloc/malloc.c, sysdeps/i386/nptl/tls.h
	* sysdeps/nacl/dl-map-segments.h, sysdeps/x86_64/atomic-machine.h
	* sysdeps/unix/sysv/linux/spawni.c
        * sysdeps/x86_64/nptl/tls.h:
        Include libc-pointer-arith.h instead of libc-internal.h.

	* elf/get-dynamic-info.h, sysdeps/nacl/dl-map-segments.h
	* sysdeps/x86_64/atomic-machine.h:
        Add multiple include guard.
Diffstat (limited to 'soft-fp')
-rw-r--r--soft-fp/fmadf4.c7
-rw-r--r--soft-fp/fmasf4.c7
-rw-r--r--soft-fp/fmatf4.c7
3 files changed, 12 insertions, 9 deletions
diff --git a/soft-fp/fmadf4.c b/soft-fp/fmadf4.c
index 7b7342b2e2..74e2360eb7 100644
--- a/soft-fp/fmadf4.c
+++ b/soft-fp/fmadf4.c
@@ -25,8 +25,9 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
-#include <libc-internal.h>
-#include <sys/cdefs.h>
+#include <math.h>
+#include <libc-diag.h>
+
 /* R_e is not set in cases where it is not used in packing, but the
    compiler does not see that it is set in all cases where it is
    used, resulting in warnings that it may be used uninitialized.
@@ -35,7 +36,7 @@
    macro is defined.  */
 DIAG_PUSH_NEEDS_COMMENT;
 DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wmaybe-uninitialized");
-#include <math.h>
+
 #include "soft-fp.h"
 #include "double.h"
 
diff --git a/soft-fp/fmasf4.c b/soft-fp/fmasf4.c
index 20c0ca8f5a..2d3120eda9 100644
--- a/soft-fp/fmasf4.c
+++ b/soft-fp/fmasf4.c
@@ -25,8 +25,9 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
-#include <libc-internal.h>
-#include <sys/cdefs.h>
+#include <math.h>
+#include <libc-diag.h>
+
 /* R_e is not set in cases where it is not used in packing, but the
    compiler does not see that it is set in all cases where it is
    used, resulting in warnings that it may be used uninitialized.
@@ -35,7 +36,7 @@
    macro is defined.  */
 DIAG_PUSH_NEEDS_COMMENT;
 DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wmaybe-uninitialized");
-#include <math.h>
+
 #include "soft-fp.h"
 #include "single.h"
 
diff --git a/soft-fp/fmatf4.c b/soft-fp/fmatf4.c
index d3a4ee4dc0..553a7ad3f8 100644
--- a/soft-fp/fmatf4.c
+++ b/soft-fp/fmatf4.c
@@ -25,8 +25,9 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
-#include <libc-internal.h>
-#include <sys/cdefs.h>
+#include <math.h>
+#include <libc-diag.h>
+
 /* R_e is not set in cases where it is not used in packing, but the
    compiler does not see that it is set in all cases where it is
    used, resulting in warnings that it may be used uninitialized.
@@ -35,7 +36,7 @@
    macro is defined.  */
 DIAG_PUSH_NEEDS_COMMENT;
 DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wmaybe-uninitialized");
-#include <math.h>
+
 #include "soft-fp.h"
 #include "quad.h"