With gcc 7 and -O3, I got stratcliff.c: In function ‘do_test’: cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] cc1: all warnings being treated as errors
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU C Library master sources". The branch, hjl/pr18822 has been created at b83488990ba01beed026bbabbc78638c0a396bc8 (commit) - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b83488990ba01beed026bbabbc78638c0a396bc8 commit b83488990ba01beed026bbabbc78638c0a396bc8 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:53:06 2017 -0700 Hide internal __ioctl function [BZ #18822] Hide internal __ioctl function to allow direct access within libc.so and libc.a without using GOT nor PLT. __GI___ioctl is defined when sysdeps/unix/syscalls.list is used to generate ioctl. Otherwise libc_hidden_def is needed explicitly. [BZ #18822] * include/sys/ioctl.h (__ioctl): Add libc_hidden_proto. * misc/ioctl.c (__ioctl): Add libc_hidden_def. * sysdeps/mach/hurd/ioctl.c (__ioctl): Likewise. * sysdeps/unix/sysv/linux/aarch64/ioctl.S (__ioctl): Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S (__ioctl): Likewise. * sysdeps/unix/sysv/linux/powerpc/ioctl.c (__ioctl): Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/ioctl.S (__ioctl): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=55921f3e110a09be5dd27ed246affc6bef55cf88 commit 55921f3e110a09be5dd27ed246affc6bef55cf88 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:40:26 2017 -0700 Mark internal intl functions with attribute_hidden [BZ #18822] Mark internal intl functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * intl/gettextP.h (__dcngettext): Add attribute_hidden. (__dcigettext): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1fa501ff0dfd0416fa89d3ce25c142fe8674fd8e commit 1fa501ff0dfd0416fa89d3ce25c142fe8674fd8e Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:25:56 2017 -0700 Hide internal sysinfo functions [BZ #18822] Hide internal sysinfo functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/sysinfo.h (__get_nprocs_conf): Add libc_hidden_proto. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. (__get_child_max): Add attribute_hidden. * misc/getsysstats.c (__get_nprocs_conf): Add libc_hidden_def. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. * sysdeps/mach/getsysstats.c (__get_nprocs_conf): Add libc_hidden_def. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Add libc_hidden_def. (__get_nprocs_conf): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=8115d0f1830b215b1ba3f9bd003e9a2e63d17f71 commit 8115d0f1830b215b1ba3f9bd003e9a2e63d17f71 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:13:02 2017 -0700 Hide __chmod and __mkdir [BZ #18822] Hide internal __chmod and __mkdir functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/stat.h (__chmod): Add libc_hidden_proto. (__mkdir): Likewise. * io/chmod.c (__chmod): Add libc_hidden_def. * io/mkdir.c (__mkdir): Likewise. * sysdeps/mach/hurd/chmod.c (__chmod): Likewise. * sysdeps/mach/hurd/mkdir.c (__mkdir): Likewise. * sysdeps/unix/sysv/linux/generic/chmod.c (__chmod): Likewise. * sysdeps/unix/sysv/linux/generic/mkdir.c (__mkdir): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=17f6eeac550a41d44aaa10483f0c26c47c7daaab commit 17f6eeac550a41d44aaa10483f0c26c47c7daaab Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:38:46 2017 -0700 Mark internal netlink functions with attribute_hidden [BZ #18822] Mark internal netlink functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/netlinkaccess.h (__netlink_open): Add attribute_hidden. (__netlink_close): Likewise. (__netlink_free_handle): Likewise. (__netlink_request): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5249192d316d41fd741bdacb503804d804790205 commit 5249192d316d41fd741bdacb503804d804790205 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:22:10 2017 -0700 Mark internal rpc functions with attribute_hidden [BZ #18822] Mark internal rpc functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/rpc/rpc.h (__rpc_thread_variables): Add attribute_hidden. (__rpc_thread_svc_cleanup): Likewise. (__rpc_thread_clnt_cleanup): Likewise. (__rpc_thread_key_cleanup): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=2a307f8d825ea908b9745ea86db82933c4f9a17e commit 2a307f8d825ea908b9745ea86db82933c4f9a17e Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:11:38 2017 -0700 string/stratcliff.c: Replace int with size_t [BZ #21982] Fix GCC 7 errors when string/stratcliff.c is compiled with -O3: stratcliff.c: In function ‘do_test’: cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] [BZ #21982] * string/stratcliff.c (do_test): Declare size, nchars, inner, middle and outer with size_t instead of int. Repleace %d with %Zd in printf. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=18cfd35e2b36ba5fb23d585290ec2ef06341e038 commit 18cfd35e2b36ba5fb23d585290ec2ef06341e038 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 08:05:25 2017 -0700 Hide __readv and __writev [BZ #18822] Hide internal __readv and __writev functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/uio.h (__readv): Add libc_hidden_proto. (__writev): Likewise. * misc/readv.c (__readv): Add libc_hidden_def. * misc/writev.c (__writev): Likewise. * sysdeps/posix/readv.c (__readv): Likewise. * sysdeps/posix/writev.c (__writev): Likewise. * sysdeps/unix/sysv/linux/readv.c: Include <sys/uio.h>. (__readv): Likewise. * sysdeps/unix/sysv/linux/writev.c: Include <sys/uio.h>. (__writev): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=06d075c21ccc1c1441525c2c3973a2616a58de3d commit 06d075c21ccc1c1441525c2c3973a2616a58de3d Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 07:28:23 2017 -0700 Hide internal regex functions [BZ #18822] Hide internal regex functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/regex.h (__re_compile_fastmap): Add attribute_hidden. (__regcomp): Add libc_hidden_proto. (__regexec): Likewise. (__regfree): Likewise. * posix/regcomp.c (__regcomp): Add libc_hidden_def. (__regfree): Likewise. * posix/regexec.c (__regexec): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c4e5e65757810317fe93dcda9f026b23579348dd commit c4e5e65757810317fe93dcda9f026b23579348dd Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 16:47:56 2017 -0700 Mark internal stdlib functions with attribute_hidden [BZ #18822] Mark internal stdlib functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. __realpath is hidden with libc_hidden_proto and libc_hidden_def since the exported realpath is an alias of __realpath. [BZ #18822] * include/stdlib.h (__random): Add attribute_hidden. (__random_r): Likewise. (__srandom_r): Likewise. (__initstate_r): Likewise. (__setstate_r): Likewise. (__erand48_r): Likewise. (__nrand48_r): Likewise. (__jrand48_r): Likewise. (__srand48_r): Likewise. (__seed48_r): Likewise. (__lcong48_r): Likewise. (__drand48_iterate): Likewise. (__setenv): Likewise. (__unsetenv): Likewise. (__clearenv): Likewise. (__ptsname_r): Likewise. (__posix_openpt): Likewise. (__add_to_environ): Likewise. (__ecvt_r): Likewise. (__fcvt_r): Likewise. (__qecvt_r): Likewise. (__qfcvt_r): Likewise. (__realpath): Add libc_hidden_proto. * stdlib/canonicalize.c (__realpath): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=16032280842fd1903c9638dbc9eebdad38b3e12c commit 16032280842fd1903c9638dbc9eebdad38b3e12c Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 16:29:20 2017 -0700 Mark internal utmp functions with attribute_hidden [BZ #18822] Mark internal utmp functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/utmp.h (__updwtmp): Add attribute_hidden. (__utmpname): Likewise. (__getutent): Likewise. (__setutent): Likewise. (__endutent): Likewise. (__getutid): Likewise. (__getutline): Likewise. (__pututline): Likewise. (__getutent_r): Likewise. (__getutid_r): Likewise. (__getutline_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5d5d6d6cf9f07170508a60093f9d5af036186d3c commit 5d5d6d6cf9f07170508a60093f9d5af036186d3c Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 16:23:58 2017 -0700 Mark internal dirent functions with attribute_hidden [BZ #18822] Mark internal dirent functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. __readdir64 is hidden with libc_hidden_proto and libc_hidden_def since the exported readdir64 is an alias of __readdir64. [BZ #18822] * include/dirent.h (__opendir): Always add attribute_hidden. (__fdopendir): Likewise. (__closedir): Likewise. (__readdir): Likewise. (__readdir64): Add libc_hidden_proto. * sysdeps/mach/hurd/readdir64.c (__readdir64): Add libc_hidden_def. * sysdeps/unix/sysv/linux/i386/readdir64.c (__readdir64): Likewise. * sysdeps/unix/sysv/linux/readdir64.c (__readdir64): Likewise. * sysdeps/unix/sysv/linux/wordsize-64/readdir.c (__GI___readdir64): New alias. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4443311e25fa8f9b7ea9e1d89938adaffde749af commit 4443311e25fa8f9b7ea9e1d89938adaffde749af Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:49:08 2017 -0700 Mark internal getXXXbyYYY functions with attribute_hidden [BZ #18822] Mark internal getXXXbyYYY functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/aliases.h (__getaliasbyname_r): Add attribute_hidden. * include/netdb.h (__gethostbyaddr_r): Likewise. (__gethostbyname_r): Likewise. (__gethostbyname2_r): Likewise. (__getnetbyaddr_r): Likewise. (__getnetbyname_r): Likewise. (__getservbyname_r): Likewise. (__getservbyport_r): Likewise. (__getprotobyname_r): Likewise. (__getprotobynumber_r): Likewise. (__getnetgrent_r): Likewise. * include/rpc/netdb.h (__getrpcbyname_r): Likewise. (__getrpcbynumber_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4daa71f7e1a877e2f0121cf203ec8e3ff1f0ddf4 commit 4daa71f7e1a877e2f0121cf203ec8e3ff1f0ddf4 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:45:30 2017 -0700 Mark internal stdio functions with attribute_hidden [BZ #18822] Mark internal stdio functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/stdio.h (__fcloseall): Add attribute_hidden. (__getline): Likewise. (__path_search): Likewise. (__gen_tempname): Likewise. (__libc_message): Likewise. (__flockfile): Likewise. (__funlockfile): Likewise. (__fxprintf): Likewise. (__fxprintf_nocancel): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=9ac9ad43638872a6c58a06d042f341cee426ff4f commit 9ac9ad43638872a6c58a06d042f341cee426ff4f Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:44:27 2017 -0700 Mark internal gshadow functions with attribute_hidden [BZ #18822] Mark internal gshadow functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/gshadow.h (__fgetsgent_r): Add attribute_hidden. (__sgetsgent_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=38d9702e43bdd7420f189ff3c508f62cccc27c98 commit 38d9702e43bdd7420f189ff3c508f62cccc27c98 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:37:42 2017 -0700 Mark internal statfs functions with attribute_hidden [BZ #18822] Mark internal statfs functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/statfs.h (__fstatfs): Add attribute_hidden. (__statfs64): Likewise. (__fstatfs64): Likewise. * include/sys/statvfs.h (__statvfs64): Likewise. (__fstatvfs64): Likewise. * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max): Likewise. (__statfs_filesize_max): Likewise. (__statfs_symlinks): Likewise. (__statfs_chown_restricted): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d0fbe0972f9d1622929f7529f128f1d09ac2c5c7 commit d0fbe0972f9d1622929f7529f128f1d09ac2c5c7 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 17:30:29 2017 -0700 Mark internal time functions with attribute_hidden [BZ #18822] Mark internal time functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/time.h (__tzstring): Add attribute_hidden. (__tzfile_read): Likewise. (__tzfile_compute): Likewise. (__tzfile_default): Likewise. (__tzset_parse_tz): Likewise. (__offtime): Likewise. (__asctime_r): Likewise. (__tzset): Likewise. (__tz_convert): Likewise. (__getdate_r): Likewise. (__getclktck): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=bbfeded7ea249143282aa7699c6917b72f82be7b commit bbfeded7ea249143282aa7699c6917b72f82be7b Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 17:16:26 2017 -0700 Mark internal nscd functions with attribute_hidden [BZ #18822] Mark internal nscd functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * nscd/nscd-client.h (__nscd_get_map_ref): Add attribute_hidden. (__nscd_unmap): Likewise. (__nscd_cache_search): Likewise. (__nscd_get_nl_timestamp): Likewise. (__nscd_getpwnam_r): Likewise. (__nscd_getpwuid_r): Likewise. (__nscd_getgrnam_r): Likewise. (__nscd_getgrgid_r): Likewise. (__nscd_gethostbyname_r): Likewise. (__nscd_gethostbyname2_r): Likewise. (__nscd_gethostbyaddr_r): Likewise. (__nscd_getai): Likewise. (__nscd_getgrouplist): Likewise. (__nscd_getservbyname_r): Likewise. (__nscd_getservbyport_r): Likewise. (__nscd_innetgr): Likewise. (__nscd_setnetgrent): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=83d54443aac9cf7e2fc7d413e69752a6d6445942 commit 83d54443aac9cf7e2fc7d413e69752a6d6445942 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 17:04:20 2017 -0700 Mark internal gmp functions with attribute_hidden [BZ #18822] Mark internal gmp functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/gmp.h: Declare internal functions only if _ISOMAC is undefined. (__mpn_extract_double): Add attribute_hidden. (__mpn_extract_long_double): Likewise. (__mpn_extract_float128): Likewise. (__mpn_construct_float): Likewise. (__mpn_construct_double): Likewise. (__mpn_construct_long_double): Likewise. (__mpn_construct_float128): Likewise. (mpn_add_1): Likewise. (mpn_addmul_1): Likewise. (mpn_add_n): Likewise. (mpn_cmp): Likewise. (mpn_divrem): Likewise. (mpn_lshift): Likewise. (mpn_mul): Likewise. (mpn_mul_1): Likewise. (mpn_rshift): Likewise. (mpn_sub_1): Likewise. (mpn_submul_1): Likewise. (mpn_sub_n): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=97f360588bb09faf3d28aeb6eb593d99567bee2d commit 97f360588bb09faf3d28aeb6eb593d99567bee2d Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 13:24:43 2017 -0700 Mark internal wchar functions with attribute_hidden [BZ #18822] Mark internal wchar functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/wchar.h (__wcsnlen): Add attribute_hidden. (__wcscat): Likewise. (__btowc): Likewise. (__wcrtomb): Likewise. (__mbsrtowcs): Likewise. (__wcsrtombs): Likewise. (__mbsnrtowcs): Likewise. (__wcsnrtombs): Likewise. (__wcsncpy): Likewise. (__wcpncpy): Likewise. (__wmemcpy): Likewise. (__wmempcpy): Likewise. (__wmemmove): Likewise. (__wcschrnul): Likewise. (__vfwscanf): Likewise. (__vswprintf): Likewise. (__fwprintf): Likewise. (__vfwprintf): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=23c6fe17377eed56a5d0ef42029398d36379e7be commit 23c6fe17377eed56a5d0ef42029398d36379e7be Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 12:27:59 2017 -0700 Mark internal nss symbols with attribute_hidden [BZ #18822] Mark internal nss symbols with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. Tested on x86-64 with and without --disable-nscd. [BZ #18822] * grp/initgroups.c (__nss_initgroups_database): Removed. * nss/XXX-lookup.c (DATABASE_NAME_SYMBOL): Likewise. * nss/getXXent.c (INTERNAL (REENTRANT_GETNAME)): Add attribute_hidden. * nss/nsswitch.c (__nss_database_custom): Define only if USE_NSCD is defined. (__nss_configure_lookup): Use __nss_database_custom only if USE_NSCD is defined. * nss/nsswitch.h (__nss_database_custom): Declare only if USE_NSCD is defined. Add attribute_hidden. (__nss_setent): Add attribute_hidden. (__nss_endent): Likewise. (__nss_getent_r): Likewise. (__nss_getent): Likewise. (DEFINE_DATABASE): Declare __nss_##arg##_database. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5349bdc6486edb7c597678605788273a37c6423a commit 5349bdc6486edb7c597678605788273a37c6423a Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 12:19:28 2017 -0700 Mark __libc_multiple_libcs with attribute_hidden [BZ #18822] Since __libc_multiple_libcs is defined as hidden symbol in init-first.c, it should be always marked with attribute_hidden. [BZ #18822] * csu/libc-start.c (__libc_multiple_libcs): Removed. * elf/dl-open.c: Include <libc-internal.h>. (__libc_multiple_libcs): Removed. * elf/dl-sysdep.c: Include <libc-internal.h> instead of <hp-timing.h>. * include/libc-internal.h (__libc_multiple_libcs): New. * misc/sbrk.c: Include <libc-internal.h>. (__libc_multiple_libcs): Removed. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a10f5c4d4a45de888e98ace2827bc0dd3a9fa39a commit a10f5c4d4a45de888e98ace2827bc0dd3a9fa39a Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 09:52:52 2017 -0700 Mark __dso_handle as hidden [BZ #18822] Since __dso_handle is always defined by either crtbegin.o from GCC or dso_handle.c, it should be marked as hidden and be passed directly. [BZ #18822] * dlfcn/modatexit.c (foo): Remove __dso_handle check. * dlfcn/modcxaatexit.c (__dso_handle): Remove declaration. * dlfcn/tstatexit.c (__dso_handle): Removed. (main): Don't check __dso_handle. * dlfcn/tstcxaatexit.c (__dso_handle): Removed. (main): Don't check __dso_handle. * include/stdlib.h (__dso_handle): New. * malloc/mtrace.c (__dso_handle): Remove declaration. (mtrace): Pass __dso_handle directly. * nptl/pthread_atfork.c (__dso_handle): Remove declaration. (__pthread_atfork): Pass __dso_handle directly. * nptl/tst-atfork2mod.c (__dso_handle): Removed. * posix/wordexp-test.c (__dso_handle): Remove declaration. (__app_register_atfork): Pass __dso_handle directly. * stdlib/at_quick_exit.c (__dso_handle): Remove declaration. (at_quick_exit): Pass __dso_handle directly. * stdlib/atexit.c (__dso_handle): Remove declaration. (atexit): Pass __dso_handle directly. * stdlib/tst-tls-atexit-lib.c (__dso_handle): Removed. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e9ba8a5feb999d39451e62a703fccea19e4b3fd5 commit e9ba8a5feb999d39451e62a703fccea19e4b3fd5 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 09:23:31 2017 -0700 x86-64: Mark internal symbols with attribute_hidden [BZ #18822] Since __syscall_clock_gettime and __start_context are internal symbols for Linux/x86-64, mark them with attribute_hidden. [BZ #18822] * sysdeps/unix/sysv/linux/x86_64/init-first.c (__syscall_clock_gettime): Add attribute_hidden. * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__start_context): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=9fc7bd919d795803058d88b3a9c452a5ee795471 commit 9fc7bd919d795803058d88b3a9c452a5ee795471 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 09:13:03 2017 -0700 x86: Mark VDSO_SYMBOL(getcpu) with attribute_hidden [BZ #18822] VDSO_SYMBOL(getcpu) is defined as hidden in Linux/x86_64 init-first.c and unused for Linux/i386. [BZ #18822] * sysdeps/unix/sysv/linux/x86/libc-vdso.h (VDSO_SYMBOL(getcpu)): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=6c7f3e3e8402b9a4e63d86ffe416e35356fb3251 commit 6c7f3e3e8402b9a4e63d86ffe416e35356fb3251 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 09:00:24 2017 -0700 Mark internal grp/pwd/shadow functions with attribute_hidden [BZ #18822] Mark internal grp/pwd/shadow functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/grp.h (__fgetgrent_r): Add attribute_hidden. (__getgrgid_r): Likewise. (__getgrnam_r): Likewise. * include/pwd.h (__getpwuid_r): Likewise. (__getpwnam_r): Likewise. (__fgetpwent_r): Likewise. * include/shadow.h (__getspnam_r): Likewise. (__sgetspent_r): Likewise. (__fgetspent_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5b8d381bfb1a57a0cdbe21e596f96be22b48fba3 commit 5b8d381bfb1a57a0cdbe21e596f96be22b48fba3 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 05:43:12 2017 -0700 Mark internal unistd.h functions with attribute_hidden [BZ #18822] Mark internal unistd.h functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/unistd.h (__access): Add attribute_hidden. (__lseek64): Likewise. (__libc_pread64): Likewise. (__pipe2): Likewise. (__sleep): Likewise. (__chdir): Likewise. (__fchdir): Likewise. (__getcwd): Likewise. (__rmdir): Likewise. (__execvpe): Likewise. (__execve): Likewise. (__setsid): Likewise. (__getuid): Likewise. (__geteuid): Likewise. (__getgid): Likewise. (__getegid): Likewise. (__getgroups): Likewise. (__group_member): Likewise. (__ttyname_r): Likewise. (__isatty): Likewise. (__readlink): Likewise. (__unlink): Likewise. (__gethostname): Likewise. (__profil): Likewise. (__getdtablesize): Likewise. (__brk): Likewise. (__ftruncate): Likewise. (__ftruncate64): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=159b3115b41ac9c2471f61dcc6851db1443933d9 commit 159b3115b41ac9c2471f61dcc6851db1443933d9 Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 13:17:12 2017 -0700 Mark internal argp functions with attribute_hidden [BZ #18822] Mark internal argp functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * argp/argp-fmtstream.c: Include <argp-fmtstream.h>. * argp/argp-fs-xinl.c: Likewise. * argp/argp-help.c: Include <argp.h> and <argp-fmtstream.h>. * argp/argp-parse.c: Include <argp.h>. * argp/argp-xinl.c: Likewise. * include/argp-fmtstream.h: New file. * include/argp.h (__argp_error): Add attribute_hidden. (__argp_failure): Likewise. (__argp_input): Likewise. (__argp_state_help): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=2e0b377a5aeac32b88dca6934e826f59f30ad2c5 commit 2e0b377a5aeac32b88dca6934e826f59f30ad2c5 Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 12:48:28 2017 -0700 Mark ____wcsto*_l_internal functions with attribute_hidden [BZ #18822] Mark ____wcsto*_l_internal functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/wchar.h (____wcstof_l_internal): New prototype. (____wcstod_l_internal): Likewise. (____wcstold_l_internal): Likewise. (____wcstol_l_internal): Likewise. (____wcstoul_l_internal): Likewise. (____wcstoll_l_internal): Likewise. (____wcstoull_l_internal): Likewise. (____wcstof128_l_internal): Likewise. * sysdeps/ieee754/float128/wcstof128.c (____wcstof128_l_internal): Removed. * sysdeps/ieee754/float128/wcstof128_l.c (____wcstof128_l_internal): Likewise. * wcsmbs/wcstod.c (____wcstod_l_internal): Likewise. * wcsmbs/wcstod_l.c (____wcstod_l_internal): Likewise. * wcsmbs/wcstof.c (____wcstof_l_internal): Likewise. * wcsmbs/wcstof_l.c (____wcstof_l_internal): Likewise. * wcsmbs/wcstol_l.c (____wcstol_l_internal): Likewise. * wcsmbs/wcstold.c (____wcstold_l_internal): Likewise. * wcsmbs/wcstold_l.c (____wcstold_l_internal): Likewise. * wcsmbs/wcstoll_l.c (____wcstoll_l_internal): Likewise. * wcsmbs/wcstoul_l.c (____wcstoul_l_internal): Likewise. * wcsmbs/wcstoull_l.c (____wcstoull_l_internal): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=efbe26e56ea10c7cc57ab0fcc2cf66a7728daac7 commit efbe26e56ea10c7cc57ab0fcc2cf66a7728daac7 Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 12:35:02 2017 -0700 Mark __internal_statvfs[64] with attribute_hidden [BZ #18822] Mark __internal_statvfs[64] with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/fstatvfs.c: Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs): Removed. * sysdeps/unix/sysv/linux/fstatvfs64.c Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs64): Removed. * sysdeps/unix/sysv/linux/internal_statvfs.c: Include "internal_statvfs.h" instead of <sys/statvfs.h>. * sysdeps/unix/sysv/linux/internal_statvfs.h: New file. * sysdeps/unix/sysv/linux/statvfs.c Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs): Removed. * sysdeps/unix/sysv/linux/statvfs64.c Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs64): Removed. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=31e6082f1d21622bd891a8f540f792d0bb423a61 commit 31e6082f1d21622bd891a8f540f792d0bb423a61 Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 12:26:17 2017 -0700 Mark 3 *_internal functions with attribute_hidden [BZ #18822] Mark __ptsname_internal, __mktime_internal and __fopen_internal with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/stdlib.h (__ptsname_internal): Add attribute_hidden. * include/time.h (__mktime_internal): Likewise. * libio/iolibio.h (__fopen_internal): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1c182c46d05a739e42e2369cc43cd1cd65246f17 commit 1c182c46d05a739e42e2369cc43cd1cd65246f17 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 13 07:00:22 2017 -0700 Mark internal functions with attribute_hidden [BZ #18822] Mark internal functions with attribute_hidden to allow direct access to internal functions within libc.so and libc.a without using GOT nor PLT. Size comparison of libc.so: On x86-64: text data bss dec hex Before: 1728577 20584 17088 1766249 1af369 After : 1728593 20584 17088 1766265 1af379 The only change is __gconv_release_shlib in iconv/gconv_dl.c is inlined since it is hidden, which increases the code size of gconv_dl.os by 18 bytes. On i686: text data bss dec hex Before: 1869039 11444 11112 1891595 1cdd0b After : 1868635 11444 11112 1891191 1cdb77 The code size is decreased by avoiding GOT/PLT for hidden functions. [BZ #18822] * iconv/gconv_int.h (__gconv_open): Add attribute_hidden. (__gconv_close): Likewise. (__gconv): Likewise. (__gconv_find_transform): Likewise. (__gconv_lookup_cache): Likewise. (__gconv_compare_alias_cache): Likewise. (__gconv_load_cache): Likewise. (__gconv_get_path): Likewise. (__gconv_close_transform): Likewise. (__gconv_release_cache): Likewise. (__gconv_find_shlib): Likewise. (__gconv_release_shlib): Likewise. (__gconv_get_builtin_trans): Likewise. (__gconv_compare_alias): Likewise. * include/dlfcn.h (_dlerror_run): Likewise. * include/stdio.h (__fortify_fail_abort): Likewise. * include/time.h (__tz_compute): Likewise. (__strptime_internal): Likewise. * intl/gettextP.h (_nl_find_domain): Likewise. (_nl_load_domain): Likewise. (_nl_find_msg): Likewise. * intl/plural-exp.h (FREE_EXPRESSION): Likewise. (EXTRACT_PLURAL_EXPRESSION): Likewise. * locale/coll-lookup.h (__collidx_table_lookup): Likewise. * resolv/gai_misc.h (__gai_enqueue_request): Likewise. (__gai_find_request): Likewise. (__gai_remove_request): Likewise. (__gai_notify): Likewise. (__gai_notify_only): Likewise. * sysdeps/generic/aio_misc.h (__aio_sigqueue): Likewise. * sysdeps/generic/ldsodefs.h (_dl_symbol_value): Likewise. (_dl_fini): Likewise. (_dl_non_dynamic_init): Likewise. (_dl_aux_init): Likewise. * sysdeps/i386/machine-gmon.h (mcount_internal): Likewise. * sysdeps/unix/sysv/linux/i386/olddirent.h (__old_getdents64): Likewise. * wcsmbs/wcsmbsload.h (__wcsmbs_load_conv): Likewise. (__wcsmbs_clone_conv): Likewise. (__wcsmbs_named_conv): Likewise. -----------------------------------------------------------------------
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU C Library master sources". The branch, hjl/pr18822 has been created at 1410696aaede92ac13171ac7250bcc7d41bbdd72 (commit) - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1410696aaede92ac13171ac7250bcc7d41bbdd72 commit 1410696aaede92ac13171ac7250bcc7d41bbdd72 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 06:10:22 2017 -0700 Hide internal __mremap function [BZ #18822] Hide internal __mremap function to allow direct access within libc.so and libc.a without using GOT nor PLT. __GI___mremap is defined when sysdeps/unix/syscalls.list is used to generate ioctl. Otherwise libc_hidden_def is needed explicitly. [BZ #18822] * include/sys/mman.h (__mremap): Add libc_hidden_proto. * sysdeps/unix/sysv/linux/m68k/mremap.S (__mremap): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=06649921f056311988c722d6b7b60578c3141dca commit 06649921f056311988c722d6b7b60578c3141dca Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 06:07:11 2017 -0700 Hide internal __malloc_check_init function [BZ #18822] Hide internal __malloc_check_init function to allow direct access within libc.so and libc.a without using GOT nor PLT. * include/malloc.h (__malloc_check_init): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=9ffe75b51b6fa7a6848873f3a1a8599e83a9a58d commit 9ffe75b51b6fa7a6848873f3a1a8599e83a9a58d Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:53:06 2017 -0700 Hide internal __ioctl function [BZ #18822] Hide internal __ioctl function to allow direct access within libc.so and libc.a without using GOT nor PLT. __GI___ioctl is defined when sysdeps/unix/syscalls.list is used to generate ioctl. Otherwise libc_hidden_def is needed explicitly. [BZ #18822] * include/sys/ioctl.h (__ioctl): Add libc_hidden_proto. * misc/ioctl.c (__ioctl): Add libc_hidden_def. * sysdeps/mach/hurd/ioctl.c (__ioctl): Likewise. * sysdeps/unix/sysv/linux/aarch64/ioctl.S (__ioctl): Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S (__ioctl): Likewise. * sysdeps/unix/sysv/linux/powerpc/ioctl.c (__ioctl): Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/ioctl.S (__ioctl): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=816438f0b94590c9dd9b9e25e848c02e909caba3 commit 816438f0b94590c9dd9b9e25e848c02e909caba3 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:40:26 2017 -0700 Mark internal intl functions with attribute_hidden [BZ #18822] Mark internal intl functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * intl/gettextP.h (__dcngettext): Add attribute_hidden. (__dcigettext): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4f53f065ff0adedf184ad0eb365904b318198cde commit 4f53f065ff0adedf184ad0eb365904b318198cde Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:25:56 2017 -0700 Hide internal sysinfo functions [BZ #18822] Hide internal sysinfo functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/sysinfo.h (__get_nprocs_conf): Add libc_hidden_proto. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. (__get_child_max): Add attribute_hidden. * misc/getsysstats.c (__get_nprocs_conf): Add libc_hidden_def. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. * sysdeps/mach/getsysstats.c (__get_nprocs_conf): Add libc_hidden_def. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Add libc_hidden_def. (__get_nprocs_conf): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=477c60c26f2733bfa7932b5e1c5b1da97ed7f1b1 commit 477c60c26f2733bfa7932b5e1c5b1da97ed7f1b1 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:13:02 2017 -0700 Hide __chmod and __mkdir [BZ #18822] Hide internal __chmod and __mkdir functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/stat.h (__chmod): Add libc_hidden_proto. (__mkdir): Likewise. * io/chmod.c (__chmod): Add libc_hidden_def. * io/mkdir.c (__mkdir): Likewise. * sysdeps/mach/hurd/chmod.c (__chmod): Likewise. * sysdeps/mach/hurd/mkdir.c (__mkdir): Likewise. * sysdeps/unix/sysv/linux/generic/chmod.c (__chmod): Likewise. * sysdeps/unix/sysv/linux/generic/mkdir.c (__mkdir): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=9aa1cf8c878fc0a3965196ace8166c5fcb505b81 commit 9aa1cf8c878fc0a3965196ace8166c5fcb505b81 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:38:46 2017 -0700 Mark internal netlink functions with attribute_hidden [BZ #18822] Mark internal netlink functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/netlinkaccess.h (__netlink_open): Add attribute_hidden. (__netlink_close): Likewise. (__netlink_free_handle): Likewise. (__netlink_request): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=cfbc0e90818e689b29db019fdd2ff201475e5117 commit cfbc0e90818e689b29db019fdd2ff201475e5117 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:22:10 2017 -0700 Mark internal rpc functions with attribute_hidden [BZ #18822] Mark internal rpc functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/rpc/rpc.h (__rpc_thread_variables): Add attribute_hidden. (__rpc_thread_svc_cleanup): Likewise. (__rpc_thread_clnt_cleanup): Likewise. (__rpc_thread_key_cleanup): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ce655e2acbe6387d35031e2aa70881234a21dac1 commit ce655e2acbe6387d35031e2aa70881234a21dac1 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:11:38 2017 -0700 string/stratcliff.c: Replace int with size_t [BZ #21982] Fix GCC 7 errors when string/stratcliff.c is compiled with -O3: stratcliff.c: In function ‘do_test’: cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] [BZ #21982] * string/stratcliff.c (do_test): Declare size, nchars, inner, middle and outer with size_t instead of int. Repleace %d with %Zd in printf. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=f7f85ffbeda0fd26f62db17660b24553f7da29f1 commit f7f85ffbeda0fd26f62db17660b24553f7da29f1 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 08:05:25 2017 -0700 Hide __readv and __writev [BZ #18822] Hide internal __readv and __writev functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/uio.h (__readv): Add libc_hidden_proto. (__writev): Likewise. * misc/readv.c (__readv): Add libc_hidden_def. * misc/writev.c (__writev): Likewise. * sysdeps/posix/readv.c (__readv): Likewise. * sysdeps/posix/writev.c (__writev): Likewise. * sysdeps/unix/sysv/linux/readv.c: Include <sys/uio.h>. (__readv): Likewise. * sysdeps/unix/sysv/linux/writev.c: Include <sys/uio.h>. (__writev): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ee265573246df91bdf77f28fdda0ae78f6750873 commit ee265573246df91bdf77f28fdda0ae78f6750873 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 07:28:23 2017 -0700 Hide internal regex functions [BZ #18822] Hide internal regex functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/regex.h (__re_compile_fastmap): Add attribute_hidden. (__regcomp): Add libc_hidden_proto. (__regexec): Likewise. (__regfree): Likewise. * posix/regcomp.c (__regcomp): Add libc_hidden_def. (__regfree): Likewise. * posix/regexec.c (__regexec): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=fd522820bc61db98d99ba8372ccd2337954883e9 commit fd522820bc61db98d99ba8372ccd2337954883e9 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 16:47:56 2017 -0700 Mark internal stdlib functions with attribute_hidden [BZ #18822] Mark internal stdlib functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. __realpath is hidden with libc_hidden_proto and libc_hidden_def since the exported realpath is an alias of __realpath. [BZ #18822] * include/stdlib.h (__random): Add attribute_hidden. (__random_r): Likewise. (__srandom_r): Likewise. (__initstate_r): Likewise. (__setstate_r): Likewise. (__erand48_r): Likewise. (__nrand48_r): Likewise. (__jrand48_r): Likewise. (__srand48_r): Likewise. (__seed48_r): Likewise. (__lcong48_r): Likewise. (__drand48_iterate): Likewise. (__setenv): Likewise. (__unsetenv): Likewise. (__clearenv): Likewise. (__ptsname_r): Likewise. (__posix_openpt): Likewise. (__add_to_environ): Likewise. (__ecvt_r): Likewise. (__fcvt_r): Likewise. (__qecvt_r): Likewise. (__qfcvt_r): Likewise. (__realpath): Add libc_hidden_proto. * stdlib/canonicalize.c (__realpath): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=f186c1edc566cf66ecca94db4295b545621676c3 commit f186c1edc566cf66ecca94db4295b545621676c3 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 16:29:20 2017 -0700 Mark internal utmp functions with attribute_hidden [BZ #18822] Mark internal utmp functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/utmp.h (__updwtmp): Add attribute_hidden. (__utmpname): Likewise. (__getutent): Likewise. (__setutent): Likewise. (__endutent): Likewise. (__getutid): Likewise. (__getutline): Likewise. (__pututline): Likewise. (__getutent_r): Likewise. (__getutid_r): Likewise. (__getutline_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=523458c7009d74ded620750d11a9f2908d473a84 commit 523458c7009d74ded620750d11a9f2908d473a84 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 16:23:58 2017 -0700 Mark internal dirent functions with attribute_hidden [BZ #18822] Mark internal dirent functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. __readdir64 is hidden with libc_hidden_proto and libc_hidden_def since the exported readdir64 is an alias of __readdir64. [BZ #18822] * include/dirent.h (__opendir): Always add attribute_hidden. (__fdopendir): Likewise. (__closedir): Likewise. (__readdir): Likewise. (__readdir64): Add libc_hidden_proto. * sysdeps/mach/hurd/readdir64.c (__readdir64): Add libc_hidden_def. * sysdeps/unix/sysv/linux/i386/readdir64.c (__readdir64): Likewise. * sysdeps/unix/sysv/linux/readdir64.c (__readdir64): Likewise. * sysdeps/unix/sysv/linux/wordsize-64/readdir.c (__GI___readdir64): New alias. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=8c7a18bf3de44db5ddbf0f32fc1ec1235fffa00d commit 8c7a18bf3de44db5ddbf0f32fc1ec1235fffa00d Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:49:08 2017 -0700 Mark internal getXXXbyYYY functions with attribute_hidden [BZ #18822] Mark internal getXXXbyYYY functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/aliases.h (__getaliasbyname_r): Add attribute_hidden. * include/netdb.h (__gethostbyaddr_r): Likewise. (__gethostbyname_r): Likewise. (__gethostbyname2_r): Likewise. (__getnetbyaddr_r): Likewise. (__getnetbyname_r): Likewise. (__getservbyname_r): Likewise. (__getservbyport_r): Likewise. (__getprotobyname_r): Likewise. (__getprotobynumber_r): Likewise. (__getnetgrent_r): Likewise. * include/rpc/netdb.h (__getrpcbyname_r): Likewise. (__getrpcbynumber_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a2a07f1af999b385f18c13dd34b04c787513f023 commit a2a07f1af999b385f18c13dd34b04c787513f023 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:45:30 2017 -0700 Mark internal stdio functions with attribute_hidden [BZ #18822] Mark internal stdio functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/stdio.h (__fcloseall): Add attribute_hidden. (__getline): Likewise. (__path_search): Likewise. (__gen_tempname): Likewise. (__libc_message): Likewise. (__flockfile): Likewise. (__funlockfile): Likewise. (__fxprintf): Likewise. (__fxprintf_nocancel): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=7a9429114fc130eb548623d5b3f9d56eddd51e1d commit 7a9429114fc130eb548623d5b3f9d56eddd51e1d Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:44:27 2017 -0700 Mark internal gshadow functions with attribute_hidden [BZ #18822] Mark internal gshadow functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/gshadow.h (__fgetsgent_r): Add attribute_hidden. (__sgetsgent_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5df5a6815931fdb2c95dccf5c331ffc059dd923b commit 5df5a6815931fdb2c95dccf5c331ffc059dd923b Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:37:42 2017 -0700 Mark internal statfs functions with attribute_hidden [BZ #18822] Mark internal statfs functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/statfs.h (__fstatfs): Add attribute_hidden. (__statfs64): Likewise. (__fstatfs64): Likewise. * include/sys/statvfs.h (__statvfs64): Likewise. (__fstatvfs64): Likewise. * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max): Likewise. (__statfs_filesize_max): Likewise. (__statfs_symlinks): Likewise. (__statfs_chown_restricted): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=3b1e3605fa2e73953f87b61d2a2df057b0766178 commit 3b1e3605fa2e73953f87b61d2a2df057b0766178 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 17:30:29 2017 -0700 Mark internal time functions with attribute_hidden [BZ #18822] Mark internal time functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/time.h (__tzstring): Add attribute_hidden. (__tzfile_read): Likewise. (__tzfile_compute): Likewise. (__tzfile_default): Likewise. (__tzset_parse_tz): Likewise. (__offtime): Likewise. (__asctime_r): Likewise. (__tzset): Likewise. (__tz_convert): Likewise. (__getdate_r): Likewise. (__getclktck): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=eabaefac7b4b1c79b4fb7114f39cc64902447717 commit eabaefac7b4b1c79b4fb7114f39cc64902447717 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 17:16:26 2017 -0700 Mark internal nscd functions with attribute_hidden [BZ #18822] Mark internal nscd functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * nscd/nscd-client.h (__nscd_get_map_ref): Add attribute_hidden. (__nscd_unmap): Likewise. (__nscd_cache_search): Likewise. (__nscd_get_nl_timestamp): Likewise. (__nscd_getpwnam_r): Likewise. (__nscd_getpwuid_r): Likewise. (__nscd_getgrnam_r): Likewise. (__nscd_getgrgid_r): Likewise. (__nscd_gethostbyname_r): Likewise. (__nscd_gethostbyname2_r): Likewise. (__nscd_gethostbyaddr_r): Likewise. (__nscd_getai): Likewise. (__nscd_getgrouplist): Likewise. (__nscd_getservbyname_r): Likewise. (__nscd_getservbyport_r): Likewise. (__nscd_innetgr): Likewise. (__nscd_setnetgrent): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d7e24e19bc04107e0b209f26483d92751eedd2f6 commit d7e24e19bc04107e0b209f26483d92751eedd2f6 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 17:04:20 2017 -0700 Mark internal gmp functions with attribute_hidden [BZ #18822] Mark internal gmp functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/gmp.h: Declare internal functions only if _ISOMAC is undefined. (__mpn_extract_double): Add attribute_hidden. (__mpn_extract_long_double): Likewise. (__mpn_extract_float128): Likewise. (__mpn_construct_float): Likewise. (__mpn_construct_double): Likewise. (__mpn_construct_long_double): Likewise. (__mpn_construct_float128): Likewise. (mpn_add_1): Likewise. (mpn_addmul_1): Likewise. (mpn_add_n): Likewise. (mpn_cmp): Likewise. (mpn_divrem): Likewise. (mpn_lshift): Likewise. (mpn_mul): Likewise. (mpn_mul_1): Likewise. (mpn_rshift): Likewise. (mpn_sub_1): Likewise. (mpn_submul_1): Likewise. (mpn_sub_n): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a11e4b7509038cd6d3ace5c92a8d2db2827c785b commit a11e4b7509038cd6d3ace5c92a8d2db2827c785b Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 13:24:43 2017 -0700 Mark internal wchar functions with attribute_hidden [BZ #18822] Mark internal wchar functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/wchar.h (__wcsnlen): Add attribute_hidden. (__wcscat): Likewise. (__btowc): Likewise. (__wcrtomb): Likewise. (__mbsrtowcs): Likewise. (__wcsrtombs): Likewise. (__mbsnrtowcs): Likewise. (__wcsnrtombs): Likewise. (__wcsncpy): Likewise. (__wcpncpy): Likewise. (__wmemcpy): Likewise. (__wmempcpy): Likewise. (__wmemmove): Likewise. (__wcschrnul): Likewise. (__vfwscanf): Likewise. (__vswprintf): Likewise. (__fwprintf): Likewise. (__vfwprintf): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e7fb5098ab52f70621181b9ccf2bfb9119a24e50 commit e7fb5098ab52f70621181b9ccf2bfb9119a24e50 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 09:52:52 2017 -0700 Mark __dso_handle as hidden [BZ #18822] Since __dso_handle is always defined by either crtbegin.o from GCC or dso_handle.c, it should be marked as hidden and be passed directly. [BZ #18822] * dlfcn/modatexit.c (foo): Remove __dso_handle check. * dlfcn/modcxaatexit.c (__dso_handle): Remove declaration. * dlfcn/tstatexit.c (__dso_handle): Removed. (main): Don't check __dso_handle. * dlfcn/tstcxaatexit.c (__dso_handle): Removed. (main): Don't check __dso_handle. * include/stdlib.h (__dso_handle): New. * malloc/mtrace.c (__dso_handle): Remove declaration. (mtrace): Pass __dso_handle directly. * nptl/pthread_atfork.c (__dso_handle): Remove declaration. (__pthread_atfork): Pass __dso_handle directly. * nptl/tst-atfork2mod.c (__dso_handle): Removed. * posix/wordexp-test.c (__dso_handle): Remove declaration. (__app_register_atfork): Pass __dso_handle directly. * stdlib/at_quick_exit.c (__dso_handle): Remove declaration. (at_quick_exit): Pass __dso_handle directly. * stdlib/atexit.c (__dso_handle): Remove declaration. (atexit): Pass __dso_handle directly. * stdlib/tst-tls-atexit-lib.c (__dso_handle): Removed. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=118ab8d99f92a42db0f3fa2ed4c7ebe711c2ca87 commit 118ab8d99f92a42db0f3fa2ed4c7ebe711c2ca87 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 09:00:24 2017 -0700 Mark internal grp/pwd/shadow functions with attribute_hidden [BZ #18822] Mark internal grp/pwd/shadow functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/grp.h (__fgetgrent_r): Add attribute_hidden. (__getgrgid_r): Likewise. (__getgrnam_r): Likewise. * include/pwd.h (__getpwuid_r): Likewise. (__getpwnam_r): Likewise. (__fgetpwent_r): Likewise. * include/shadow.h (__getspnam_r): Likewise. (__sgetspent_r): Likewise. (__fgetspent_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=08365c3afffdae09b98b321eb8dbc13683f82801 commit 08365c3afffdae09b98b321eb8dbc13683f82801 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 05:43:12 2017 -0700 Mark internal unistd functions with attribute_hidden [BZ #18822] Mark internal unistd functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/unistd.h (__access): Add attribute_hidden. (__lseek64): Likewise. (__libc_pread64): Likewise. (__pipe2): Likewise. (__sleep): Likewise. (__chdir): Likewise. (__fchdir): Likewise. (__getcwd): Likewise. (__rmdir): Likewise. (__execvpe): Likewise. (__execve): Likewise. (__setsid): Likewise. (__getuid): Likewise. (__geteuid): Likewise. (__getgid): Likewise. (__getegid): Likewise. (__getgroups): Likewise. (__group_member): Likewise. (__ttyname_r): Likewise. (__isatty): Likewise. (__readlink): Likewise. (__unlink): Likewise. (__gethostname): Likewise. (__profil): Likewise. (__getdtablesize): Likewise. (__brk): Likewise. (__ftruncate): Likewise. (__ftruncate64): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c409cbbcfe88f14bda113c4b53eb783ec1e2d1c8 commit c409cbbcfe88f14bda113c4b53eb783ec1e2d1c8 Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 13:17:12 2017 -0700 Mark internal argp functions with attribute_hidden [BZ #18822] Mark internal argp functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * argp/argp-fmtstream.c: Include <argp-fmtstream.h>. * argp/argp-fs-xinl.c: Likewise. * argp/argp-help.c: Include <argp.h> and <argp-fmtstream.h>. * argp/argp-parse.c: Include <argp.h>. * argp/argp-xinl.c: Likewise. * include/argp-fmtstream.h: New file. * include/argp.h (__argp_error): Add attribute_hidden. (__argp_failure): Likewise. (__argp_input): Likewise. (__argp_state_help): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=04a9ff17d0cec055dfbc75884b7caef204694276 commit 04a9ff17d0cec055dfbc75884b7caef204694276 Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 12:48:28 2017 -0700 Mark ____wcsto*_l_internal functions with attribute_hidden [BZ #18822] Mark ____wcsto*_l_internal functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/wchar.h (____wcstof_l_internal): New prototype. (____wcstod_l_internal): Likewise. (____wcstold_l_internal): Likewise. (____wcstol_l_internal): Likewise. (____wcstoul_l_internal): Likewise. (____wcstoll_l_internal): Likewise. (____wcstoull_l_internal): Likewise. (____wcstof128_l_internal): Likewise. * sysdeps/ieee754/float128/wcstof128.c (____wcstof128_l_internal): Removed. * sysdeps/ieee754/float128/wcstof128_l.c (____wcstof128_l_internal): Likewise. * wcsmbs/wcstod.c (____wcstod_l_internal): Likewise. * wcsmbs/wcstod_l.c (____wcstod_l_internal): Likewise. * wcsmbs/wcstof.c (____wcstof_l_internal): Likewise. * wcsmbs/wcstof_l.c (____wcstof_l_internal): Likewise. * wcsmbs/wcstol_l.c (____wcstol_l_internal): Likewise. * wcsmbs/wcstold.c (____wcstold_l_internal): Likewise. * wcsmbs/wcstold_l.c (____wcstold_l_internal): Likewise. * wcsmbs/wcstoll_l.c (____wcstoll_l_internal): Likewise. * wcsmbs/wcstoul_l.c (____wcstoul_l_internal): Likewise. * wcsmbs/wcstoull_l.c (____wcstoull_l_internal): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4a9b990022506ae3ad955e0aa5fe87688c746a7c commit 4a9b990022506ae3ad955e0aa5fe87688c746a7c Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 12:35:02 2017 -0700 Mark __internal_statvfs[64] with attribute_hidden [BZ #18822] Mark __internal_statvfs[64] with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/fstatvfs.c: Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs): Removed. * sysdeps/unix/sysv/linux/fstatvfs64.c Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs64): Removed. * sysdeps/unix/sysv/linux/internal_statvfs.c: Include "internal_statvfs.h" instead of <sys/statvfs.h>. * sysdeps/unix/sysv/linux/internal_statvfs.h: New file. * sysdeps/unix/sysv/linux/statvfs.c Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs): Removed. * sysdeps/unix/sysv/linux/statvfs64.c Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs64): Removed. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=587e47437fa9cfb44a47e389069696ce63ac7f99 commit 587e47437fa9cfb44a47e389069696ce63ac7f99 Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 12:26:17 2017 -0700 Mark 3 *_internal functions with attribute_hidden [BZ #18822] Mark __ptsname_internal, __mktime_internal and __fopen_internal with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/stdlib.h (__ptsname_internal): Add attribute_hidden. * include/time.h (__mktime_internal): Likewise. * libio/iolibio.h (__fopen_internal): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ec7d5f8327c9bd4a0000abd6b3f77d8c834279d1 commit ec7d5f8327c9bd4a0000abd6b3f77d8c834279d1 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 13 07:00:22 2017 -0700 Mark internal functions with attribute_hidden [BZ #18822] Mark internal functions with attribute_hidden to allow direct access to internal functions within libc.so and libc.a without using GOT nor PLT. Size comparison of libc.so: On x86-64: text data bss dec hex Before: 1728577 20584 17088 1766249 1af369 After : 1728593 20584 17088 1766265 1af379 The only change is __gconv_release_shlib in iconv/gconv_dl.c is inlined since it is hidden, which increases the code size of gconv_dl.os by 18 bytes. On i686: text data bss dec hex Before: 1869039 11444 11112 1891595 1cdd0b After : 1868635 11444 11112 1891191 1cdb77 The code size is decreased by avoiding GOT/PLT for hidden functions. [BZ #18822] * iconv/gconv_int.h (__gconv_open): Add attribute_hidden. (__gconv_close): Likewise. (__gconv): Likewise. (__gconv_find_transform): Likewise. (__gconv_lookup_cache): Likewise. (__gconv_compare_alias_cache): Likewise. (__gconv_load_cache): Likewise. (__gconv_get_path): Likewise. (__gconv_close_transform): Likewise. (__gconv_release_cache): Likewise. (__gconv_find_shlib): Likewise. (__gconv_release_shlib): Likewise. (__gconv_get_builtin_trans): Likewise. (__gconv_compare_alias): Likewise. * include/dlfcn.h (_dlerror_run): Likewise. * include/stdio.h (__fortify_fail_abort): Likewise. * include/time.h (__tz_compute): Likewise. (__strptime_internal): Likewise. * intl/gettextP.h (_nl_find_domain): Likewise. (_nl_load_domain): Likewise. (_nl_find_msg): Likewise. * intl/plural-exp.h (FREE_EXPRESSION): Likewise. (EXTRACT_PLURAL_EXPRESSION): Likewise. * locale/coll-lookup.h (__collidx_table_lookup): Likewise. * resolv/gai_misc.h (__gai_enqueue_request): Likewise. (__gai_find_request): Likewise. (__gai_remove_request): Likewise. (__gai_notify): Likewise. (__gai_notify_only): Likewise. * sysdeps/generic/aio_misc.h (__aio_sigqueue): Likewise. * sysdeps/generic/ldsodefs.h (_dl_symbol_value): Likewise. (_dl_fini): Likewise. (_dl_non_dynamic_init): Likewise. (_dl_aux_init): Likewise. * sysdeps/i386/machine-gmon.h (mcount_internal): Likewise. * sysdeps/unix/sysv/linux/i386/olddirent.h (__old_getdents64): Likewise. * wcsmbs/wcsmbsload.h (__wcsmbs_load_conv): Likewise. (__wcsmbs_clone_conv): Likewise. (__wcsmbs_named_conv): Likewise. -----------------------------------------------------------------------
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU C Library master sources". The branch, hjl/pr18822 has been created at 147f4263a5e18d5f0993c611d80e4e6179d73482 (commit) - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=147f4263a5e18d5f0993c611d80e4e6179d73482 commit 147f4263a5e18d5f0993c611d80e4e6179d73482 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 10:39:50 2017 -0700 Hide internal __gettextparse function [BZ #18822] Hide internal __gettextparse function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/plural-exp.h: New file. * intl/plural-exp.c: Include <plural-exp.h> instead of "plural-exp.h". https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=636814c7415f9d4df94789ac768cde4de697ee01 commit 636814c7415f9d4df94789ac768cde4de697ee01 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 10:20:45 2017 -0700 [PATCH] Hide internal __get_sol function [BZ #18822] Hide internal __get_sol function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/getsourcefilter.c: Include "getsourcefilter.h". * sysdeps/unix/sysv/linux/getsourcefilter.h: New file. * sysdeps/unix/sysv/linux/setsourcefilter.c: Include "getsourcefilter.h". (__get_sol): Removed. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=00e68790ebf691b6df23e4405fc86339d84ba211 commit 00e68790ebf691b6df23e4405fc86339d84ba211 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 10:11:21 2017 -0700 Move hidden_proto (__dl_iterate_phdr) to include/link.h [BZ #18822] [BZ #18822] * elf/dl-iteratephdr.c (hidden_proto (__dl_iterate_phdr)): Moved to ... * include/link.h (hidden_proto (__dl_iterate_phdr)): Here. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=be195cb3fa156efc596b15b621aee37e3a69c844 commit be195cb3fa156efc596b15b621aee37e3a69c844 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 10:07:55 2017 -0700 Hide internal __bsd_getpt function [BZ #18822] Hide internal __bsd_getpt function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/getpt.c (__bsd_getpt): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d5c86a82fbf6a47e37d438f245a1da7166a90c73 commit d5c86a82fbf6a47e37d438f245a1da7166a90c73 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 09:20:06 2017 -0700 Hide internal __fopen_maybe_mmap function [BZ #18822] Hide internal __fopen_maybe_mmap function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * libio/iolibio.h (__fopen_maybe_mmap): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a8ca03a013a12616bbc299c53fec78850aca04e7 commit a8ca03a013a12616bbc299c53fec78850aca04e7 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 09:18:36 2017 -0700 Hide internal __tdestroy function [BZ #18822] Hide internal __tdestroy function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/search.h (__tdestroy): Add libc_hidden_proto. * misc/tsearch.c (__tdestroy): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b51143562514c6e0e80f649ee4272440e6e11fbb commit b51143562514c6e0e80f649ee4272440e6e11fbb Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 09:17:07 2017 -0700 Hide internal __assert_fail_base function [BZ #18822] Hide internal __assert_fail_base function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/assert.h (__assert_fail_base): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=3da9afde9eb61f15e160b5de6753c394fab3c09d commit 3da9afde9eb61f15e160b5de6753c394fab3c09d Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 09:15:33 2017 -0700 Hide internal __sysinfo function [BZ #18822] Hide internal __sysinfo function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/include/sys/sysinfo.h (__sysinfo): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=efb119997cdbc823496b998e630dc3b7cbe16d9e commit efb119997cdbc823496b998e630dc3b7cbe16d9e Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 08:17:57 2017 -0700 Hide internal signal functions [BZ #18822] Hide internal signal functions to allow direct access within libc.so and libc.a without using GOT nor PLT. __GI___kill and __GI___sigaltstack are defined when syscalls.list is used to generate them. Otherwise libc_hidden_def is needed explicitly. [BZ #18822] * include/signal.h (__kill): Add libc_hidden_proto. (__sigblock): Likewise. (__sigprocmask): Likewise. (__sigaltstack): Likewise. * signal/kill.c (__kill): Add libc_hidden_def. * signal/sigblock.c (__sigblock): Likewise. * signal/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/mach/hurd/kill.c (__kill): Likewise. * sysdeps/mach/hurd/sigaltstack.c (__sigaltstack): Likewise. * sysdeps/mach/hurd/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/posix/sigblock.c (__sigblock): Likewise. * sysdeps/unix/sysv/linux/alpha/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/ia64/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise. * /sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/x86_64/sigprocmask.c (__sigprocmask): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=3d6eebe257b8adb9a7c41d457f3e4820a21c55ed commit 3d6eebe257b8adb9a7c41d457f3e4820a21c55ed Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 08:07:16 2017 -0700 Hide internal __strsep function [BZ #18822] Hide internal __strsep function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/string.h (__strsep): Add libc_hidden_proto. * string/strsep.c (__strsep): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=f5100a6906f2324b1ca0c6199270a38e29a0d9d9 commit f5100a6906f2324b1ca0c6199270a38e29a0d9d9 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 06:24:41 2017 -0700 Hide __posix_spawn_file_actions_realloc/__spawni [BZ #18822] Hide internal __posix_spawn_file_actions_realloc and /__spawni functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * posix/spawn_int.h (__posix_spawn_file_actions_realloc): Add attribute_hidden. (__spawni): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=7da9d085aa6e9d651322a9f9b652ac1f17d6c67f commit 7da9d085aa6e9d651322a9f9b652ac1f17d6c67f Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 06:10:22 2017 -0700 Hide internal __mremap function [BZ #18822] Hide internal __mremap function to allow direct access within libc.so and libc.a without using GOT nor PLT. __GI___mremap is defined when sysdeps/unix/syscalls.list is used to generate mremap. Otherwise libc_hidden_def is needed explicitly. [BZ #18822] * include/sys/mman.h (__mremap): Add libc_hidden_proto. * sysdeps/unix/sysv/linux/m68k/mremap.S (__mremap): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=7c320c7cf0de669131d650536ec50d6ac84f8856 commit 7c320c7cf0de669131d650536ec50d6ac84f8856 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 06:07:11 2017 -0700 Hide internal __malloc_check_init function [BZ #18822] Hide internal __malloc_check_init function to allow direct access within libc.so and libc.a without using GOT nor PLT. * include/malloc.h (__malloc_check_init): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=8e31bc0902b75337232d61ddd99c343576d674b8 commit 8e31bc0902b75337232d61ddd99c343576d674b8 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:53:06 2017 -0700 Hide internal __ioctl function [BZ #18822] Hide internal __ioctl function to allow direct access within libc.so and libc.a without using GOT nor PLT. __GI___ioctl is defined when sysdeps/unix/syscalls.list is used to generate ioctl. Otherwise libc_hidden_def is needed explicitly. [BZ #18822] * include/sys/ioctl.h (__ioctl): Add libc_hidden_proto. * misc/ioctl.c (__ioctl): Add libc_hidden_def. * sysdeps/mach/hurd/ioctl.c (__ioctl): Likewise. * sysdeps/unix/sysv/linux/aarch64/ioctl.S (__ioctl): Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S (__ioctl): Likewise. * sysdeps/unix/sysv/linux/powerpc/ioctl.c (__ioctl): Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/ioctl.S (__ioctl): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=0cfe1127b9be5426103329ef890c8583d1f0359b commit 0cfe1127b9be5426103329ef890c8583d1f0359b Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:40:26 2017 -0700 Mark internal intl functions with attribute_hidden [BZ #18822] Mark internal intl functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * intl/gettextP.h (__dcngettext): Add attribute_hidden. (__dcigettext): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=6abffd33c363806af9a547385dddf920efdf22e1 commit 6abffd33c363806af9a547385dddf920efdf22e1 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:25:56 2017 -0700 Hide internal sysinfo functions [BZ #18822] Hide internal sysinfo functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/sysinfo.h (__get_nprocs_conf): Add libc_hidden_proto. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. (__get_child_max): Add attribute_hidden. * misc/getsysstats.c (__get_nprocs_conf): Add libc_hidden_def. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. * sysdeps/mach/getsysstats.c (__get_nprocs_conf): Add libc_hidden_def. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Add libc_hidden_def. (__get_nprocs_conf): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a6d00814899a36c2d767ec6cc1ae82aa1f0d7aa6 commit a6d00814899a36c2d767ec6cc1ae82aa1f0d7aa6 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:13:02 2017 -0700 Hide __chmod and __mkdir [BZ #18822] Hide internal __chmod and __mkdir functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/stat.h (__chmod): Add libc_hidden_proto. (__mkdir): Likewise. * io/chmod.c (__chmod): Add libc_hidden_def. * io/mkdir.c (__mkdir): Likewise. * sysdeps/mach/hurd/chmod.c (__chmod): Likewise. * sysdeps/mach/hurd/mkdir.c (__mkdir): Likewise. * sysdeps/unix/sysv/linux/generic/chmod.c (__chmod): Likewise. * sysdeps/unix/sysv/linux/generic/mkdir.c (__mkdir): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=63b598c5ddf6062f4c9a0972fe85f727fb48d77a commit 63b598c5ddf6062f4c9a0972fe85f727fb48d77a Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:38:46 2017 -0700 Mark internal netlink functions with attribute_hidden [BZ #18822] Mark internal netlink functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/netlinkaccess.h (__netlink_open): Add attribute_hidden. (__netlink_close): Likewise. (__netlink_free_handle): Likewise. (__netlink_request): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d83f808afadf1a2000c3e1e55448fd5b57e9c6eb commit d83f808afadf1a2000c3e1e55448fd5b57e9c6eb Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:22:10 2017 -0700 Mark internal rpc functions with attribute_hidden [BZ #18822] Mark internal rpc functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/rpc/rpc.h (__rpc_thread_variables): Add attribute_hidden. (__rpc_thread_svc_cleanup): Likewise. (__rpc_thread_clnt_cleanup): Likewise. (__rpc_thread_key_cleanup): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ac56de9dae87dbc175431c76cb90965a12d25e91 commit ac56de9dae87dbc175431c76cb90965a12d25e91 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 08:05:25 2017 -0700 Hide __readv and __writev [BZ #18822] Hide internal __readv and __writev functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/uio.h (__readv): Add libc_hidden_proto. (__writev): Likewise. * misc/readv.c (__readv): Add libc_hidden_def. * misc/writev.c (__writev): Likewise. * sysdeps/posix/readv.c (__readv): Likewise. * sysdeps/posix/writev.c (__writev): Likewise. * sysdeps/unix/sysv/linux/readv.c: Include <sys/uio.h>. (__readv): Likewise. * sysdeps/unix/sysv/linux/writev.c: Include <sys/uio.h>. (__writev): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1c1721c26486ea66395f7cfbf8b9b03badfe6f8d commit 1c1721c26486ea66395f7cfbf8b9b03badfe6f8d Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 07:28:23 2017 -0700 Hide internal regex functions [BZ #18822] Hide internal regex functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/regex.h (__re_compile_fastmap): Add attribute_hidden. (__regcomp): Add libc_hidden_proto. (__regexec): Likewise. (__regfree): Likewise. * posix/regcomp.c (__regcomp): Add libc_hidden_def. (__regfree): Likewise. * posix/regexec.c (__regexec): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=863c00b0815b9f8eb64e9ec4325e04d21daaddda commit 863c00b0815b9f8eb64e9ec4325e04d21daaddda Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 16:47:56 2017 -0700 Mark internal stdlib functions with attribute_hidden [BZ #18822] Mark internal stdlib functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. __realpath is hidden with libc_hidden_proto and libc_hidden_def since the exported realpath is an alias of __realpath. [BZ #18822] * include/stdlib.h (__random): Add attribute_hidden. (__random_r): Likewise. (__srandom_r): Likewise. (__initstate_r): Likewise. (__setstate_r): Likewise. (__erand48_r): Likewise. (__nrand48_r): Likewise. (__jrand48_r): Likewise. (__srand48_r): Likewise. (__seed48_r): Likewise. (__lcong48_r): Likewise. (__drand48_iterate): Likewise. (__setenv): Likewise. (__unsetenv): Likewise. (__clearenv): Likewise. (__ptsname_r): Likewise. (__posix_openpt): Likewise. (__add_to_environ): Likewise. (__ecvt_r): Likewise. (__fcvt_r): Likewise. (__qecvt_r): Likewise. (__qfcvt_r): Likewise. (__realpath): Add libc_hidden_proto. * stdlib/canonicalize.c (__realpath): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=f203fb8da105d7cfe249fb1aac0b1af80007f3ef commit f203fb8da105d7cfe249fb1aac0b1af80007f3ef Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 16:29:20 2017 -0700 Mark internal utmp functions with attribute_hidden [BZ #18822] Mark internal utmp functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/utmp.h (__updwtmp): Add attribute_hidden. (__utmpname): Likewise. (__getutent): Likewise. (__setutent): Likewise. (__endutent): Likewise. (__getutid): Likewise. (__getutline): Likewise. (__pututline): Likewise. (__getutent_r): Likewise. (__getutid_r): Likewise. (__getutline_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=db9194ccc95bf6f7c6d6d9dd0109e339a081a968 commit db9194ccc95bf6f7c6d6d9dd0109e339a081a968 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 16:23:58 2017 -0700 Mark internal dirent functions with attribute_hidden [BZ #18822] Mark internal dirent functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. __readdir64 is hidden with libc_hidden_proto and libc_hidden_def since the exported readdir64 is an alias of __readdir64. [BZ #18822] * include/dirent.h (__opendir): Always add attribute_hidden. (__fdopendir): Likewise. (__closedir): Likewise. (__readdir): Likewise. (__readdir64): Add libc_hidden_proto. * sysdeps/mach/hurd/readdir64.c (__readdir64): Add libc_hidden_def. * sysdeps/unix/sysv/linux/i386/readdir64.c (__readdir64): Likewise. * sysdeps/unix/sysv/linux/readdir64.c (__readdir64): Likewise. * sysdeps/unix/sysv/linux/wordsize-64/readdir.c (__GI___readdir64): New alias. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=48228c06133f5edd54fd1edbdcf44c576b467e94 commit 48228c06133f5edd54fd1edbdcf44c576b467e94 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:49:08 2017 -0700 Mark internal getXXXbyYYY functions with attribute_hidden [BZ #18822] Mark internal getXXXbyYYY functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/aliases.h (__getaliasbyname_r): Add attribute_hidden. * include/netdb.h (__gethostbyaddr_r): Likewise. (__gethostbyname_r): Likewise. (__gethostbyname2_r): Likewise. (__getnetbyaddr_r): Likewise. (__getnetbyname_r): Likewise. (__getservbyname_r): Likewise. (__getservbyport_r): Likewise. (__getprotobyname_r): Likewise. (__getprotobynumber_r): Likewise. (__getnetgrent_r): Likewise. * include/rpc/netdb.h (__getrpcbyname_r): Likewise. (__getrpcbynumber_r): Likewise. * nss/getXXbyYY.c (INTERNAL (REENTRANT_NAME)): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=34897a41d478016df2fe4e2e24b52392288c518f commit 34897a41d478016df2fe4e2e24b52392288c518f Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:45:30 2017 -0700 Mark internal stdio functions with attribute_hidden [BZ #18822] Mark internal stdio functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/stdio.h (__fcloseall): Add attribute_hidden. (__getline): Likewise. (__path_search): Likewise. (__gen_tempname): Likewise. (__libc_message): Likewise. (__flockfile): Likewise. (__funlockfile): Likewise. (__fxprintf): Likewise. (__fxprintf_nocancel): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=68e6d92f12c987f68d805d885494df247c0c4c25 commit 68e6d92f12c987f68d805d885494df247c0c4c25 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:44:27 2017 -0700 Mark internal gshadow functions with attribute_hidden [BZ #18822] Mark internal gshadow functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/gshadow.h (__fgetsgent_r): Add attribute_hidden. (__sgetsgent_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=617f57473b863b9f5396ba59036678db38066dda commit 617f57473b863b9f5396ba59036678db38066dda Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:37:42 2017 -0700 Mark internal statfs functions with attribute_hidden [BZ #18822] Mark internal statfs functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/statfs.h (__fstatfs): Add attribute_hidden. (__statfs64): Likewise. (__fstatfs64): Likewise. * include/sys/statvfs.h (__statvfs64): Likewise. (__fstatvfs64): Likewise. * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max): Likewise. (__statfs_filesize_max): Likewise. (__statfs_symlinks): Likewise. (__statfs_chown_restricted): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1a69476dcefb5055adac66ac7446c8e301c8f476 commit 1a69476dcefb5055adac66ac7446c8e301c8f476 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 17:30:29 2017 -0700 Mark internal time functions with attribute_hidden [BZ #18822] Mark internal time functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/time.h (__tzstring): Add attribute_hidden. (__tzfile_read): Likewise. (__tzfile_compute): Likewise. (__tzfile_default): Likewise. (__tzset_parse_tz): Likewise. (__offtime): Likewise. (__asctime_r): Likewise. (__tzset): Likewise. (__tz_convert): Likewise. (__getdate_r): Likewise. (__getclktck): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=87d73d811e8d7b05440824c5a92cc2472e9d08d6 commit 87d73d811e8d7b05440824c5a92cc2472e9d08d6 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 17:16:26 2017 -0700 Mark internal nscd functions with attribute_hidden [BZ #18822] Mark internal nscd functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * nscd/nscd-client.h (__nscd_get_map_ref): Add attribute_hidden. (__nscd_unmap): Likewise. (__nscd_cache_search): Likewise. (__nscd_get_nl_timestamp): Likewise. (__nscd_getpwnam_r): Likewise. (__nscd_getpwuid_r): Likewise. (__nscd_getgrnam_r): Likewise. (__nscd_getgrgid_r): Likewise. (__nscd_gethostbyname_r): Likewise. (__nscd_gethostbyname2_r): Likewise. (__nscd_gethostbyaddr_r): Likewise. (__nscd_getai): Likewise. (__nscd_getgrouplist): Likewise. (__nscd_getservbyname_r): Likewise. (__nscd_getservbyport_r): Likewise. (__nscd_innetgr): Likewise. (__nscd_setnetgrent): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=6be1f3ad56f697dfb2f538978ad61d993d67e128 commit 6be1f3ad56f697dfb2f538978ad61d993d67e128 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 17:04:20 2017 -0700 Mark internal gmp functions with attribute_hidden [BZ #18822] Mark internal gmp functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/gmp.h: Declare internal functions only if _ISOMAC is undefined. (__mpn_extract_double): Add attribute_hidden. (__mpn_extract_long_double): Likewise. (__mpn_extract_float128): Likewise. (__mpn_construct_float): Likewise. (__mpn_construct_double): Likewise. (__mpn_construct_long_double): Likewise. (__mpn_construct_float128): Likewise. (mpn_add_1): Likewise. (mpn_addmul_1): Likewise. (mpn_add_n): Likewise. (mpn_cmp): Likewise. (mpn_divrem): Likewise. (mpn_lshift): Likewise. (mpn_mul): Likewise. (mpn_mul_1): Likewise. (mpn_rshift): Likewise. (mpn_sub_1): Likewise. (mpn_submul_1): Likewise. (mpn_sub_n): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1b550732060e5859afc95e5c1e8a0be3130f165b commit 1b550732060e5859afc95e5c1e8a0be3130f165b Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 13:24:43 2017 -0700 Mark internal wchar functions with attribute_hidden [BZ #18822] Mark internal wchar functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/wchar.h (__wcsnlen): Add attribute_hidden. (__wcscat): Likewise. (__btowc): Likewise. (__wcrtomb): Likewise. (__mbsrtowcs): Likewise. (__wcsrtombs): Likewise. (__mbsnrtowcs): Likewise. (__wcsnrtombs): Likewise. (__wcsncpy): Likewise. (__wcpncpy): Likewise. (__wmemcpy): Likewise. (__wmempcpy): Likewise. (__wmemmove): Likewise. (__wcschrnul): Likewise. (__vfwscanf): Likewise. (__vswprintf): Likewise. (__fwprintf): Likewise. (__vfwprintf): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d200fab7512cc4de4f551e4824cc6ea595f5d388 commit d200fab7512cc4de4f551e4824cc6ea595f5d388 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 09:52:52 2017 -0700 Mark __dso_handle as hidden [BZ #18822] Since __dso_handle is always defined by either crtbegin.o from GCC or dso_handle.c, it should be marked as hidden and be passed directly. [BZ #18822] * dlfcn/modatexit.c (foo): Remove __dso_handle check. * dlfcn/modcxaatexit.c (__dso_handle): Remove declaration. * dlfcn/tstatexit.c (__dso_handle): Removed. (main): Don't check __dso_handle. * dlfcn/tstcxaatexit.c (__dso_handle): Removed. (main): Don't check __dso_handle. * include/stdlib.h (__dso_handle): New. * malloc/mtrace.c (__dso_handle): Remove declaration. (mtrace): Pass __dso_handle directly. * nptl/pthread_atfork.c (__dso_handle): Remove declaration. (__pthread_atfork): Pass __dso_handle directly. * nptl/tst-atfork2mod.c (__dso_handle): Removed. * posix/wordexp-test.c (__dso_handle): Remove declaration. (__app_register_atfork): Pass __dso_handle directly. * stdlib/at_quick_exit.c (__dso_handle): Remove declaration. (at_quick_exit): Pass __dso_handle directly. * stdlib/atexit.c (__dso_handle): Remove declaration. (atexit): Pass __dso_handle directly. * stdlib/tst-tls-atexit-lib.c (__dso_handle): Removed. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d7beee5515a32e9fa8e9d56297e8a9db7bef8120 commit d7beee5515a32e9fa8e9d56297e8a9db7bef8120 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 09:00:24 2017 -0700 Mark internal grp/pwd/shadow functions with attribute_hidden [BZ #18822] Mark internal grp/pwd/shadow functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/grp.h (__fgetgrent_r): Add attribute_hidden. (__getgrgid_r): Likewise. (__getgrnam_r): Likewise. * include/pwd.h (__getpwuid_r): Likewise. (__getpwnam_r): Likewise. (__fgetpwent_r): Likewise. * include/shadow.h (__getspnam_r): Likewise. (__sgetspent_r): Likewise. (__fgetspent_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=9af475099e73958cc16c6077c601a8e34f6d77cb commit 9af475099e73958cc16c6077c601a8e34f6d77cb Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 05:43:12 2017 -0700 Mark internal unistd functions with attribute_hidden [BZ #18822] Mark internal unistd functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/unistd.h (__access): Add attribute_hidden. (__lseek64): Likewise. (__libc_pread64): Likewise. (__pipe2): Likewise. (__sleep): Likewise. (__chdir): Likewise. (__fchdir): Likewise. (__getcwd): Likewise. (__rmdir): Likewise. (__execvpe): Likewise. (__execve): Likewise. (__setsid): Likewise. (__getuid): Likewise. (__geteuid): Likewise. (__getgid): Likewise. (__getegid): Likewise. (__getgroups): Likewise. (__group_member): Likewise. (__ttyname_r): Likewise. (__isatty): Likewise. (__readlink): Likewise. (__unlink): Likewise. (__gethostname): Likewise. (__profil): Likewise. (__getdtablesize): Likewise. (__brk): Likewise. (__ftruncate): Likewise. (__ftruncate64): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=bd2cb364ff277a6add2957801c628d6aa8ad2753 commit bd2cb364ff277a6add2957801c628d6aa8ad2753 Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 13:17:12 2017 -0700 Mark internal argp functions with attribute_hidden [BZ #18822] Mark internal argp functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * argp/argp-fmtstream.c: Include <argp-fmtstream.h>. * argp/argp-fs-xinl.c: Likewise. * argp/argp-help.c: Include <argp.h> and <argp-fmtstream.h>. * argp/argp-parse.c: Include <argp.h>. * argp/argp-xinl.c: Likewise. * include/argp-fmtstream.h: New file. * include/argp.h (__argp_error): Add attribute_hidden. (__argp_failure): Likewise. (__argp_input): Likewise. (__argp_state_help): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=9d3aaa1d08866efa08b74fb6fa960bd69b7a7baf commit 9d3aaa1d08866efa08b74fb6fa960bd69b7a7baf Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 12:48:28 2017 -0700 Mark ____wcsto*_l_internal functions with attribute_hidden [BZ #18822] Mark ____wcsto*_l_internal functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/wchar.h (____wcstof_l_internal): New prototype. (____wcstod_l_internal): Likewise. (____wcstold_l_internal): Likewise. (____wcstol_l_internal): Likewise. (____wcstoul_l_internal): Likewise. (____wcstoll_l_internal): Likewise. (____wcstoull_l_internal): Likewise. (____wcstof128_l_internal): Likewise. * sysdeps/ieee754/float128/wcstof128.c (____wcstof128_l_internal): Removed. * sysdeps/ieee754/float128/wcstof128_l.c (____wcstof128_l_internal): Likewise. * wcsmbs/wcstod.c (____wcstod_l_internal): Likewise. * wcsmbs/wcstod_l.c (____wcstod_l_internal): Likewise. * wcsmbs/wcstof.c (____wcstof_l_internal): Likewise. * wcsmbs/wcstof_l.c (____wcstof_l_internal): Likewise. * wcsmbs/wcstol_l.c (____wcstol_l_internal): Likewise. * wcsmbs/wcstold.c (____wcstold_l_internal): Likewise. * wcsmbs/wcstold_l.c (____wcstold_l_internal): Likewise. * wcsmbs/wcstoll_l.c (____wcstoll_l_internal): Likewise. * wcsmbs/wcstoul_l.c (____wcstoul_l_internal): Likewise. * wcsmbs/wcstoull_l.c (____wcstoull_l_internal): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=96ed4155fa543f125a4f8c5a0167da8546b0261e commit 96ed4155fa543f125a4f8c5a0167da8546b0261e Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 12:35:02 2017 -0700 Mark __internal_statvfs[64] with attribute_hidden [BZ #18822] Mark __internal_statvfs[64] with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/fstatvfs.c: Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs): Removed. * sysdeps/unix/sysv/linux/fstatvfs64.c Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs64): Removed. * sysdeps/unix/sysv/linux/internal_statvfs.c: Include "internal_statvfs.h" instead of <sys/statvfs.h>. * sysdeps/unix/sysv/linux/internal_statvfs.h: New file. * sysdeps/unix/sysv/linux/statvfs.c Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs): Removed. * sysdeps/unix/sysv/linux/statvfs64.c Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs64): Removed. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b2a0f09d70e210ab23aaf765cd35e1019487557f commit b2a0f09d70e210ab23aaf765cd35e1019487557f Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 12:26:17 2017 -0700 Mark 3 *_internal functions with attribute_hidden [BZ #18822] Mark __ptsname_internal, __mktime_internal and __fopen_internal with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/stdlib.h (__ptsname_internal): Add attribute_hidden. * include/time.h (__mktime_internal): Likewise. * libio/iolibio.h (__fopen_internal): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4dbf3d9e7f42d51da437b14b174674349e4bd77c commit 4dbf3d9e7f42d51da437b14b174674349e4bd77c Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 13 07:00:22 2017 -0700 Mark internal functions with attribute_hidden [BZ #18822] Mark internal functions with attribute_hidden to allow direct access to internal functions within libc.so and libc.a without using GOT nor PLT. Size comparison of libc.so: On x86-64: text data bss dec hex Before: 1728577 20584 17088 1766249 1af369 After : 1728593 20584 17088 1766265 1af379 The only change is __gconv_release_shlib in iconv/gconv_dl.c is inlined since it is hidden, which increases the code size of gconv_dl.os by 18 bytes. On i686: text data bss dec hex Before: 1869039 11444 11112 1891595 1cdd0b After : 1868635 11444 11112 1891191 1cdb77 The code size is decreased by avoiding GOT/PLT for hidden functions. [BZ #18822] * iconv/gconv_int.h (__gconv_open): Add attribute_hidden. (__gconv_close): Likewise. (__gconv): Likewise. (__gconv_find_transform): Likewise. (__gconv_lookup_cache): Likewise. (__gconv_compare_alias_cache): Likewise. (__gconv_load_cache): Likewise. (__gconv_get_path): Likewise. (__gconv_close_transform): Likewise. (__gconv_release_cache): Likewise. (__gconv_find_shlib): Likewise. (__gconv_release_shlib): Likewise. (__gconv_get_builtin_trans): Likewise. (__gconv_compare_alias): Likewise. * include/dlfcn.h (_dlerror_run): Likewise. * include/stdio.h (__fortify_fail_abort): Likewise. * include/time.h (__tz_compute): Likewise. (__strptime_internal): Likewise. * intl/gettextP.h (_nl_find_domain): Likewise. (_nl_load_domain): Likewise. (_nl_find_msg): Likewise. * intl/plural-exp.h (FREE_EXPRESSION): Likewise. (EXTRACT_PLURAL_EXPRESSION): Likewise. * locale/coll-lookup.h (__collidx_table_lookup): Likewise. * resolv/gai_misc.h (__gai_enqueue_request): Likewise. (__gai_find_request): Likewise. (__gai_remove_request): Likewise. (__gai_notify): Likewise. (__gai_notify_only): Likewise. * sysdeps/generic/aio_misc.h (__aio_sigqueue): Likewise. * sysdeps/generic/ldsodefs.h (_dl_symbol_value): Likewise. (_dl_fini): Likewise. (_dl_non_dynamic_init): Likewise. (_dl_aux_init): Likewise. * sysdeps/i386/machine-gmon.h (mcount_internal): Likewise. * sysdeps/unix/sysv/linux/i386/olddirent.h (__old_getdents64): Likewise. * wcsmbs/wcsmbsload.h (__wcsmbs_load_conv): Likewise. (__wcsmbs_clone_conv): Likewise. (__wcsmbs_named_conv): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a7e6555496d95a9c3abe6bb0f3ec9919873b365e commit a7e6555496d95a9c3abe6bb0f3ec9919873b365e Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:11:38 2017 -0700 string/stratcliff.c: Replace int with size_t [BZ #21982] Fix GCC 7 errors when string/stratcliff.c is compiled with -O3: stratcliff.c: In function ‘do_test’: cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] [BZ #21982] * string/stratcliff.c (do_test): Declare size, nchars, inner, middle and outer with size_t instead of int. Repleace %d and %Zd with %zu in printf. -----------------------------------------------------------------------
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU C Library master sources". The branch, hjl/pr21982/master has been created at 5fabb1cdd8bfddd83523c6a78f1af3c4947d4ff7 (commit) - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5fabb1cdd8bfddd83523c6a78f1af3c4947d4ff7 commit 5fabb1cdd8bfddd83523c6a78f1af3c4947d4ff7 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:11:38 2017 -0700 string/stratcliff.c: Replace int with size_t [BZ #21982] Fix GCC 7 errors when string/stratcliff.c is compiled with -O3: stratcliff.c: In function ‘do_test’: cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] [BZ #21982] * string/stratcliff.c (do_test): Declare size, nchars, inner, middle and outer with size_t instead of int. Repleace %d and %Zd with %zu in printf. -----------------------------------------------------------------------
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU C Library master sources". The branch, hjl/pr21982/master has been deleted was 5fabb1cdd8bfddd83523c6a78f1af3c4947d4ff7 - Log ----------------------------------------------------------------- 5fabb1cdd8bfddd83523c6a78f1af3c4947d4ff7 string/stratcliff.c: Replace int with size_t [BZ #21982] -----------------------------------------------------------------------
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU C Library master sources". The branch, hjl/pr21982/master has been created at 350277b80006b465158cef775f33098791c68f83 (commit) - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=350277b80006b465158cef775f33098791c68f83 commit 350277b80006b465158cef775f33098791c68f83 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:11:38 2017 -0700 string/stratcliff.c: Replace int with size_t [BZ #21982] Fix GCC 7 errors when string/stratcliff.c is compiled with -O3: stratcliff.c: In function ‘do_test’: cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] [BZ #21982] * string/stratcliff.c (do_test): Declare size, nchars, inner, middle and outer with size_t instead of int. Repleace %d and %Zd with %zu in printf. Update "MAX (0, nchars - 128)" and "MAX (outer, nchars - 64)" to support unsigned outer and nchars. -----------------------------------------------------------------------
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU C Library master sources". The branch, hjl/pr21982/master has been deleted was 350277b80006b465158cef775f33098791c68f83 - Log ----------------------------------------------------------------- 350277b80006b465158cef775f33098791c68f83 string/stratcliff.c: Replace int with size_t [BZ #21982] -----------------------------------------------------------------------
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU C Library master sources". The branch, hjl/pr21982/master has been created at f951e4aa927efdf3112be92006b11d31cb75ef2b (commit) - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=f951e4aa927efdf3112be92006b11d31cb75ef2b commit f951e4aa927efdf3112be92006b11d31cb75ef2b Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:11:38 2017 -0700 string/stratcliff.c: Replace int with size_t [BZ #21982] Fix GCC 7 errors when string/stratcliff.c is compiled with -O3: stratcliff.c: In function ‘do_test’: cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] [BZ #21982] * string/stratcliff.c (do_test): Declare size, nchars, inner, middle and outer with size_t instead of int. Repleace %d and %Zd with %zu in printf. Update "MAX (0, nchars - 128)" and "MAX (outer, nchars - 64)" to support unsigned outer and nchars. Also exit loop when outer == 0. -----------------------------------------------------------------------
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU C Library master sources". The branch, hjl/pr18822 has been created at 450faea0b7d7dff1d755cd0275fe41c5d7bb7913 (commit) - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=450faea0b7d7dff1d755cd0275fe41c5d7bb7913 commit 450faea0b7d7dff1d755cd0275fe41c5d7bb7913 Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 05:51:51 2017 -0700 Hide internal __hash_string function [BZ #18822] Hide internal __hash_string function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * intl/hash-string.h (__hash_string): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d1fc2e2e4ea620a4177701502a4503a36b0712ed commit d1fc2e2e4ea620a4177701502a4503a36b0712ed Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 05:50:09 2017 -0700 Hide internal __hasmntopt function [BZ #18822] Hide internal __hasmntopt function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/mntent.h (__hasmntopt): Add libc_hidden_proto. * misc/mntent_r.c (__hasmntopt): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=2e59eacad01be6a9d9e0410503a11dfa79510d43 commit 2e59eacad01be6a9d9e0410503a11dfa79510d43 Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 05:43:49 2017 -0700 [PATCH] Hide internal __ifreq function [BZ #18822] Hide internal __ifreq function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/ifreq.h: New file. * sysdeps/generic/ifreq.h (__if_nextreq): Removed. (__ifreq): Likewise. * sysdeps/mach/hurd/ifreq.h (__if_nextreq): Removed. (__ifreq): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b2911cfc1699e907cb60733a56a454826438814f commit b2911cfc1699e907cb60733a56a454826438814f Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 04:50:04 2017 -0700 Hide internal idna functions [BZ #18822] Hide internal idna functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/idna.h: New file. * inet/getnameinfo.c: Include <idna.h> instead of <libidn/idna.h>. (__idna_to_unicode_lzlz): Removed. * sysdeps/posix/getaddrinfo.c: Include <idna.h> instead of <libidn/idna.h>. (__idna_to_ascii_lz): Removed. (__idna_to_unicode_lzlz): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=51609d4f64ea271814b91de361f387e721d784fe commit 51609d4f64ea271814b91de361f387e721d784fe Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 14:37:11 2017 -0700 Hide internal printf functions [BZ #18822/21986] Hide internal printf functions to allow direct access within libc.so and libc.a without using GOT nor PLT. Since __guess_grouping has been changed to take 2 arguments by commit a1d84548c8aa7023cd039c85f81b831eef6d4a4c Author: Ulrich Drepper <drepper@redhat.com> Date: Fri Feb 11 18:50:36 2000 +0000 the third argument passed to __guess_grouping is removed. [BZ #18822] [BZ #21986] * include/printf.h (__printf_fphex): Add attribute_hidden. (__guess_grouping): New prototype. * stdio-common/printf_fp.c (__guess_grouping): Removed. * stdio-common/reg-printf.c (__register_printf_specifier): Add libc_hidden_proto and libc_hidden_def. * stdlib/strfmon_l.c (__guess_grouping): Removed. (__vstrfmon_l): Remove the third argument passed to __guess_grouping. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=bee48444df3a39b88e67f2faebc86579d2c17dd6 commit bee48444df3a39b88e67f2faebc86579d2c17dd6 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 10:39:50 2017 -0700 Hide internal __gettextparse function [BZ #18822] Hide internal __gettextparse function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/plural-exp.h: New file. * intl/plural-exp.c: Include <plural-exp.h> instead of "plural-exp.h". https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=64715e1de48356a77ff90673df9879a21fdd8c2f commit 64715e1de48356a77ff90673df9879a21fdd8c2f Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 10:20:45 2017 -0700 [PATCH] Hide internal __get_sol function [BZ #18822] Hide internal __get_sol function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/getsourcefilter.c: Include "getsourcefilter.h". * sysdeps/unix/sysv/linux/getsourcefilter.h: New file. * sysdeps/unix/sysv/linux/setsourcefilter.c: Include "getsourcefilter.h". (__get_sol): Removed. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=435fa00697b10f8935b23512de6dacf471ff18e8 commit 435fa00697b10f8935b23512de6dacf471ff18e8 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 10:11:21 2017 -0700 Move hidden_proto (__dl_iterate_phdr) to include/link.h [BZ #18822] [BZ #18822] * elf/dl-iteratephdr.c (hidden_proto (__dl_iterate_phdr)): Moved to ... * include/link.h (hidden_proto (__dl_iterate_phdr)): Here. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=de6b1283ce67432050346a51439cfa21c5d1d21c commit de6b1283ce67432050346a51439cfa21c5d1d21c Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 10:07:55 2017 -0700 Hide internal __bsd_getpt function [BZ #18822] Hide internal __bsd_getpt function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/getpt.c (__bsd_getpt): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=148e7646d3a3caa45d18572aa24c95a2bbd32467 commit 148e7646d3a3caa45d18572aa24c95a2bbd32467 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 09:20:06 2017 -0700 Hide internal __fopen_maybe_mmap function [BZ #18822] Hide internal __fopen_maybe_mmap function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * libio/iolibio.h (__fopen_maybe_mmap): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=079e2f4bddb5b968218bdcd7c6f49a3e4c5dc759 commit 079e2f4bddb5b968218bdcd7c6f49a3e4c5dc759 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 09:18:36 2017 -0700 Hide internal __tdestroy function [BZ #18822] Hide internal __tdestroy function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/search.h (__tdestroy): Add libc_hidden_proto. * misc/tsearch.c (__tdestroy): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=bcf6b906d05bc975d346c336e4d971bd21b9546c commit bcf6b906d05bc975d346c336e4d971bd21b9546c Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 09:17:07 2017 -0700 Hide internal __assert_fail_base function [BZ #18822] Hide internal __assert_fail_base function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/assert.h (__assert_fail_base): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=2d6f239ca0eec47f7ea965b4ef01cb062f7c7a65 commit 2d6f239ca0eec47f7ea965b4ef01cb062f7c7a65 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 09:15:33 2017 -0700 Hide internal __sysinfo function [BZ #18822] Hide internal __sysinfo function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/include/sys/sysinfo.h (__sysinfo): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e8861ad2c888af2c2141f653a511995b98f5b993 commit e8861ad2c888af2c2141f653a511995b98f5b993 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 08:17:57 2017 -0700 Hide internal signal functions [BZ #18822] Hide internal signal functions to allow direct access within libc.so and libc.a without using GOT nor PLT. __GI___kill and __GI___sigaltstack are defined when syscalls.list is used to generate them. Otherwise libc_hidden_def is needed explicitly. [BZ #18822] * include/signal.h (__kill): Add libc_hidden_proto. (__sigblock): Likewise. (__sigprocmask): Likewise. (__sigaltstack): Likewise. * signal/kill.c (__kill): Add libc_hidden_def. * signal/sigblock.c (__sigblock): Likewise. * signal/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/mach/hurd/kill.c (__kill): Likewise. * sysdeps/mach/hurd/sigaltstack.c (__sigaltstack): Likewise. * sysdeps/mach/hurd/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/posix/sigblock.c (__sigblock): Likewise. * sysdeps/unix/sysv/linux/alpha/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/ia64/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise. * /sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/x86_64/sigprocmask.c (__sigprocmask): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c4bc491b105f87a06bd409ddc9285fb7ae8f88a1 commit c4bc491b105f87a06bd409ddc9285fb7ae8f88a1 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 08:07:16 2017 -0700 Hide internal __strsep function [BZ #18822] Hide internal __strsep function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/string.h (__strsep): Add libc_hidden_proto. * string/strsep.c (__strsep): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=379b4687a478b6f8b0db93691ecb171f7c46fb03 commit 379b4687a478b6f8b0db93691ecb171f7c46fb03 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 06:24:41 2017 -0700 Hide __posix_spawn_file_actions_realloc/__spawni [BZ #18822] Hide internal __posix_spawn_file_actions_realloc and /__spawni functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * posix/spawn_int.h (__posix_spawn_file_actions_realloc): Add attribute_hidden. (__spawni): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4cfbae33f5d8acaf4f968cc0b39450568a78ffbe commit 4cfbae33f5d8acaf4f968cc0b39450568a78ffbe Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 06:10:22 2017 -0700 Hide internal __mremap function [BZ #18822] Hide internal __mremap function to allow direct access within libc.so and libc.a without using GOT nor PLT. __GI___mremap is defined when sysdeps/unix/syscalls.list is used to generate mremap. Otherwise libc_hidden_def is needed explicitly. [BZ #18822] * include/sys/mman.h (__mremap): Add libc_hidden_proto. * sysdeps/unix/sysv/linux/m68k/mremap.S (__mremap): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e4d95f6cefe9e355ccea7581cf639f5447a871f2 commit e4d95f6cefe9e355ccea7581cf639f5447a871f2 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 06:07:11 2017 -0700 Hide internal __malloc_check_init function [BZ #18822] Hide internal __malloc_check_init function to allow direct access within libc.so and libc.a without using GOT nor PLT. * include/malloc.h (__malloc_check_init): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ccc38c808e50f2e25051daa1564387ad5d91d333 commit ccc38c808e50f2e25051daa1564387ad5d91d333 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:53:06 2017 -0700 Hide internal __ioctl function [BZ #18822] Hide internal __ioctl function to allow direct access within libc.so and libc.a without using GOT nor PLT. __GI___ioctl is defined when sysdeps/unix/syscalls.list is used to generate ioctl. Otherwise libc_hidden_def is needed explicitly. [BZ #18822] * include/sys/ioctl.h (__ioctl): Add libc_hidden_proto. * misc/ioctl.c (__ioctl): Add libc_hidden_def. * sysdeps/mach/hurd/ioctl.c (__ioctl): Likewise. * sysdeps/unix/sysv/linux/aarch64/ioctl.S (__ioctl): Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S (__ioctl): Likewise. * sysdeps/unix/sysv/linux/powerpc/ioctl.c (__ioctl): Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/ioctl.S (__ioctl): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a00b02fe7a5c7ecf118bd72b2c69cf0c38bf8caa commit a00b02fe7a5c7ecf118bd72b2c69cf0c38bf8caa Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:40:26 2017 -0700 Mark internal intl functions with attribute_hidden [BZ #18822] Mark internal intl functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * intl/gettextP.h (__dcngettext): Add attribute_hidden. (__dcigettext): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=fc57e341a535440f204f6faa07acdf06614a32b6 commit fc57e341a535440f204f6faa07acdf06614a32b6 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:25:56 2017 -0700 Hide internal sysinfo functions [BZ #18822] Hide internal sysinfo functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/sysinfo.h (__get_nprocs_conf): Add libc_hidden_proto. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. (__get_child_max): Add attribute_hidden. * misc/getsysstats.c (__get_nprocs_conf): Add libc_hidden_def. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. * sysdeps/mach/getsysstats.c (__get_nprocs_conf): Add libc_hidden_def. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Add libc_hidden_def. (__get_nprocs_conf): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=658d7fcae2ed89e468a460c931aff68310fe4095 commit 658d7fcae2ed89e468a460c931aff68310fe4095 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:13:02 2017 -0700 Hide __chmod and __mkdir [BZ #18822] Hide internal __chmod and __mkdir functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/stat.h (__chmod): Add libc_hidden_proto. (__mkdir): Likewise. * io/chmod.c (__chmod): Add libc_hidden_def. * io/mkdir.c (__mkdir): Likewise. * sysdeps/mach/hurd/chmod.c (__chmod): Likewise. * sysdeps/mach/hurd/mkdir.c (__mkdir): Likewise. * sysdeps/unix/sysv/linux/generic/chmod.c (__chmod): Likewise. * sysdeps/unix/sysv/linux/generic/mkdir.c (__mkdir): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1380aa68be32b4b6563ec9fdb6329d8becf9c5bd commit 1380aa68be32b4b6563ec9fdb6329d8becf9c5bd Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:38:46 2017 -0700 Mark internal netlink functions with attribute_hidden [BZ #18822] Mark internal netlink functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/netlinkaccess.h (__netlink_open): Add attribute_hidden. (__netlink_close): Likewise. (__netlink_free_handle): Likewise. (__netlink_request): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a91243f2614cb209e4d57a7dbf53a67e84183b78 commit a91243f2614cb209e4d57a7dbf53a67e84183b78 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:22:10 2017 -0700 Mark internal rpc functions with attribute_hidden [BZ #18822] Mark internal rpc functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/rpc/rpc.h (__rpc_thread_variables): Add attribute_hidden. (__rpc_thread_svc_cleanup): Likewise. (__rpc_thread_clnt_cleanup): Likewise. (__rpc_thread_key_cleanup): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=8897d1a1873877a431435787ff55cb250b7231d6 commit 8897d1a1873877a431435787ff55cb250b7231d6 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 08:05:25 2017 -0700 Hide __readv and __writev [BZ #18822] Hide internal __readv and __writev functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/uio.h (__readv): Add libc_hidden_proto. (__writev): Likewise. * misc/readv.c (__readv): Add libc_hidden_def. * misc/writev.c (__writev): Likewise. * sysdeps/posix/readv.c (__readv): Likewise. * sysdeps/posix/writev.c (__writev): Likewise. * sysdeps/unix/sysv/linux/readv.c: Include <sys/uio.h>. (__readv): Likewise. * sysdeps/unix/sysv/linux/writev.c: Include <sys/uio.h>. (__writev): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d44a6582c6ba72326d018b1e7f48f0645e5f5a1d commit d44a6582c6ba72326d018b1e7f48f0645e5f5a1d Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 07:28:23 2017 -0700 Hide internal regex functions [BZ #18822] Hide internal regex functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/regex.h (__re_compile_fastmap): Add attribute_hidden. (__regcomp): Add libc_hidden_proto. (__regexec): Likewise. (__regfree): Likewise. * posix/regcomp.c (__regcomp): Add libc_hidden_def. (__regfree): Likewise. * posix/regexec.c (__regexec): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=159a78acd7b817616f92dedc7e693c0d7faa97ac commit 159a78acd7b817616f92dedc7e693c0d7faa97ac Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 16:47:56 2017 -0700 Mark internal stdlib functions with attribute_hidden [BZ #18822] Mark internal stdlib functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. __realpath is hidden with libc_hidden_proto and libc_hidden_def since the exported realpath is an alias of __realpath. [BZ #18822] * include/stdlib.h (__random): Add attribute_hidden. (__random_r): Likewise. (__srandom_r): Likewise. (__initstate_r): Likewise. (__setstate_r): Likewise. (__erand48_r): Likewise. (__nrand48_r): Likewise. (__jrand48_r): Likewise. (__srand48_r): Likewise. (__seed48_r): Likewise. (__lcong48_r): Likewise. (__drand48_iterate): Likewise. (__setenv): Likewise. (__unsetenv): Likewise. (__clearenv): Likewise. (__ptsname_r): Likewise. (__posix_openpt): Likewise. (__add_to_environ): Likewise. (__ecvt_r): Likewise. (__fcvt_r): Likewise. (__qecvt_r): Likewise. (__qfcvt_r): Likewise. (__realpath): Add libc_hidden_proto. * stdlib/canonicalize.c (__realpath): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d694bcdf270a78dd9fb9035ef66800dddb68db4b commit d694bcdf270a78dd9fb9035ef66800dddb68db4b Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 16:29:20 2017 -0700 Mark internal utmp functions with attribute_hidden [BZ #18822] Mark internal utmp functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/utmp.h (__updwtmp): Add attribute_hidden. (__utmpname): Likewise. (__getutent): Likewise. (__setutent): Likewise. (__endutent): Likewise. (__getutid): Likewise. (__getutline): Likewise. (__pututline): Likewise. (__getutent_r): Likewise. (__getutid_r): Likewise. (__getutline_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=51c09b509f86429c5ab66249691530fc88bd42b2 commit 51c09b509f86429c5ab66249691530fc88bd42b2 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 16:23:58 2017 -0700 Mark internal dirent functions with attribute_hidden [BZ #18822] Mark internal dirent functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. __readdir64 is hidden with libc_hidden_proto and libc_hidden_def since the exported readdir64 is an alias of __readdir64. [BZ #18822] * include/dirent.h (__opendir): Always add attribute_hidden. (__fdopendir): Likewise. (__closedir): Likewise. (__readdir): Likewise. (__readdir64): Add libc_hidden_proto. * sysdeps/mach/hurd/readdir64.c (__readdir64): Add libc_hidden_def. * sysdeps/unix/sysv/linux/i386/readdir64.c (__readdir64): Likewise. * sysdeps/unix/sysv/linux/readdir64.c (__readdir64): Likewise. * sysdeps/unix/sysv/linux/wordsize-64/readdir.c (__GI___readdir64): New alias. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c0395db2ee6fcf71c4d1e236403df04e51cc6134 commit c0395db2ee6fcf71c4d1e236403df04e51cc6134 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:49:08 2017 -0700 Mark internal getXXXbyYYY functions with attribute_hidden [BZ #18822] Mark internal getXXXbyYYY functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/aliases.h (__getaliasbyname_r): Add attribute_hidden. * include/netdb.h (__gethostbyaddr_r): Likewise. (__gethostbyname_r): Likewise. (__gethostbyname2_r): Likewise. (__getnetbyaddr_r): Likewise. (__getnetbyname_r): Likewise. (__getservbyname_r): Likewise. (__getservbyport_r): Likewise. (__getprotobyname_r): Likewise. (__getprotobynumber_r): Likewise. (__getnetgrent_r): Likewise. * include/rpc/netdb.h (__getrpcbyname_r): Likewise. (__getrpcbynumber_r): Likewise. * nss/getXXbyYY.c (INTERNAL (REENTRANT_NAME)): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5ddbf9b3ade25be6b89873dc13690ebd08f1186f commit 5ddbf9b3ade25be6b89873dc13690ebd08f1186f Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:45:30 2017 -0700 Mark internal stdio functions with attribute_hidden [BZ #18822] Mark internal stdio functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/stdio.h (__fcloseall): Add attribute_hidden. (__getline): Likewise. (__path_search): Likewise. (__gen_tempname): Likewise. (__libc_message): Likewise. (__flockfile): Likewise. (__funlockfile): Likewise. (__fxprintf): Likewise. (__fxprintf_nocancel): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=454baea4d2422fbdc1b53320d7e7dfd06ab5fcc4 commit 454baea4d2422fbdc1b53320d7e7dfd06ab5fcc4 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:44:27 2017 -0700 Mark internal gshadow functions with attribute_hidden [BZ #18822] Mark internal gshadow functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/gshadow.h (__fgetsgent_r): Add attribute_hidden. (__sgetsgent_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=984ed8755170d3e9a257903ba63be3f21a304e6d commit 984ed8755170d3e9a257903ba63be3f21a304e6d Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:37:42 2017 -0700 Mark internal statfs functions with attribute_hidden [BZ #18822] Mark internal statfs functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/statfs.h (__fstatfs): Add attribute_hidden. (__statfs64): Likewise. (__fstatfs64): Likewise. * include/sys/statvfs.h (__statvfs64): Likewise. (__fstatvfs64): Likewise. * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max): Likewise. (__statfs_filesize_max): Likewise. (__statfs_symlinks): Likewise. (__statfs_chown_restricted): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c0d40f29a2d2e621785d4ab1b405f894572ecf0c commit c0d40f29a2d2e621785d4ab1b405f894572ecf0c Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 17:30:29 2017 -0700 Mark internal time functions with attribute_hidden [BZ #18822] Mark internal time functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/time.h (__tzstring): Add attribute_hidden. (__tzfile_read): Likewise. (__tzfile_compute): Likewise. (__tzfile_default): Likewise. (__tzset_parse_tz): Likewise. (__offtime): Likewise. (__asctime_r): Likewise. (__tzset): Likewise. (__tz_convert): Likewise. (__getdate_r): Likewise. (__getclktck): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=907faf9909cf4cb073836ab6923b56f1c352c997 commit 907faf9909cf4cb073836ab6923b56f1c352c997 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 17:16:26 2017 -0700 Mark internal nscd functions with attribute_hidden [BZ #18822] Mark internal nscd functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * nscd/nscd-client.h (__nscd_get_map_ref): Add attribute_hidden. (__nscd_unmap): Likewise. (__nscd_cache_search): Likewise. (__nscd_get_nl_timestamp): Likewise. (__nscd_getpwnam_r): Likewise. (__nscd_getpwuid_r): Likewise. (__nscd_getgrnam_r): Likewise. (__nscd_getgrgid_r): Likewise. (__nscd_gethostbyname_r): Likewise. (__nscd_gethostbyname2_r): Likewise. (__nscd_gethostbyaddr_r): Likewise. (__nscd_getai): Likewise. (__nscd_getgrouplist): Likewise. (__nscd_getservbyname_r): Likewise. (__nscd_getservbyport_r): Likewise. (__nscd_innetgr): Likewise. (__nscd_setnetgrent): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a074b2025efede9076aa72aaeeef02085d72015f commit a074b2025efede9076aa72aaeeef02085d72015f Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 17:04:20 2017 -0700 Mark internal gmp functions with attribute_hidden [BZ #18822] Mark internal gmp functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/gmp.h: Declare internal functions only if _ISOMAC is undefined. (__mpn_extract_double): Add attribute_hidden. (__mpn_extract_long_double): Likewise. (__mpn_extract_float128): Likewise. (__mpn_construct_float): Likewise. (__mpn_construct_double): Likewise. (__mpn_construct_long_double): Likewise. (__mpn_construct_float128): Likewise. (mpn_add_1): Likewise. (mpn_addmul_1): Likewise. (mpn_add_n): Likewise. (mpn_cmp): Likewise. (mpn_divrem): Likewise. (mpn_lshift): Likewise. (mpn_mul): Likewise. (mpn_mul_1): Likewise. (mpn_rshift): Likewise. (mpn_sub_1): Likewise. (mpn_submul_1): Likewise. (mpn_sub_n): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b8ae5c07cdb68012a08a706a409aa5329fa36c92 commit b8ae5c07cdb68012a08a706a409aa5329fa36c92 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 13:24:43 2017 -0700 Mark internal wchar functions with attribute_hidden [BZ #18822] Mark internal wchar functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/wchar.h (__wcsnlen): Add attribute_hidden. (__wcscat): Likewise. (__btowc): Likewise. (__wcrtomb): Likewise. (__mbsrtowcs): Likewise. (__wcsrtombs): Likewise. (__mbsnrtowcs): Likewise. (__wcsnrtombs): Likewise. (__wcsncpy): Likewise. (__wcpncpy): Likewise. (__wmemcpy): Likewise. (__wmempcpy): Likewise. (__wmemmove): Likewise. (__wcschrnul): Likewise. (__vfwscanf): Likewise. (__vswprintf): Likewise. (__fwprintf): Likewise. (__vfwprintf): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=cf8c488b1a5824c87f65d804ee64d7c5a6689433 commit cf8c488b1a5824c87f65d804ee64d7c5a6689433 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 09:52:52 2017 -0700 Mark __dso_handle as hidden [BZ #18822] Since __dso_handle is always defined by either crtbegin.o from GCC or dso_handle.c, it should be marked as hidden and be passed directly. [BZ #18822] * dlfcn/modatexit.c (foo): Remove __dso_handle check. * dlfcn/modcxaatexit.c (__dso_handle): Remove declaration. * dlfcn/tstatexit.c (__dso_handle): Removed. (main): Don't check __dso_handle. * dlfcn/tstcxaatexit.c (__dso_handle): Removed. (main): Don't check __dso_handle. * include/stdlib.h (__dso_handle): New. * malloc/mtrace.c (__dso_handle): Remove declaration. (mtrace): Pass __dso_handle directly. * nptl/pthread_atfork.c (__dso_handle): Remove declaration. (__pthread_atfork): Pass __dso_handle directly. * nptl/tst-atfork2mod.c (__dso_handle): Removed. * posix/wordexp-test.c (__dso_handle): Remove declaration. (__app_register_atfork): Pass __dso_handle directly. * stdlib/at_quick_exit.c (__dso_handle): Remove declaration. (at_quick_exit): Pass __dso_handle directly. * stdlib/atexit.c (__dso_handle): Remove declaration. (atexit): Pass __dso_handle directly. * stdlib/tst-tls-atexit-lib.c (__dso_handle): Removed. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=8cb5f3011dd0e6abd5f3c4c1688a05d6810d1560 commit 8cb5f3011dd0e6abd5f3c4c1688a05d6810d1560 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 09:00:24 2017 -0700 Mark internal grp/pwd/shadow functions with attribute_hidden [BZ #18822] Mark internal grp/pwd/shadow functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/grp.h (__fgetgrent_r): Add attribute_hidden. (__getgrgid_r): Likewise. (__getgrnam_r): Likewise. * include/pwd.h (__getpwuid_r): Likewise. (__getpwnam_r): Likewise. (__fgetpwent_r): Likewise. * include/shadow.h (__getspnam_r): Likewise. (__sgetspent_r): Likewise. (__fgetspent_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=79d55c9b81294014eb59d4eb3df5762af7b62570 commit 79d55c9b81294014eb59d4eb3df5762af7b62570 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 05:43:12 2017 -0700 Mark internal unistd functions with attribute_hidden [BZ #18822] Mark internal unistd functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/unistd.h (__access): Add attribute_hidden. (__lseek64): Likewise. (__libc_pread64): Likewise. (__pipe2): Likewise. (__sleep): Likewise. (__chdir): Likewise. (__fchdir): Likewise. (__getcwd): Likewise. (__rmdir): Likewise. (__execvpe): Likewise. (__execve): Likewise. (__setsid): Likewise. (__getuid): Likewise. (__geteuid): Likewise. (__getgid): Likewise. (__getegid): Likewise. (__getgroups): Likewise. (__group_member): Likewise. (__ttyname_r): Likewise. (__isatty): Likewise. (__readlink): Likewise. (__unlink): Likewise. (__gethostname): Likewise. (__profil): Likewise. (__getdtablesize): Likewise. (__brk): Likewise. (__ftruncate): Likewise. (__ftruncate64): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ff9259e2341bab80e71ab1bf9e3e952e40952fb1 commit ff9259e2341bab80e71ab1bf9e3e952e40952fb1 Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 13:17:12 2017 -0700 Mark internal argp functions with attribute_hidden [BZ #18822] Mark internal argp functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * argp/argp-fmtstream.c: Include <argp-fmtstream.h>. * argp/argp-fs-xinl.c: Likewise. * argp/argp-help.c: Include <argp.h> and <argp-fmtstream.h>. * argp/argp-parse.c: Include <argp.h>. * argp/argp-xinl.c: Likewise. * include/argp-fmtstream.h: New file. * include/argp.h (__argp_error): Add attribute_hidden. (__argp_failure): Likewise. (__argp_input): Likewise. (__argp_state_help): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c0077032903ce829ffc60431ada4d5acad29371b commit c0077032903ce829ffc60431ada4d5acad29371b Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 12:48:28 2017 -0700 Mark ____wcsto*_l_internal functions with attribute_hidden [BZ #18822] Mark ____wcsto*_l_internal functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/wchar.h (____wcstof_l_internal): New prototype. (____wcstod_l_internal): Likewise. (____wcstold_l_internal): Likewise. (____wcstol_l_internal): Likewise. (____wcstoul_l_internal): Likewise. (____wcstoll_l_internal): Likewise. (____wcstoull_l_internal): Likewise. (____wcstof128_l_internal): Likewise. * sysdeps/ieee754/float128/wcstof128.c (____wcstof128_l_internal): Removed. * sysdeps/ieee754/float128/wcstof128_l.c (____wcstof128_l_internal): Likewise. * wcsmbs/wcstod.c (____wcstod_l_internal): Likewise. * wcsmbs/wcstod_l.c (____wcstod_l_internal): Likewise. * wcsmbs/wcstof.c (____wcstof_l_internal): Likewise. * wcsmbs/wcstof_l.c (____wcstof_l_internal): Likewise. * wcsmbs/wcstol_l.c (____wcstol_l_internal): Likewise. * wcsmbs/wcstold.c (____wcstold_l_internal): Likewise. * wcsmbs/wcstold_l.c (____wcstold_l_internal): Likewise. * wcsmbs/wcstoll_l.c (____wcstoll_l_internal): Likewise. * wcsmbs/wcstoul_l.c (____wcstoul_l_internal): Likewise. * wcsmbs/wcstoull_l.c (____wcstoull_l_internal): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=727d96466452cba0dd36d2ac4434db75e417b721 commit 727d96466452cba0dd36d2ac4434db75e417b721 Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 12:35:02 2017 -0700 Mark __internal_statvfs[64] with attribute_hidden [BZ #18822] Mark __internal_statvfs[64] with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/fstatvfs.c: Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs): Removed. * sysdeps/unix/sysv/linux/fstatvfs64.c Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs64): Removed. * sysdeps/unix/sysv/linux/internal_statvfs.c: Include "internal_statvfs.h" instead of <sys/statvfs.h>. * sysdeps/unix/sysv/linux/internal_statvfs.h: New file. * sysdeps/unix/sysv/linux/statvfs.c Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs): Removed. * sysdeps/unix/sysv/linux/statvfs64.c Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs64): Removed. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1a010e413f1b92da851b3b7ed292c3e85086fbba commit 1a010e413f1b92da851b3b7ed292c3e85086fbba Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 12:26:17 2017 -0700 Mark 3 *_internal functions with attribute_hidden [BZ #18822] Mark __ptsname_internal, __mktime_internal and __fopen_internal with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/stdlib.h (__ptsname_internal): Add attribute_hidden. * include/time.h (__mktime_internal): Likewise. * libio/iolibio.h (__fopen_internal): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=bfe18e7062830ce88ed66d864c16668a44df9359 commit bfe18e7062830ce88ed66d864c16668a44df9359 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 13 07:00:22 2017 -0700 Mark internal functions with attribute_hidden [BZ #18822] Mark internal functions with attribute_hidden to allow direct access to internal functions within libc.so and libc.a without using GOT nor PLT. Size comparison of libc.so: On x86-64: text data bss dec hex Before: 1728577 20584 17088 1766249 1af369 After : 1728593 20584 17088 1766265 1af379 The only change is __gconv_release_shlib in iconv/gconv_dl.c is inlined since it is hidden, which increases the code size of gconv_dl.os by 18 bytes. On i686: text data bss dec hex Before: 1869039 11444 11112 1891595 1cdd0b After : 1868635 11444 11112 1891191 1cdb77 The code size is decreased by avoiding GOT/PLT for hidden functions. [BZ #18822] * iconv/gconv_int.h (__gconv_open): Add attribute_hidden. (__gconv_close): Likewise. (__gconv): Likewise. (__gconv_find_transform): Likewise. (__gconv_lookup_cache): Likewise. (__gconv_compare_alias_cache): Likewise. (__gconv_load_cache): Likewise. (__gconv_get_path): Likewise. (__gconv_close_transform): Likewise. (__gconv_release_cache): Likewise. (__gconv_find_shlib): Likewise. (__gconv_release_shlib): Likewise. (__gconv_get_builtin_trans): Likewise. (__gconv_compare_alias): Likewise. * include/dlfcn.h (_dlerror_run): Likewise. * include/stdio.h (__fortify_fail_abort): Likewise. * include/time.h (__tz_compute): Likewise. (__strptime_internal): Likewise. * intl/gettextP.h (_nl_find_domain): Likewise. (_nl_load_domain): Likewise. (_nl_find_msg): Likewise. * intl/plural-exp.h (FREE_EXPRESSION): Likewise. (EXTRACT_PLURAL_EXPRESSION): Likewise. * locale/coll-lookup.h (__collidx_table_lookup): Likewise. * resolv/gai_misc.h (__gai_enqueue_request): Likewise. (__gai_find_request): Likewise. (__gai_remove_request): Likewise. (__gai_notify): Likewise. (__gai_notify_only): Likewise. * sysdeps/generic/aio_misc.h (__aio_sigqueue): Likewise. * sysdeps/generic/ldsodefs.h (_dl_symbol_value): Likewise. (_dl_fini): Likewise. (_dl_non_dynamic_init): Likewise. (_dl_aux_init): Likewise. * sysdeps/i386/machine-gmon.h (mcount_internal): Likewise. * sysdeps/unix/sysv/linux/i386/olddirent.h (__old_getdents64): Likewise. * wcsmbs/wcsmbsload.h (__wcsmbs_load_conv): Likewise. (__wcsmbs_clone_conv): Likewise. (__wcsmbs_named_conv): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c1fb2b4a46f90cbfdd901fc35e1fcd1ca05c6251 commit c1fb2b4a46f90cbfdd901fc35e1fcd1ca05c6251 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:11:38 2017 -0700 string/stratcliff.c: Replace int with size_t [BZ #21982] Fix GCC 7 errors when string/stratcliff.c is compiled with -O3: stratcliff.c: In function ‘do_test’: cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] [BZ #21982] * string/stratcliff.c (do_test): Declare size, nchars, inner, middle and outer with size_t instead of int. Repleace %d and %Zd with %zu in printf. -----------------------------------------------------------------------
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU C Library master sources". The branch, hjl/pr18822 has been created at f31badb594afbf564b744944441bd5425526a388 (commit) - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=f31badb594afbf564b744944441bd5425526a388 commit f31badb594afbf564b744944441bd5425526a388 Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 08:41:32 2017 -0700 Hide internal __libc_print_version function [BZ #18822] Hide internal __libc_print_version function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * csu/version.c (__libc_print_version): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=2f7f4cb5056eeef0c398e2f216a2f63a7c60417b commit 2f7f4cb5056eeef0c398e2f216a2f63a7c60417b Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 08:40:40 2017 -0700 Hide internal __init_misc function [BZ #18822] Hide internal __init_misc function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/libc-internal.h (__init_misc): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b52122a64b194ecf245b7a9ca52f5e1eba253a35 commit b52122a64b194ecf245b7a9ca52f5e1eba253a35 Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 08:39:40 2017 -0700 Hide internal __setfpucw function [BZ #18822] Hide internal __setfpucw function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/fpu_control.h (__setfpucw): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=16c66b1b4589040d92a582cf5ceb4b750987991d commit 16c66b1b4589040d92a582cf5ceb4b750987991d Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 08:38:13 2017 -0700 Hide internal __nis_hash function [BZ #18822] Hide internal __nis_hash function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * nscd/nscd_helper.c (__nis_hash): New prototype. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=f7e136c618437ce39c5a5f2098609baa8cbf08c3 commit f7e136c618437ce39c5a5f2098609baa8cbf08c3 Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 08:35:33 2017 -0700 Hide internal __tcgetattr function [BZ #18822] Hide internal __tcgetattr function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/termios.h (__tcgetattr): Add libc_hidden_proto. * sysdeps/unix/bsd/tcgetattr.c (__tcgetattr): Add libc_hidden_def. * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Likewise. * termios/tcgetattr.c (__tcgetattr): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1df5b1f0d7aed3ca54416c888e564892585e638f commit 1df5b1f0d7aed3ca54416c888e564892585e638f Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 06:42:46 2017 -0700 Hide internal __setrlimit function [BZ #18822] Hide internal __setrlimit function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/resource.h (__setrlimit): Add libc_hidden_proto. * resource/setrlimit.c (__setrlimit): Add libc_hidden_def. * sysdeps/mach/hurd/setrlimit.c (__setrlimit): Likewise. * sysdeps/unix/sysv/linux/setrlimit.c (__setrlimit): Likewise. * sysdeps/unix/sysv/linux/setrlimit64.c (__GI___setrlimit): New. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d6b2a82a5079c305744c89a2ec93dd4f147278bc commit d6b2a82a5079c305744c89a2ec93dd4f147278bc Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 06:41:49 2017 -0700 Hide internal __vstrfmon_l function [BZ #18822] Hide internal __vstrfmon_l function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/monetary.h (__vstrfmon_l): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=6d435dc68d98b5c026d650ffcf4e7dc6bd333dd0 commit 6d435dc68d98b5c026d650ffcf4e7dc6bd333dd0 Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 06:25:16 2017 -0700 Hide internal __sched_setparam function [BZ #18822] Hide internal __sched_setparam function to allow direct access within libc.so and libc.a without using GOT nor PLT. __GI___sched_setparam is defined when sysdeps/unix/syscalls.list is used to generate sched_setparam. Otherwise libc_hidden_def is needed explicitly. [BZ #18822] * include/sched.h (__sched_setparam): Add libc_hidden_proto. * posix/sched_setp.c (__sched_setparam): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ba6068f20e7a60a752d3ac659ee5e7a315f8380f commit ba6068f20e7a60a752d3ac659ee5e7a315f8380f Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 05:51:51 2017 -0700 Hide internal __hash_string function [BZ #18822] Hide internal __hash_string function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * intl/hash-string.h (__hash_string): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=54f116265ab84db62fb8d04ef130db8e65f6a741 commit 54f116265ab84db62fb8d04ef130db8e65f6a741 Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 05:50:09 2017 -0700 Hide internal __hasmntopt function [BZ #18822] Hide internal __hasmntopt function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/mntent.h (__hasmntopt): Add libc_hidden_proto. * misc/mntent_r.c (__hasmntopt): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d68adfcccd490b1ab84075cf4090bce9ae4af712 commit d68adfcccd490b1ab84075cf4090bce9ae4af712 Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 05:43:49 2017 -0700 [PATCH] Hide internal __ifreq function [BZ #18822] Hide internal __ifreq function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/ifreq.h: New file. * sysdeps/generic/ifreq.h (__if_nextreq): Removed. (__ifreq): Likewise. * sysdeps/mach/hurd/ifreq.h (__if_nextreq): Removed. (__ifreq): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=0c0f6e5c52d57e111ee8a82900f5d3133eb3454a commit 0c0f6e5c52d57e111ee8a82900f5d3133eb3454a Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Aug 22 04:50:04 2017 -0700 Hide internal idna functions [BZ #18822] Hide internal idna functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/idna.h: New file. * inet/getnameinfo.c: Include <idna.h> instead of <libidn/idna.h>. (__idna_to_unicode_lzlz): Removed. * sysdeps/posix/getaddrinfo.c: Include <idna.h> instead of <libidn/idna.h>. (__idna_to_ascii_lz): Removed. (__idna_to_unicode_lzlz): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e84f1d2c754f59e1a1931614168316da20db9e2c commit e84f1d2c754f59e1a1931614168316da20db9e2c Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 10:39:50 2017 -0700 Hide internal __gettextparse function [BZ #18822] Hide internal __gettextparse function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/plural-exp.h: New file. * intl/plural-exp.c: Include <plural-exp.h> instead of "plural-exp.h". https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=de50b8d4ff452d1b31d6238d8b88960030d5f18d commit de50b8d4ff452d1b31d6238d8b88960030d5f18d Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 10:20:45 2017 -0700 [PATCH] Hide internal __get_sol function [BZ #18822] Hide internal __get_sol function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/getsourcefilter.c: Include "getsourcefilter.h". * sysdeps/unix/sysv/linux/getsourcefilter.h: New file. * sysdeps/unix/sysv/linux/setsourcefilter.c: Include "getsourcefilter.h". (__get_sol): Removed. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b25bde66519c9fd144c4027a3ea9c1c07248b934 commit b25bde66519c9fd144c4027a3ea9c1c07248b934 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 10:11:21 2017 -0700 Move hidden_proto (__dl_iterate_phdr) to include/link.h [BZ #18822] [BZ #18822] * elf/dl-iteratephdr.c (hidden_proto (__dl_iterate_phdr)): Moved to ... * include/link.h (hidden_proto (__dl_iterate_phdr)): Here. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=fb0f4f8dcd6874ebb83d080dbdd8887313e6dc94 commit fb0f4f8dcd6874ebb83d080dbdd8887313e6dc94 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 10:07:55 2017 -0700 Hide internal __bsd_getpt function [BZ #18822] Hide internal __bsd_getpt function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/getpt.c (__bsd_getpt): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=605c0afcf2219d2d1bb1918e884911d52d15bf78 commit 605c0afcf2219d2d1bb1918e884911d52d15bf78 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 09:20:06 2017 -0700 Hide internal __fopen_maybe_mmap function [BZ #18822] Hide internal __fopen_maybe_mmap function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * libio/iolibio.h (__fopen_maybe_mmap): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=70336bbdab5434d82ad35ef22c6e1651d5f5d6de commit 70336bbdab5434d82ad35ef22c6e1651d5f5d6de Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 09:18:36 2017 -0700 Hide internal __tdestroy function [BZ #18822] Hide internal __tdestroy function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/search.h (__tdestroy): Add libc_hidden_proto. * misc/tsearch.c (__tdestroy): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=f8b9350572d0677b84e9b7a59beb752dc173586c commit f8b9350572d0677b84e9b7a59beb752dc173586c Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 09:17:07 2017 -0700 Hide internal __assert_fail_base function [BZ #18822] Hide internal __assert_fail_base function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/assert.h (__assert_fail_base): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=8e8dbc0972234d8da634ed2959d89715116ec8ad commit 8e8dbc0972234d8da634ed2959d89715116ec8ad Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 09:15:33 2017 -0700 Hide internal __sysinfo function [BZ #18822] Hide internal __sysinfo function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/include/sys/sysinfo.h (__sysinfo): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=163dcb1ad05e34f197882d1b61b234ceee8a8a8b commit 163dcb1ad05e34f197882d1b61b234ceee8a8a8b Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 08:17:57 2017 -0700 Hide internal signal functions [BZ #18822] Hide internal signal functions to allow direct access within libc.so and libc.a without using GOT nor PLT. __GI___kill and __GI___sigaltstack are defined when syscalls.list is used to generate them. Otherwise libc_hidden_def is needed explicitly. [BZ #18822] * include/signal.h (__kill): Add libc_hidden_proto. (__sigblock): Likewise. (__sigprocmask): Likewise. (__sigaltstack): Likewise. * signal/kill.c (__kill): Add libc_hidden_def. * signal/sigblock.c (__sigblock): Likewise. * signal/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/mach/hurd/kill.c (__kill): Likewise. * sysdeps/mach/hurd/sigaltstack.c (__sigaltstack): Likewise. * sysdeps/mach/hurd/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/posix/sigblock.c (__sigblock): Likewise. * sysdeps/unix/sysv/linux/alpha/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/ia64/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise. * /sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/x86_64/sigprocmask.c (__sigprocmask): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ef57a3bf74e2240fad7e438e7ce40c53256119c3 commit ef57a3bf74e2240fad7e438e7ce40c53256119c3 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 08:07:16 2017 -0700 Hide internal __strsep function [BZ #18822] Hide internal __strsep function to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/string.h (__strsep): Add libc_hidden_proto. * string/strsep.c (__strsep): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=7c9ee3fb1668c0b85c0ba98dd06253e29e03a308 commit 7c9ee3fb1668c0b85c0ba98dd06253e29e03a308 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 06:24:41 2017 -0700 Hide __posix_spawn_file_actions_realloc/__spawni [BZ #18822] Hide internal __posix_spawn_file_actions_realloc and /__spawni functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * posix/spawn_int.h (__posix_spawn_file_actions_realloc): Add attribute_hidden. (__spawni): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=57324509b13aac823611a7e387f2c326ac897b07 commit 57324509b13aac823611a7e387f2c326ac897b07 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 06:10:22 2017 -0700 Hide internal __mremap function [BZ #18822] Hide internal __mremap function to allow direct access within libc.so and libc.a without using GOT nor PLT. __GI___mremap is defined when sysdeps/unix/syscalls.list is used to generate mremap. Otherwise libc_hidden_def is needed explicitly. [BZ #18822] * include/sys/mman.h (__mremap): Add libc_hidden_proto. * sysdeps/unix/sysv/linux/m68k/mremap.S (__mremap): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a6ca55b8a10efa5ce9eb7b5fcfbea3d507c9aa9e commit a6ca55b8a10efa5ce9eb7b5fcfbea3d507c9aa9e Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Aug 21 06:07:11 2017 -0700 Hide internal __malloc_check_init function [BZ #18822] Hide internal __malloc_check_init function to allow direct access within libc.so and libc.a without using GOT nor PLT. * include/malloc.h (__malloc_check_init): Add attribute_hidden. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=30b6fb4f6e63492c2af363756f63d53c6a9e679e commit 30b6fb4f6e63492c2af363756f63d53c6a9e679e Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:53:06 2017 -0700 Hide internal __ioctl function [BZ #18822] Hide internal __ioctl function to allow direct access within libc.so and libc.a without using GOT nor PLT. __GI___ioctl is defined when sysdeps/unix/syscalls.list is used to generate ioctl. Otherwise libc_hidden_def is needed explicitly. [BZ #18822] * include/sys/ioctl.h (__ioctl): Add libc_hidden_proto. * misc/ioctl.c (__ioctl): Add libc_hidden_def. * sysdeps/mach/hurd/ioctl.c (__ioctl): Likewise. * sysdeps/unix/sysv/linux/aarch64/ioctl.S (__ioctl): Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S (__ioctl): Likewise. * sysdeps/unix/sysv/linux/powerpc/ioctl.c (__ioctl): Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/ioctl.S (__ioctl): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4c594711686e31d68da049e854a78d7cb269bcfd commit 4c594711686e31d68da049e854a78d7cb269bcfd Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:40:26 2017 -0700 Mark internal intl functions with attribute_hidden [BZ #18822] Mark internal intl functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * intl/gettextP.h (__dcngettext): Add attribute_hidden. (__dcigettext): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=3b457394e13f35233d5d8de8fa7e4f7c146f7fee commit 3b457394e13f35233d5d8de8fa7e4f7c146f7fee Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:25:56 2017 -0700 Hide internal sysinfo functions [BZ #18822] Hide internal sysinfo functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/sysinfo.h (__get_nprocs_conf): Add libc_hidden_proto. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. (__get_child_max): Add attribute_hidden. * misc/getsysstats.c (__get_nprocs_conf): Add libc_hidden_def. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. * sysdeps/mach/getsysstats.c (__get_nprocs_conf): Add libc_hidden_def. (__get_nprocs): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Add libc_hidden_def. (__get_nprocs_conf): Likewise. (__get_phys_pages): Likewise. (__get_avphys_pages): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4a48a782f2eb51e37b837fb58fafdb167d12d1e0 commit 4a48a782f2eb51e37b837fb58fafdb167d12d1e0 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 11:13:02 2017 -0700 Hide __chmod and __mkdir [BZ #18822] Hide internal __chmod and __mkdir functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/stat.h (__chmod): Add libc_hidden_proto. (__mkdir): Likewise. * io/chmod.c (__chmod): Add libc_hidden_def. * io/mkdir.c (__mkdir): Likewise. * sysdeps/mach/hurd/chmod.c (__chmod): Likewise. * sysdeps/mach/hurd/mkdir.c (__mkdir): Likewise. * sysdeps/unix/sysv/linux/generic/chmod.c (__chmod): Likewise. * sysdeps/unix/sysv/linux/generic/mkdir.c (__mkdir): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=04e95a82c117aafe4d29aa9dd0a2885625d8db60 commit 04e95a82c117aafe4d29aa9dd0a2885625d8db60 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:38:46 2017 -0700 Mark internal netlink functions with attribute_hidden [BZ #18822] Mark internal netlink functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/netlinkaccess.h (__netlink_open): Add attribute_hidden. (__netlink_close): Likewise. (__netlink_free_handle): Likewise. (__netlink_request): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=368c61d6898ca8f0b814055103f2608b7439380f commit 368c61d6898ca8f0b814055103f2608b7439380f Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:22:10 2017 -0700 Mark internal rpc functions with attribute_hidden [BZ #18822] Mark internal rpc functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/rpc/rpc.h (__rpc_thread_variables): Add attribute_hidden. (__rpc_thread_svc_cleanup): Likewise. (__rpc_thread_clnt_cleanup): Likewise. (__rpc_thread_key_cleanup): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c94f73da2611e38c5a949dc7b61ec496de52098d commit c94f73da2611e38c5a949dc7b61ec496de52098d Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 08:05:25 2017 -0700 Hide __readv and __writev [BZ #18822] Hide internal __readv and __writev functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/uio.h (__readv): Add libc_hidden_proto. (__writev): Likewise. * misc/readv.c (__readv): Add libc_hidden_def. * misc/writev.c (__writev): Likewise. * sysdeps/posix/readv.c (__readv): Likewise. * sysdeps/posix/writev.c (__writev): Likewise. * sysdeps/unix/sysv/linux/readv.c: Include <sys/uio.h>. (__readv): Likewise. * sysdeps/unix/sysv/linux/writev.c: Include <sys/uio.h>. (__writev): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=7ba6e87a8bbbe5aeadc889bc48f92ea687cb150c commit 7ba6e87a8bbbe5aeadc889bc48f92ea687cb150c Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 07:28:23 2017 -0700 Hide internal regex functions [BZ #18822] Hide internal regex functions to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/regex.h (__re_compile_fastmap): Add attribute_hidden. (__regcomp): Add libc_hidden_proto. (__regexec): Likewise. (__regfree): Likewise. * posix/regcomp.c (__regcomp): Add libc_hidden_def. (__regfree): Likewise. * posix/regexec.c (__regexec): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1737f60f055c5f1a50d521007f11dc9e7ce56872 commit 1737f60f055c5f1a50d521007f11dc9e7ce56872 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 16:47:56 2017 -0700 Mark internal stdlib functions with attribute_hidden [BZ #18822] Mark internal stdlib functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. __realpath is hidden with libc_hidden_proto and libc_hidden_def since the exported realpath is an alias of __realpath. [BZ #18822] * include/stdlib.h (__random): Add attribute_hidden. (__random_r): Likewise. (__srandom_r): Likewise. (__initstate_r): Likewise. (__setstate_r): Likewise. (__erand48_r): Likewise. (__nrand48_r): Likewise. (__jrand48_r): Likewise. (__srand48_r): Likewise. (__seed48_r): Likewise. (__lcong48_r): Likewise. (__drand48_iterate): Likewise. (__setenv): Likewise. (__unsetenv): Likewise. (__clearenv): Likewise. (__ptsname_r): Likewise. (__posix_openpt): Likewise. (__add_to_environ): Likewise. (__ecvt_r): Likewise. (__fcvt_r): Likewise. (__qecvt_r): Likewise. (__qfcvt_r): Likewise. (__realpath): Add libc_hidden_proto. * stdlib/canonicalize.c (__realpath): Add libc_hidden_def. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e03708a09e46e185b41fa27747cf68628bb8e3a6 commit e03708a09e46e185b41fa27747cf68628bb8e3a6 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 16:29:20 2017 -0700 Mark internal utmp functions with attribute_hidden [BZ #18822] Mark internal utmp functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/utmp.h (__updwtmp): Add attribute_hidden. (__utmpname): Likewise. (__getutent): Likewise. (__setutent): Likewise. (__endutent): Likewise. (__getutid): Likewise. (__getutline): Likewise. (__pututline): Likewise. (__getutent_r): Likewise. (__getutid_r): Likewise. (__getutline_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=66673b9c0d2f9b0cd992589fba70a33f15c933ef commit 66673b9c0d2f9b0cd992589fba70a33f15c933ef Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 16:23:58 2017 -0700 Mark internal dirent functions with attribute_hidden [BZ #18822] Mark internal dirent functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. __readdir64 is hidden with libc_hidden_proto and libc_hidden_def since the exported readdir64 is an alias of __readdir64. [BZ #18822] * include/dirent.h (__opendir): Always add attribute_hidden. (__fdopendir): Likewise. (__closedir): Likewise. (__readdir): Likewise. (__readdir64): Add libc_hidden_proto. * sysdeps/mach/hurd/readdir64.c (__readdir64): Add libc_hidden_def. * sysdeps/unix/sysv/linux/i386/readdir64.c (__readdir64): Likewise. * sysdeps/unix/sysv/linux/readdir64.c (__readdir64): Likewise. * sysdeps/unix/sysv/linux/wordsize-64/readdir.c (__GI___readdir64): New alias. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=95765483d2f3db49706feb94ffeeee54fce8f6c5 commit 95765483d2f3db49706feb94ffeeee54fce8f6c5 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:49:08 2017 -0700 Mark internal getXXXbyYYY functions with attribute_hidden [BZ #18822] Mark internal getXXXbyYYY functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/aliases.h (__getaliasbyname_r): Add attribute_hidden. * include/netdb.h (__gethostbyaddr_r): Likewise. (__gethostbyname_r): Likewise. (__gethostbyname2_r): Likewise. (__getnetbyaddr_r): Likewise. (__getnetbyname_r): Likewise. (__getservbyname_r): Likewise. (__getservbyport_r): Likewise. (__getprotobyname_r): Likewise. (__getprotobynumber_r): Likewise. (__getnetgrent_r): Likewise. * include/rpc/netdb.h (__getrpcbyname_r): Likewise. (__getrpcbynumber_r): Likewise. * nss/getXXbyYY.c (INTERNAL (REENTRANT_NAME)): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=f891a6e4a36ed7adfa4017613d247a3d388b9459 commit f891a6e4a36ed7adfa4017613d247a3d388b9459 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:45:30 2017 -0700 Mark internal stdio functions with attribute_hidden [BZ #18822] Mark internal stdio functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/stdio.h (__fcloseall): Add attribute_hidden. (__getline): Likewise. (__path_search): Likewise. (__gen_tempname): Likewise. (__libc_message): Likewise. (__flockfile): Likewise. (__funlockfile): Likewise. (__fxprintf): Likewise. (__fxprintf_nocancel): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=8ca95b36d3b1a454bb72e70cfd7f72cf6c8e6fee commit 8ca95b36d3b1a454bb72e70cfd7f72cf6c8e6fee Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:44:27 2017 -0700 Mark internal gshadow functions with attribute_hidden [BZ #18822] Mark internal gshadow functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/gshadow.h (__fgetsgent_r): Add attribute_hidden. (__sgetsgent_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=83cf20c00023e88f4b86b9169911139f1e2175fe commit 83cf20c00023e88f4b86b9169911139f1e2175fe Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat Aug 19 15:37:42 2017 -0700 Mark internal statfs functions with attribute_hidden [BZ #18822] Mark internal statfs functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/sys/statfs.h (__fstatfs): Add attribute_hidden. (__statfs64): Likewise. (__fstatfs64): Likewise. * include/sys/statvfs.h (__statvfs64): Likewise. (__fstatvfs64): Likewise. * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max): Likewise. (__statfs_filesize_max): Likewise. (__statfs_symlinks): Likewise. (__statfs_chown_restricted): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=0895c745067673f2a54d46a489149c28a3266a5b commit 0895c745067673f2a54d46a489149c28a3266a5b Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 17:30:29 2017 -0700 Mark internal time functions with attribute_hidden [BZ #18822] Mark internal time functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/time.h (__tzstring): Add attribute_hidden. (__tzfile_read): Likewise. (__tzfile_compute): Likewise. (__tzfile_default): Likewise. (__tzset_parse_tz): Likewise. (__offtime): Likewise. (__asctime_r): Likewise. (__tzset): Likewise. (__tz_convert): Likewise. (__getdate_r): Likewise. (__getclktck): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=21a1ffdcb59064fc4464f3d11745d24667189f67 commit 21a1ffdcb59064fc4464f3d11745d24667189f67 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 17:16:26 2017 -0700 Mark internal nscd functions with attribute_hidden [BZ #18822] Mark internal nscd functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * nscd/nscd-client.h (__nscd_get_map_ref): Add attribute_hidden. (__nscd_unmap): Likewise. (__nscd_cache_search): Likewise. (__nscd_get_nl_timestamp): Likewise. (__nscd_getpwnam_r): Likewise. (__nscd_getpwuid_r): Likewise. (__nscd_getgrnam_r): Likewise. (__nscd_getgrgid_r): Likewise. (__nscd_gethostbyname_r): Likewise. (__nscd_gethostbyname2_r): Likewise. (__nscd_gethostbyaddr_r): Likewise. (__nscd_getai): Likewise. (__nscd_getgrouplist): Likewise. (__nscd_getservbyname_r): Likewise. (__nscd_getservbyport_r): Likewise. (__nscd_innetgr): Likewise. (__nscd_setnetgrent): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b72243ff749d1a9d56115984cc8a9d6bc60be965 commit b72243ff749d1a9d56115984cc8a9d6bc60be965 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 17:04:20 2017 -0700 Mark internal gmp functions with attribute_hidden [BZ #18822] Mark internal gmp functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/gmp.h: Declare internal functions only if _ISOMAC is undefined. (__mpn_extract_double): Add attribute_hidden. (__mpn_extract_long_double): Likewise. (__mpn_extract_float128): Likewise. (__mpn_construct_float): Likewise. (__mpn_construct_double): Likewise. (__mpn_construct_long_double): Likewise. (__mpn_construct_float128): Likewise. (mpn_add_1): Likewise. (mpn_addmul_1): Likewise. (mpn_add_n): Likewise. (mpn_cmp): Likewise. (mpn_divrem): Likewise. (mpn_lshift): Likewise. (mpn_mul): Likewise. (mpn_mul_1): Likewise. (mpn_rshift): Likewise. (mpn_sub_1): Likewise. (mpn_submul_1): Likewise. (mpn_sub_n): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5cf8e8fea84207ab07922d5ad8ed645669c26238 commit 5cf8e8fea84207ab07922d5ad8ed645669c26238 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 13:24:43 2017 -0700 Mark internal wchar functions with attribute_hidden [BZ #18822] Mark internal wchar functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/wchar.h (__wcsnlen): Add attribute_hidden. (__wcscat): Likewise. (__btowc): Likewise. (__wcrtomb): Likewise. (__mbsrtowcs): Likewise. (__wcsrtombs): Likewise. (__mbsnrtowcs): Likewise. (__wcsnrtombs): Likewise. (__wcsncpy): Likewise. (__wcpncpy): Likewise. (__wmemcpy): Likewise. (__wmempcpy): Likewise. (__wmemmove): Likewise. (__wcschrnul): Likewise. (__vfwscanf): Likewise. (__vswprintf): Likewise. (__fwprintf): Likewise. (__vfwprintf): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d2239f3a6e7cc967e86414ed00040272b225d79f commit d2239f3a6e7cc967e86414ed00040272b225d79f Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 09:52:52 2017 -0700 Mark __dso_handle as hidden [BZ #18822] Since __dso_handle is always defined by either crtbegin.o from GCC or dso_handle.c, it should be marked as hidden and be passed directly. [BZ #18822] * dlfcn/modatexit.c (foo): Remove __dso_handle check. * dlfcn/modcxaatexit.c (__dso_handle): Remove declaration. * dlfcn/tstatexit.c (__dso_handle): Removed. (main): Don't check __dso_handle. * dlfcn/tstcxaatexit.c (__dso_handle): Removed. (main): Don't check __dso_handle. * include/stdlib.h (__dso_handle): New. * malloc/mtrace.c (__dso_handle): Remove declaration. (mtrace): Pass __dso_handle directly. * nptl/pthread_atfork.c (__dso_handle): Remove declaration. (__pthread_atfork): Pass __dso_handle directly. * nptl/tst-atfork2mod.c (__dso_handle): Removed. * posix/wordexp-test.c (__dso_handle): Remove declaration. (__app_register_atfork): Pass __dso_handle directly. * stdlib/at_quick_exit.c (__dso_handle): Remove declaration. (at_quick_exit): Pass __dso_handle directly. * stdlib/atexit.c (__dso_handle): Remove declaration. (atexit): Pass __dso_handle directly. * stdlib/tst-tls-atexit-lib.c (__dso_handle): Removed. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=83b5fd25f5a10dd36be30e06aeb2c4d25d5e1065 commit 83b5fd25f5a10dd36be30e06aeb2c4d25d5e1065 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 09:00:24 2017 -0700 Mark internal grp/pwd/shadow functions with attribute_hidden [BZ #18822] Mark internal grp/pwd/shadow functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/grp.h (__fgetgrent_r): Add attribute_hidden. (__getgrgid_r): Likewise. (__getgrnam_r): Likewise. * include/pwd.h (__getpwuid_r): Likewise. (__getpwnam_r): Likewise. (__fgetpwent_r): Likewise. * include/shadow.h (__getspnam_r): Likewise. (__sgetspent_r): Likewise. (__fgetspent_r): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=be7781a61edac91df74838204e6a51e066b992b3 commit be7781a61edac91df74838204e6a51e066b992b3 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Aug 18 05:43:12 2017 -0700 Mark internal unistd functions with attribute_hidden [BZ #18822] Mark internal unistd functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/unistd.h (__access): Add attribute_hidden. (__lseek64): Likewise. (__libc_pread64): Likewise. (__pipe2): Likewise. (__sleep): Likewise. (__chdir): Likewise. (__fchdir): Likewise. (__getcwd): Likewise. (__rmdir): Likewise. (__execvpe): Likewise. (__execve): Likewise. (__setsid): Likewise. (__getuid): Likewise. (__geteuid): Likewise. (__getgid): Likewise. (__getegid): Likewise. (__getgroups): Likewise. (__group_member): Likewise. (__ttyname_r): Likewise. (__isatty): Likewise. (__readlink): Likewise. (__unlink): Likewise. (__gethostname): Likewise. (__profil): Likewise. (__getdtablesize): Likewise. (__brk): Likewise. (__ftruncate): Likewise. (__ftruncate64): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=f2f25b83f52112fdf34b51ef73e20c3ae5aafae4 commit f2f25b83f52112fdf34b51ef73e20c3ae5aafae4 Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 13:17:12 2017 -0700 Mark internal argp functions with attribute_hidden [BZ #18822] Mark internal argp functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * argp/argp-fmtstream.c: Include <argp-fmtstream.h>. * argp/argp-fs-xinl.c: Likewise. * argp/argp-help.c: Include <argp.h> and <argp-fmtstream.h>. * argp/argp-parse.c: Include <argp.h>. * argp/argp-xinl.c: Likewise. * include/argp-fmtstream.h: New file. * include/argp.h (__argp_error): Add attribute_hidden. (__argp_failure): Likewise. (__argp_input): Likewise. (__argp_state_help): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=29248af6252cd051aff33072d098369f6ddcfa15 commit 29248af6252cd051aff33072d098369f6ddcfa15 Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 12:48:28 2017 -0700 Mark ____wcsto*_l_internal functions with attribute_hidden [BZ #18822] Mark ____wcsto*_l_internal functions with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/wchar.h (____wcstof_l_internal): New prototype. (____wcstod_l_internal): Likewise. (____wcstold_l_internal): Likewise. (____wcstol_l_internal): Likewise. (____wcstoul_l_internal): Likewise. (____wcstoll_l_internal): Likewise. (____wcstoull_l_internal): Likewise. (____wcstof128_l_internal): Likewise. * sysdeps/ieee754/float128/wcstof128.c (____wcstof128_l_internal): Removed. * sysdeps/ieee754/float128/wcstof128_l.c (____wcstof128_l_internal): Likewise. * wcsmbs/wcstod.c (____wcstod_l_internal): Likewise. * wcsmbs/wcstod_l.c (____wcstod_l_internal): Likewise. * wcsmbs/wcstof.c (____wcstof_l_internal): Likewise. * wcsmbs/wcstof_l.c (____wcstof_l_internal): Likewise. * wcsmbs/wcstol_l.c (____wcstol_l_internal): Likewise. * wcsmbs/wcstold.c (____wcstold_l_internal): Likewise. * wcsmbs/wcstold_l.c (____wcstold_l_internal): Likewise. * wcsmbs/wcstoll_l.c (____wcstoll_l_internal): Likewise. * wcsmbs/wcstoul_l.c (____wcstoul_l_internal): Likewise. * wcsmbs/wcstoull_l.c (____wcstoull_l_internal): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d45c4182a980a449762192cde6043ac1f01ab14c commit d45c4182a980a449762192cde6043ac1f01ab14c Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 12:35:02 2017 -0700 Mark __internal_statvfs[64] with attribute_hidden [BZ #18822] Mark __internal_statvfs[64] with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * sysdeps/unix/sysv/linux/fstatvfs.c: Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs): Removed. * sysdeps/unix/sysv/linux/fstatvfs64.c Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs64): Removed. * sysdeps/unix/sysv/linux/internal_statvfs.c: Include "internal_statvfs.h" instead of <sys/statvfs.h>. * sysdeps/unix/sysv/linux/internal_statvfs.h: New file. * sysdeps/unix/sysv/linux/statvfs.c Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs): Removed. * sysdeps/unix/sysv/linux/statvfs64.c Include "internal_statvfs.h" instead of <sys/statvfs.h>. (__internal_statvfs64): Removed. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=251135350a8277b6b8faa1082524b2e280cfa3f3 commit 251135350a8277b6b8faa1082524b2e280cfa3f3 Author: H.J. Lu <hjl.tools@gmail.com> Date: Thu Aug 17 12:26:17 2017 -0700 Mark 3 *_internal functions with attribute_hidden [BZ #18822] Mark __ptsname_internal, __mktime_internal and __fopen_internal with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/stdlib.h (__ptsname_internal): Add attribute_hidden. * include/time.h (__mktime_internal): Likewise. * libio/iolibio.h (__fopen_internal): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c1a4da1f3fbd697b6b92899275f07d501e7800d3 commit c1a4da1f3fbd697b6b92899275f07d501e7800d3 Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 13 07:00:22 2017 -0700 Mark internal functions with attribute_hidden [BZ #18822] Mark internal functions with attribute_hidden to allow direct access to internal functions within libc.so and libc.a without using GOT nor PLT. Size comparison of libc.so: On x86-64: text data bss dec hex Before: 1728577 20584 17088 1766249 1af369 After : 1728593 20584 17088 1766265 1af379 The only change is __gconv_release_shlib in iconv/gconv_dl.c is inlined since it is hidden, which increases the code size of gconv_dl.os by 18 bytes. On i686: text data bss dec hex Before: 1869039 11444 11112 1891595 1cdd0b After : 1868635 11444 11112 1891191 1cdb77 The code size is decreased by avoiding GOT/PLT for hidden functions. [BZ #18822] * iconv/gconv_int.h (__gconv_open): Add attribute_hidden. (__gconv_close): Likewise. (__gconv): Likewise. (__gconv_find_transform): Likewise. (__gconv_lookup_cache): Likewise. (__gconv_compare_alias_cache): Likewise. (__gconv_load_cache): Likewise. (__gconv_get_path): Likewise. (__gconv_close_transform): Likewise. (__gconv_release_cache): Likewise. (__gconv_find_shlib): Likewise. (__gconv_release_shlib): Likewise. (__gconv_get_builtin_trans): Likewise. (__gconv_compare_alias): Likewise. * include/dlfcn.h (_dlerror_run): Likewise. * include/stdio.h (__fortify_fail_abort): Likewise. * include/time.h (__tz_compute): Likewise. (__strptime_internal): Likewise. * intl/gettextP.h (_nl_find_domain): Likewise. (_nl_load_domain): Likewise. (_nl_find_msg): Likewise. * intl/plural-exp.h (FREE_EXPRESSION): Likewise. (EXTRACT_PLURAL_EXPRESSION): Likewise. * locale/coll-lookup.h (__collidx_table_lookup): Likewise. * resolv/gai_misc.h (__gai_enqueue_request): Likewise. (__gai_find_request): Likewise. (__gai_remove_request): Likewise. (__gai_notify): Likewise. (__gai_notify_only): Likewise. * sysdeps/generic/aio_misc.h (__aio_sigqueue): Likewise. * sysdeps/generic/ldsodefs.h (_dl_symbol_value): Likewise. (_dl_fini): Likewise. (_dl_non_dynamic_init): Likewise. (_dl_aux_init): Likewise. * sysdeps/i386/machine-gmon.h (mcount_internal): Likewise. * sysdeps/unix/sysv/linux/i386/olddirent.h (__old_getdents64): Likewise. * wcsmbs/wcsmbsload.h (__wcsmbs_load_conv): Likewise. (__wcsmbs_clone_conv): Likewise. (__wcsmbs_named_conv): Likewise. https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=58eb2b7400f3aa365a69ca0323bd4d60db98e4cf commit 58eb2b7400f3aa365a69ca0323bd4d60db98e4cf Author: H.J. Lu <hjl.tools@gmail.com> Date: Sun Aug 20 10:11:38 2017 -0700 string/stratcliff.c: Replace int with size_t [BZ #21982] Fix GCC 7 errors when string/stratcliff.c is compiled with -O3: stratcliff.c: In function ‘do_test’: cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] [BZ #21982] * string/stratcliff.c (do_test): Declare size, nchars, inner, middle and outer with size_t instead of int. Repleace %d and %Zd with %zu in printf. -----------------------------------------------------------------------
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU C Library master sources". The branch, master has been updated via 376b40a27a6783ea7f73ae577be320df66aeb36d (commit) from 2b0b9a1c85ea93a64e55bb369e79758195512fc2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=376b40a27a6783ea7f73ae577be320df66aeb36d commit 376b40a27a6783ea7f73ae577be320df66aeb36d Author: H.J. Lu <hjl.tools@gmail.com> Date: Wed Aug 23 08:22:52 2017 -0700 string/stratcliff.c: Replace int with size_t [BZ #21982] Fix GCC 7 errors when string/stratcliff.c is compiled with -O3: stratcliff.c: In function ‘do_test’: cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] [BZ #21982] * string/stratcliff.c (do_test): Declare size, nchars, inner, middle and outer with size_t instead of int. Repleace %d and %Zd with %zu in printf. Update "MAX (0, nchars - 128)" and "MAX (outer, nchars - 64)" to support unsigned outer and nchars. Also exit loop when outer == 0. ----------------------------------------------------------------------- Summary of changes: ChangeLog | 9 ++ string/stratcliff.c | 276 +++++++++++++++++++++++++++++++-------------------- 2 files changed, 176 insertions(+), 109 deletions(-)
Fixed.
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU C Library master sources". The branch, hjl/pr21982/master has been deleted was f951e4aa927efdf3112be92006b11d31cb75ef2b - Log ----------------------------------------------------------------- f951e4aa927efdf3112be92006b11d31cb75ef2b string/stratcliff.c: Replace int with size_t [BZ #21982] -----------------------------------------------------------------------
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU C Library master sources". The branch, release/2.26/master has been updated via 56ce01906ecb0a3e04411f8ceb60b27f4877f070 (commit) from 5f5532caf820f47f714d09766082f1e070c12cfb (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=56ce01906ecb0a3e04411f8ceb60b27f4877f070 commit 56ce01906ecb0a3e04411f8ceb60b27f4877f070 Author: H.J. Lu <hjl.tools@gmail.com> Date: Wed Aug 23 08:22:52 2017 -0700 string/stratcliff.c: Replace int with size_t [BZ #21982] Fix GCC 7 errors when string/stratcliff.c is compiled with -O3: stratcliff.c: In function ‘do_test’: cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] [BZ #21982] * string/stratcliff.c (do_test): Declare size, nchars, inner, middle and outer with size_t instead of int. Repleace %d and %Zd with %zu in printf. Update "MAX (0, nchars - 128)" and "MAX (outer, nchars - 64)" to support unsigned outer and nchars. Also exit loop when outer == 0. (cherry picked from commit 376b40a27a6783ea7f73ae577be320df66aeb36d) ----------------------------------------------------------------------- Summary of changes: ChangeLog | 9 ++ string/stratcliff.c | 276 +++++++++++++++++++++++++++++++-------------------- 2 files changed, 176 insertions(+), 109 deletions(-)
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU C Library master sources". The branch, release/2.25/master has been updated via 4e4cfd77617c190a7c8b3f83c41e1ad0771bd569 (commit) from e0252d3c64f2f4f7f0f551815d304d864d7f68cd (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4e4cfd77617c190a7c8b3f83c41e1ad0771bd569 commit 4e4cfd77617c190a7c8b3f83c41e1ad0771bd569 Author: H.J. Lu <hjl.tools@gmail.com> Date: Mon Sep 11 08:51:52 2017 -0700 string/stratcliff.c: Replace int with size_t [BZ #21982] Fix GCC 7 errors when string/stratcliff.c is compiled with -O3: stratcliff.c: In function ‘do_test’: cc1: error: assuming signed overflow does not occur when assuming that (X - c) <= X is always true [-Werror=strict-overflow] [BZ #21982] * string/stratcliff.c (do_test): Declare size, nchars, inner, middle and outer with size_t instead of int. Repleace %d and %Zd with %zu in printf. Update "MAX (0, nchars - 128)" and "MAX (outer, nchars - 64)" to support unsigned outer and nchars. Also exit loop when outer == 0. (cherry picked from commit 376b40a27a6783ea7f73ae577be320df66aeb36d) ----------------------------------------------------------------------- Summary of changes: ChangeLog | 9 ++ string/stratcliff.c | 276 +++++++++++++++++++++++++++++++-------------------- 2 files changed, 176 insertions(+), 109 deletions(-)